def test_should_reject_expired_token(self): """ should return 400 if token already has been used to create an account. """ url = self._get_url() token = self._make_user_invite_token() email = fake.email() name = fake.user_name() password = fake.password() user_invite = UserInvite.get_invite_for_token(token=token) username = user_invite.username if not user_invite.username: username = User.get_temporary_username(email) # create a user new_user = User.create_user(username=username, email=email, password=password, name=name, avatar=None, is_of_legal_age=True, badge=user_invite.badge, are_guidelines_accepted=True) user_invite.created_user = new_user user_invite.save() request_data = {'token': token} response = self.client.post(url, request_data, format='json') self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def email_not_taken_validator(email): if User.is_email_taken(email): raise ValidationError(_('An account for the email already exists.'), )
def username_not_taken_validator(username): if User.is_username_taken(username): raise ValidationError(_('The username is already taken.'), )
def user_username_exists(username): if not User.user_with_username_exists(username=username): raise NotFound(_('No user with the provided username exists.'), )