from django.test import TestCase from representatives.models import Representative from representatives.views import RepresentativeViewMixin class RepresentativeManagerTest(TestCase): fixtures = ['representatives_test.json'] def test_prefetch_profile(self): test = RepresentativeViewMixin() reps = test.prefetch_for_representative_country_and_main_mandate( Representative.objects.order_by('pk')) with self.assertNumQueries(2): # Cast to list to avoid [index] to cast a select with an offset # below ! reps = [test.add_representative_country_and_main_mandate(r) for r in reps] assert reps[0].country.code == 'AT' assert reps[0].main_mandate is None assert reps[1].country.code == 'SE' assert reps[1].main_mandate.pk == 15