Skip to content

Commit

Permalink
We have more than one form on award_prep page now
Browse files Browse the repository at this point in the history
  • Loading branch information
frenzymadness committed Jan 24, 2022
1 parent fec7396 commit c1036b8
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions tests/test_medals.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,17 @@ def test_award_medal(self, user, testapp, medal_id):
).count()
login(user, testapp)
page = testapp.get(url_for("donor.award_prep", medal_slug=medal.slug))
form = page.forms["awardMedalForm"]
try:
checkboxes = len(page.form.fields["rodne_cislo"])
checkboxes = len(form.fields["rodne_cislo"])
except KeyError:
pytest.skip("No medals to award.")
uncheck = checkboxes // 4
# Uncheck some checkboxes
for i in range(uncheck):
page.form.fields["rodne_cislo"][i].checked = False
form.fields["rodne_cislo"][i].checked = False
# Award first batch of medals
page = page.form.submit().follow()
page = form.submit().follow()
awarded_new = AwardedMedals.query.count()
awarded_do_new = DonorsOverview.query.filter(
getattr(DonorsOverview, "awarded_medal_" + medal.slug) == 1
Expand All @@ -50,14 +51,17 @@ def test_award_medal(self, user, testapp, medal_id):
for awarded_medal in awarded_medals:
assert awarded_medal.awarded_at.date() == datetime.now().date()

form = page.forms["awardMedalForm"]

try:
assert len(page.form.fields["rodne_cislo"]) == uncheck
assert len(form.fields["rodne_cislo"]) == uncheck
except KeyError:
return # No more checkboxes, no reason to continue
# Award the remaining medals
page = page.form.submit().follow()
page = form.submit().follow()
form = page.forms["awardMedalForm"]
# No checkboxes left
assert page.form.fields.get("rodne_cislo", None) is None
assert form.fields.get("rodne_cislo", None) is None
awarded_new = AwardedMedals.query.count()
awarded_do_new = DonorsOverview.query.filter(
getattr(DonorsOverview, "awarded_medal_" + medal.slug) == 1
Expand Down Expand Up @@ -163,17 +167,17 @@ def test_award_nonexisting_medal(self, user, testapp):
awarded = AwardedMedals.query.count()
login(user, testapp)
page = testapp.get(url_for("donor.award_prep", medal_slug="br"))
page.form.fields["medal_id"][0].value = "foo"
page = page.form.submit().follow()
page.forms["awardMedalForm"].fields["medal_id"][0].value = "foo"
page = page.forms["awardMedalForm"].submit().follow()
assert "Odeslána nevalidní data" in page
assert awarded == AwardedMedals.query.count()

def test_award_invalid_rc(self, user, testapp):
awarded = AwardedMedals.query.count()
login(user, testapp)
page = testapp.get(url_for("donor.award_prep", medal_slug="br"))
page.form.fields["rodne_cislo"][0].force_value("foobarbaz")
page = page.form.submit().follow()
page.forms["awardMedalForm"].fields["rodne_cislo"][0].force_value("foobarbaz")
page = page.forms["awardMedalForm"].submit().follow()
assert "Odeslána nevalidní data" in page
assert awarded == AwardedMedals.query.count()

Expand Down

0 comments on commit c1036b8

Please sign in to comment.