added and verified tests

This commit is contained in:
2021-11-12 14:09:21 -06:00
parent c0519f2a88
commit 9bc16353b7
5 changed files with 155 additions and 27 deletions

View File

@@ -13,10 +13,40 @@ class TestVenueViews(TestCase):
self.assertEqual(response.status_code, 200)
def test_positioning_formset(self):
formset = PositioningFormSet({
'form-0-id':1,
'form-0-order':0,
'form-0-player':Player.objects.get(id=1),
'form-0-position':'P'
})
self.assertTrue(formset.is_valid())
event = 1
sample_data = [
# first player positioning
(1, Player.objects.get(id=1).id, 'P'),
(2, Player.objects.get(id=2).id, 'C'),
(3, Player.objects.get(id=3).id, '1B')
]
data = {}
for i, (order, player, position) in enumerate(sample_data):
data[f'form-{i}-order']=order
data[f'form-{i}-player']=player
data[f'form-{i}-position'] = position
management = {
'form-INITIAL_FORMS': '0',
'form-TOTAL_FORMS': len(sample_data),
'form-MAX_NUM_FORMS': ''
}
formset = PositioningFormSet({**management, **data})
self.assertTrue(formset.is_valid())
for form in formset:
self.assertTrue(form.is_valid())
response = self.client.post(reverse('edit lineup', args=[event]), {**management, **data})
self.assertEqual(response.status_code, 200)
for d in sample_data:
with self.subTest(d):
p = Positioning.objects.get(player_id=d[1], event_id=event)
self.assertEqual(d[0], p.order)
self.assertEqual(d[2], p.position)
pass