Skip to content

Commit

Permalink
Added Django5.1 and moved to assertEqual on all Versions
Browse files Browse the repository at this point in the history
  • Loading branch information
mkalioby committed Sep 27, 2024
1 parent 310b4f4 commit d9dbf3b
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 36 deletions.
6 changes: 3 additions & 3 deletions example/test_app/tests/test_current_platform.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
class TestCurrentPlatform(TestCase):
def setUp(self) -> None:
self.request_factory = RequestFactory()
if not getattr(self, "assertEquals", None):
self.assertEquals = self.assertEqual
# if not getattr(self, "assertEquals", None):
# self.assertEquals = self.assertEqual

def check_platform(self,user_agent, platform):
request = self.request_factory.get('/', HTTP_USER_AGENT=user_agent)
self.assertEquals(get_current_platform(request), platform)
self.assertEqual(get_current_platform(request), platform)

def test_mac(self):
self.check_platform("Mozilla/5.0 (Macintosh; Intel Mac OS X 13_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.5 Safari/605.1.15","Apple")
Expand Down
35 changes: 17 additions & 18 deletions example/test_app/tests/test_fido.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ def get_server_name(request):

class test_fido(TransactionTestCase):
def setUp(self) -> None:
if not getattr(self,"assertEquals",None):
self.assertEquals = self.assertEqual

from django.contrib.auth import get_user_model
self.user_model = get_user_model()
if self.user_model.objects.filter(username="test").count()==0:
Expand All @@ -44,7 +43,7 @@ def setUp(self) -> None:
def test_key_reg(self):
self.client.post('auth/login',{"usernaame":"test","password":"test","passkeys":""})
r = self.client.get(reverse('passkeys:reg_begin'))
self.assertEquals(r.status_code, 200)
self.assertEqual(r.status_code, 200)
j = json.loads(r.content)
j['publicKey']['challenge'] = j['publicKey']['challenge'].encode("ascii")
s = SoftWebauthnDevice()
Expand All @@ -58,14 +57,14 @@ def test_key_reg(self):
raise AssertionError("Failed to get the required JSON after reg_completed")
self.assertTrue("status" in j)

self.assertEquals(j["status"], "OK")
self.assertEquals(UserPasskey.objects.latest('id').name, "testKey")
self.assertEqual(j["status"], "OK")
self.assertEqual(UserPasskey.objects.latest('id').name, "testKey")
return s


def test_auto_key_name(self):
r = self.client.get(reverse('passkeys:reg_begin'))
self.assertEquals(r.status_code, 200)
self.assertEqual(r.status_code, 200)
j = json.loads(r.content)
j['publicKey']['challenge'] = j['publicKey']['challenge'].encode("ascii")
s = SoftWebauthnDevice()
Expand All @@ -77,8 +76,8 @@ def test_auto_key_name(self):
except Exception:
raise AssertionError("Failed to get the required JSON after reg_completed")
self.assertTrue("status" in j)
self.assertEquals(j["status"], "OK")
self.assertEquals(UserPasskey.objects.latest('id').name,"Apple")
self.assertEqual(j["status"], "OK")
self.assertEqual(UserPasskey.objects.latest('id').name,"Apple")
return s

def test_error_when_no_session(self):
Expand All @@ -92,14 +91,14 @@ def test_error_when_no_session(self):
except Exception:
raise AssertionError("Failed to get the required JSON after reg_completed")
self.assertTrue("status" in j)
self.assertEquals(j["status"], "ERR")
self.assertEquals(j["message"], "FIDO Status can't be found, please try again")
self.assertEqual(j["status"], "ERR")
self.assertEqual(j["message"], "FIDO Status can't be found, please try again")

def test_passkey_login(self):
authenticator = self.test_key_reg()
self.client.get('/auth/logout')
r = self.client.get(reverse('passkeys:auth_begin'))
self.assertEquals(r.status_code, 200)
self.assertEqual(r.status_code, 200)
j = json.loads(r.content)
j['publicKey']['challenge'] = j['publicKey']['challenge'].encode("ascii")

Expand All @@ -108,7 +107,7 @@ def test_passkey_login(self):
self.client.post(u, {'passkeys': json.dumps(res), "username": "", "password": ""},headers={"USER_AGENT":""}, HTTP_USER_AGENT="")
self.assertTrue(self.client.session.get('_auth_user_id',False))
self.assertTrue(self.client.session.get("passkey",{}).get("passkey",False))
self.assertEquals(self.client.session.get("passkey",{}).get("name"),"testKey")
self.assertEqual(self.client.session.get("passkey",{}).get("name"),"testKey")

def test_base_username(self):
authenticator = self.test_key_reg()
Expand All @@ -118,9 +117,9 @@ def test_base_username(self):
session.save(must_create=True)
self.client.cookies["sessionid"] = session.session_key
r = self.client.get(reverse('passkeys:auth_begin'))
self.assertEquals(r.status_code, 200)
self.assertEqual(r.status_code, 200)
j = json.loads(r.content)
self.assertEquals(j['publicKey']['allowCredentials'][0]['id'],urlsafe_b64encode(authenticator.credential_id).decode("utf8").strip('='))
self.assertEqual(j['publicKey']['allowCredentials'][0]['id'],urlsafe_b64encode(authenticator.credential_id).decode("utf8").strip('='))

def test_passkey_login_no_session(self):
pass
Expand All @@ -130,14 +129,14 @@ def test_server_id_callable(self):
from test_app.tests.test_fido import get_server_id
settings.FIDO_SERVER_ID = get_server_id
r = self.client.get(reverse('passkeys:auth_begin'))
self.assertEquals(r.status_code, 200)
self.assertEqual(r.status_code, 200)
j = json.loads(r.content)
self.assertEquals(j['publicKey']['rpId'],'testserver1')
self.assertEqual(j['publicKey']['rpId'],'testserver1')

def test_server_name_callable(self):
from test_app.tests.test_fido import get_server_name
settings.FIDO_SERVER_NAME = get_server_name
r = self.client.get(reverse('passkeys:reg_begin'))
self.assertEquals(r.status_code, 200)
self.assertEqual(r.status_code, 200)
j = json.loads(r.content)
self.assertEquals(j['publicKey']['rp']["name"],'MySite')
self.assertEqual(j['publicKey']['rp']["name"],'MySite')
6 changes: 2 additions & 4 deletions example/test_app/tests/test_passkeys.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
class test_passkeys(TransactionTestCase):
def setUp(self) -> None:
from django.contrib.auth import get_user_model
if not getattr(self, "assertEquals", None):
self.assertEquals = self.assertEqual

self.user_model = get_user_model()
self.user = self.user_model.objects.create_user(username="test",password="test")
Expand All @@ -17,7 +15,7 @@ def test_raiseException(self):
authenticate(request=None,username="test",password="test")
self.assertFalse(True)
except Exception as e:
self.assertEquals(str(e),"request is required for passkeys.backend.PasskeyModelBackend")
self.assertEqual(str(e),"request is required for passkeys.backend.PasskeyModelBackend")

def test_not_add_passkeys_field(self):
request = self.factory.post("/auth/login",{"username":"","password":""})
Expand All @@ -26,7 +24,7 @@ def test_not_add_passkeys_field(self):
user = authenticate(request=request,username="",password="")
self.assertFalse(True)
except Exception as e:
self.assertEquals(str(e),"Can't find 'passkeys' key in request.POST, did you add the hidden input?")
self.assertEqual(str(e),"Can't find 'passkeys' key in request.POST, did you add the hidden input?")

def test_username_password_failed_login(self):
self.client.post("/auth/login",{"username":"test","password":"test123",'passkeys':''})
Expand Down
13 changes: 5 additions & 8 deletions example/test_app/tests/test_views.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@ class test_views(TransactionTestCase):

def setUp(self) -> None:
from django.contrib.auth import get_user_model
if not getattr(self, "assertEquals", None):
self.assertEquals = self.assertEqual

self.user_model = get_user_model()
#self.user = self.user_model.objects.create_user(username="test", password="test")
self.client = Client()
Expand All @@ -32,7 +29,7 @@ def test_disabling_key(self):
def test_deleting_key(self):
key = UserPasskey.objects.filter(user=self.user).latest('id')
self.client.get(reverse('passkeys:delKey') + "?id=" + str(key.id))
self.assertEquals(UserPasskey.objects.filter(id=key.id).count(), 0)
self.assertEqual(UserPasskey.objects.filter(id=key.id).count(), 0)

def test_wrong_ownership(self):
test = test_fido()
Expand All @@ -42,8 +39,8 @@ def test_wrong_ownership(self):
self.user = self.user_model.objects.create_user(username="test2", password="test2")
self.client.post("/auth/login", {"username": "test2", "password": "test2", 'passkeys': ''})
r = self.client.get(reverse('passkeys:delKey') + "?id="+str(key.id))
self.assertEquals(r.status_code, 403)
self.assertEquals(r.content,b"Error: You own this token so you can't delete it")
self.assertEqual(r.status_code, 403)
self.assertEqual(r.content,b"Error: You own this token so you can't delete it")
r = self.client.get(reverse('passkeys:toggle') + "?id=" + str(key.id))
self.assertEquals(r.status_code, 403)
self.assertEquals(r.content, b"Error: You own this token so you can't toggle it")
self.assertEqual(r.status_code, 403)
self.assertEqual(r.content, b"Error: You own this token so you can't toggle it")
7 changes: 4 additions & 3 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ envlist=
py37-django{20,21,22,32},
py38-django{22,32,40,41,42},
py39-django{22,32,40,41,42},
py310-django{22,32,40,41,42,50},
py311-django{22,32,40,41,42,50},
py312-django{41,42,50},
py310-django{22,32,40,41,42,50,51},
py311-django{22,32,40,41,42,50,51},
py312-django{41,42,50,51},


[testenv]
Expand All @@ -19,6 +19,7 @@ deps =
django41: django>=4.1,<4.2
django42: django>=4.2,<4.3
django50: django>=5.0,<5.1
django51: django>=5.1,<5.2
ua-parser
user-agents
django-sslserver
Expand Down

0 comments on commit d9dbf3b

Please sign in to comment.