plugged some test coverage lacunae, incl. tests for release_slot for the Carte Blanche; select_role for ROLE_CHOICES & ROLE_SELECT; equip_trinket non-POST paths; & tooltip_shoptalk for the Tithe Token
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
@@ -608,6 +608,26 @@ class SelectRoleViewTest(TestCase):
|
||||
)
|
||||
self.assertEqual(response.status_code, 409)
|
||||
|
||||
def test_select_role_redirects_when_not_role_select_phase(self):
|
||||
self.room.table_status = None
|
||||
self.room.save()
|
||||
response = self.client.post(
|
||||
reverse("epic:select_role", kwargs={"room_id": self.room.id}),
|
||||
data={"role": "PC"},
|
||||
)
|
||||
self.assertRedirects(
|
||||
response, reverse("epic:gatekeeper", args=[self.room.id])
|
||||
)
|
||||
|
||||
def test_select_role_redirects_for_invalid_role_code(self):
|
||||
response = self.client.post(
|
||||
reverse("epic:select_role", kwargs={"room_id": self.room.id}),
|
||||
data={"role": "BOGUS"},
|
||||
)
|
||||
self.assertRedirects(
|
||||
response, reverse("epic:gatekeeper", args=[self.room.id])
|
||||
)
|
||||
|
||||
|
||||
class RevealPhaseRenderingTest(TestCase):
|
||||
def setUp(self):
|
||||
@@ -699,3 +719,26 @@ class RoomActionsViewTest(TestCase):
|
||||
reverse("epic:abandon_room", kwargs={"room_id": self.room.id})
|
||||
)
|
||||
self.assertRedirects(response, "/gameboard/")
|
||||
|
||||
|
||||
class ReleaseSlotViewTest(TestCase):
|
||||
def setUp(self):
|
||||
self.gamer = User.objects.create(email="gamer@test.io")
|
||||
self.client.force_login(self.gamer)
|
||||
owner = User.objects.create(email="owner@test.io")
|
||||
self.room = Room.objects.create(name="Test Room", owner=owner)
|
||||
self.slot = self.room.gate_slots.get(slot_number=1)
|
||||
self.slot.gamer = self.gamer
|
||||
self.slot.status = GateSlot.FILLED
|
||||
self.slot.debited_token_type = Token.CARTE
|
||||
self.slot.save()
|
||||
|
||||
def test_release_slot_downgrades_open_room_to_gathering(self):
|
||||
self.room.gate_status = Room.OPEN
|
||||
self.room.save()
|
||||
self.client.post(
|
||||
reverse("epic:release_slot", kwargs={"room_id": self.room.id}),
|
||||
data={"slot_number": self.slot.slot_number},
|
||||
)
|
||||
self.room.refresh_from_db()
|
||||
self.assertEqual(self.room.gate_status, Room.GATHERING)
|
||||
|
||||
Reference in New Issue
Block a user