def test_vidyo_admin_model_decrypted(self): """ tests that given proper credentials, a decrypted vidyoadmin model is available as an attribute of request.user """ request = self._good_credentials() vidyo_admin_rpc_auth(self.myview)(request) try: self.assertEqual(request.user.vidyoadmin.password, VIDYO_PORTAL_PASSWORD) except ValueError as e: self.addFailure(e)
def test_good_credentials_deny_empty_ip(self): self.vidyo_admin.use_ip_auth = True self.vidyo_admin.save() request = self._good_credentials() response = vidyo_admin_rpc_auth(self.myview)(request) self.assertEqual(response.status_code, 401) self.assertEqual(response.content, b'')
def test_good_credentials_bad_ip(self): self.vidyo_admin.use_ip_auth = True self.vidyo_admin.save() self.vidyo_admin.ipmodel_set.create(ip=self.CLIENT_IP) request = self._good_credentials(ip='255.255.255.255') response = vidyo_admin_rpc_auth(self.myview)(request) self.assertEqual(response.status_code, 401) self.assertEqual(response.content, b'')
def test_user_no_vidyoadmin_401(self): """ If a given user doesn't have a vidyoadmin FK, then authentication should fail, regardless of the quality of the given credentials """ User.objects.create_user( username='******', email='*****@*****.**', password='******' ) request = self._session_middleware_credentialed_request( user='******', password='******' ) response = vidyo_admin_rpc_auth(self.myview)(request) self.assertEqual(response.status_code, 401) self.assertEqual(response.content, b'')
def test_successful_auth_user_login(self): """ Tests for successful user login on delivery of good auth credentials The purpose of this is to avoid expensive calls to ``django.contrib.auth.authenticate()`` with every request, when a session can be set up instead. (cookie support required clientside) """ request = self._good_credentials() self.assertEqual(request.user.is_authenticated(), False) response = vidyo_admin_rpc_auth(self.myview)(request) self.assertEqual(response.status_code, 200) self.assertEqual(response.content, b'success') self.assertEqual(request.user.is_authenticated(), True) self.assertEqual(self.user, request.user)
def test_no_credentials_401(self): response = vidyo_admin_rpc_auth(self.myview)(HttpRequest()) self.assertEqual(response.status_code, 401) self.assertEqual(response.content, b'')
def test_bad_credentials(self): request = self._bad_credentials() response = vidyo_admin_rpc_auth(self.myview)(request) self.assertEqual(response.status_code, 401) self.assertEqual(response.content, b'')
def test_good_credentials_no_ip_auth(self): request = self._good_credentials() response = vidyo_admin_rpc_auth(self.myview)(request) self.assertEqual(response.status_code, 200) self.assertEqual(response.content, b'success')