Exemple #1
0
    def test_getOldPassword(self):
        """ Makes sure we can get an old password from a username"""
        view = MigrateAndLogin()
        oldPass = view.getOldPassword('oldUser')
        self.assertEqual(oldPass.user, self.oldUser)

        self.assertEqual(view.getOldPassword('newuser'), None)
Exemple #2
0
 def test_no_username_returns_error(self):
     """ An post request with no username should return a 400 error code with username error"""
     factory = APIRequestFactory()
     request = factory.post('/api-token-auth', {'password': '******'})
     view = MigrateAndLogin()
     response = view.post(request)
     self.assertEqual(response.status_code, 400)
     self.assertEqual(response.data['username'], 'This field is required')
     self.assertEqual('password' in response.data, False)
Exemple #3
0
 def test_empty_post_request_returns_errors(self):
     """ An empty post request should return a 400 error code with username and password errors"""
     factory = APIRequestFactory()
     request = factory.post('/api-token-auth')
     view = MigrateAndLogin()
     response = view.post(request)
     self.assertEqual(response.status_code, 400)
     self.assertEqual(response.data['username'], 'This field is required')
     self.assertEqual(response.data['password'], 'This field is required')
Exemple #4
0
 def test_user_with_new_password_authenticates(self):
     """ A user with a valid username/password gets a token """
     factory = APIRequestFactory()
     request = factory.post('/api-token-auth', {
         'username': '******',
         'password': '******'
     })
     view = MigrateAndLogin.as_view()
     response = view(request)
     self.assertEqual(response.status_code, 200)
     self.assertEqual(response.data['token'], self.newUser.auth_token.key)
Exemple #5
0
    def test_user_with_old_password_authenticates_and_migrates(self):
        """ A user with a valid username/password gets a token """
        factory = APIRequestFactory()
        request = factory.post('/api-token-auth', {
            'username': '******',
            'password': '******'
        })
        view = MigrateAndLogin.as_view()
        response = view(request)
        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.data['token'], self.oldUser.auth_token.key)

        # Old password should have been deleted
        self.assertEqual(
            OldPassword.objects.filter(user=self.oldUser).exists(), False)

        # new password should exist in user table
        user = User.objects.get(username='******')
        self.assertEqual(user.check_password('pass2'), True)