def test_clean_username(self): # A user with proto_user params does not exist yet. proto_user = UserFactory.build() form = UserCreationForm({ "username": proto_user.username, "password1": proto_user._password, "password2": proto_user._password, }) assert form.is_valid() assert form.clean_username() == proto_user.username # Creating a user. form.save() # The user with proto_user params already exists, # hence cannot be created. form = UserCreationForm({ "username": proto_user.username, "password1": proto_user._password, "password2": proto_user._password, }) assert not form.is_valid() assert len(form.errors) == 1 assert "username" in form.errors
def test_logged_in_user_can_view_season_detail(self): user = UserFactory() self.client.force_login(user) response = self.client.get(self.get_url()) assert response.status_code == 200
def setUp(self): self.user = UserFactory() self.season = SeasonFactory(commissioner=self.user) self.gameweek = GameweekFactory( season=self.season, number=1, )
def test_non_commissioner_user_redirected_on_post(self): user = UserFactory() self.client.force_login(user) response = self.client.post(self.get_url()) assert response.status_code == 302 assert 'login' in response.url assert Gameweek.objects.count() == 1
def test_non_commissioner_redirected_on_get(self): user = UserFactory() self.client.force_login(user) response = self.client.get(self.get_url()) assert response.status_code == 302 assert 'login' in response.url
def test_slug_unique_constraint(self): user = UserFactory() self.client.force_login(user) self.client.post(self.url, data=self.test_data) response = self.client.post(self.url, data=self.test_data) assert response.status_code == 200 assert Season.objects.count() == 1 form_errors = response.context['form'].errors assert 'Name must not clash with existing seasons' in form_errors['name']
def test_non_commissioner_user_redirected_on_post(self): original_spiel = self.gameweek.spiel original_deadline = self.gameweek.deadline user = UserFactory() self.client.force_login(user) response = self.client.post(self.get_url(), data=self.test_data) assert response.status_code == 302 assert 'login' in response.url self.gameweek.refresh_from_db() assert self.gameweek.spiel == original_spiel assert self.gameweek.deadline == original_deadline
def test_successful_create(self): user = UserFactory() self.client.force_login(user) response = self.client.post(self.url, data=self.test_data) assert response.status_code == 302 assert Season.objects.count() == 1 season = Season.objects.first() assert season.name == self.test_data['name'] assert season.weekly_allowance == self.test_data['weekly_allowance'] assert season.commissioner == user assert season.slug == slugify(self.test_data['name'])
def test_non_commissioner_user_redirected_on_post(self): original_name = self.season.name original_weekly_allowance = self.season.weekly_allowance user = UserFactory() self.client.force_login(user) response = self.client.post(self.get_url(), data=self.test_data) assert response.status_code == 302 assert 'login' in response.url self.season.refresh_from_db() assert self.season.name == original_name assert self.season.weekly_allowance == original_weekly_allowance
def user() -> settings.AUTH_USER_MODEL: return UserFactory()
def setUp(self): self.user = UserFactory() self.season = SeasonFactory(commissioner=self.user)