def test_mp_with_two_constituencies(self): Position.objects.create( category='political', person=self.person, place=self.constituency, organisation=self.na, title=self.na_member_title, start_date=ApproximateDate(2015, 1, 1), ) Position.objects.create( category='political', person=self.person, place=self.constituency2, organisation=self.na, title=self.na_member_title, start_date=ApproximateDate(2015, 1, 2), ) request = RequestFactory().get('/person/test-person/') request.user = AnonymousUser() response = KEPersonDetail.as_view()(request, slug='test-person') self.assertEqual(len(response.context_data['constituencies']), 1) self.assertEqual(response.context_data['constituencies'][0], self.constituency2) # Check that admins got mailed. self.assertEqual(len(mail.outbox), 1) self.assertEqual( mail.outbox[0].subject, '[Django] ERROR: test-person - Too many NA memberships (2)', )
def test_mp_with_two_constituencies(self): Position.objects.create( category="political", person=self.person, place=self.constituency, organisation=self.na, title=self.na_member_title, start_date=ApproximateDate(2015, 1, 1), ) Position.objects.create( category="political", person=self.person, place=self.constituency2, organisation=self.na, title=self.na_member_title, start_date=ApproximateDate(2015, 1, 2), ) request = RequestFactory().get("/person/test-person/") request.user = AnonymousUser() response = KEPersonDetail.as_view()(request, slug="test-person") self.assertEqual(len(response.context_data["constituencies"]), 1) self.assertEqual(response.context_data["constituencies"][0], self.constituency2) # Check that admins got mailed. self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, "[Django] ERROR: test-person - Too many NA memberships (2)")
def test_mp_with_county(self): Position.objects.create( category="political", person=self.person, place=self.constituency, organisation=self.na, title=self.na_member_title, ) Position.objects.create(category="political", person=self.person, place=self.county) request = RequestFactory().get("/person/test-person/") request.user = AnonymousUser() response = KEPersonDetail.as_view()(request, slug="test-person") self.assertEqual(len(response.context_data["constituencies"]), 1) self.assertEqual(response.context_data["constituencies"][0], self.constituency)
def test_mp_with_county(self): Position.objects.create( category='political', person=self.person, place=self.constituency, organisation=self.na, title=self.na_member_title, ) Position.objects.create( category='political', person=self.person, place=self.county, ) request = RequestFactory().get('/person/test-person/') request.user = AnonymousUser() response = KEPersonDetail.as_view()(request, slug='test-person') self.assertEqual(len(response.context_data['constituencies']), 1) self.assertEqual(response.context_data['constituencies'][0], self.constituency)
def test_senator_with_party_membership_linked_to_constituency(self): Position.objects.create( category='political', person=self.person, place=self.county, organisation=self.senate, title=self.senator_title, ) Position.objects.create( category='political', person=self.person, place=self.constituency, organisation=self.party, title=self.party_member_title, ) request = RequestFactory().get('/person/test-person/') request.user = AnonymousUser() response = KEPersonDetail.as_view()(request, slug='test-person') self.assertEqual(len(response.context_data['constituencies']), 1) self.assertEqual(response.context_data['constituencies'][0], self.county)
TemplateView.as_view(template_name='register-to-vote.html')), url(r'^find-polling-station$', TemplateView.as_view(template_name='find-polling-station.html')), url(r'^women/$', TemplateView.as_view(template_name='women.html'), name='women'), url(r'^youthful-mps/$', YoungRepresentativesView.as_view(), name='young-reps'), url(r'^female-representatives/$', FemaleRepresentativesView.as_view(), name='female-reps'), url(r'^person/all/$', ListView.as_view(model=models.Person), name='person_list'), url(r'^person/(?P<slug>[-\w]+)/$', KEPersonDetail.as_view(), name='person'), url(r'^person/(?P<slug>[-\w]+)/appearances/$', KEPersonDetailAppearances.as_view(sub_page='appearances'), name='person'), url(r'^person/(?P<slug>[-\w]+)/experience/$', KEPersonDetailExperience.as_view(sub_page='experience'), name='person'), url( '^info/political-parties$', RedirectView.as_view( pattern_name='organisation_kind', permanent=False, ), {'slug': 'party'}, ),
from pombola.kenya.views import KEPersonDetail, KEPersonDetailAppearances from .views import (CountyPerformanceView, CountyPerformanceSenateSubmission, CountyPerformancePetitionSubmission, CountyPerformanceShare, CountyPerformanceSurvey, EXPERIMENT_DATA, ThanksTemplateView, ShujaazFinalistsView ) urlpatterns = patterns('', url(r'^shujaaz$', ShujaazFinalistsView.as_view(), name='shujaaz-finalists'), url(r'^shujaaz-voting$', TemplateView.as_view(template_name='shujaaz-voting.html'), name='shujaaz-voting'), url(r'^intro$', TemplateView.as_view(template_name='intro.html') ), url(r'^register-to-vote$', TemplateView.as_view(template_name='register-to-vote.html') ), url(r'^find-polling-station$', TemplateView.as_view(template_name='find-polling-station.html') ), url(r'^person/(?P<slug>[-\w]+)/$', KEPersonDetail.as_view(), name='person'), url(r'^person/(?P<slug>[-\w]+)/appearances/$', KEPersonDetailAppearances.as_view(sub_page='appearances'), name='person'), ) # Create the two County Performance pages: for experiment_slug in ('mit-county', 'mit-county-larger'): view_kwargs = {'experiment_slug': experiment_slug} view_kwargs.update(EXPERIMENT_DATA[experiment_slug]) base_name = view_kwargs['base_view_name'] base_path = r'^' + base_name urlpatterns.append( url(base_path + r'$', CountyPerformanceView.as_view(**view_kwargs),
from pombola.kenya.views import KEPersonDetail, KEPersonDetailAppearances from .views import (CountyPerformanceView, CountyPerformanceSenateSubmission, CountyPerformancePetitionSubmission, CountyPerformanceShare, CountyPerformanceSurvey, EXPERIMENT_DATA, ThanksTemplateView, ShujaazFinalistsView ) urlpatterns = patterns('', url(r'^shujaaz$', ShujaazFinalistsView.as_view(), name='shujaaz-finalists'), url(r'^shujaaz-voting$', TemplateView.as_view(template_name='shujaaz-voting.html'), name='shujaaz-voting'), url(r'^intro$', TemplateView.as_view(template_name='intro.html') ), url(r'^register-to-vote$', TemplateView.as_view(template_name='register-to-vote.html') ), url(r'^find-polling-station$', TemplateView.as_view(template_name='find-polling-station.html') ), url(r'^person/(?P<slug>[-\w]+)/$', KEPersonDetail.as_view(), name='person'), url(r'^person/(?P<slug>[-\w]+)/appearances/$', KEPersonDetailAppearances.as_view(sub_page='appearances'), name='person'), ) # Create the two County Performance pages: for experiment_slug in ('mit-county', 'mit-county-larger'): base_name = EXPERIMENT_DATA[experiment_slug]['base_view_name'] base_path = r'^' + base_name view_kwargs = {'experiment_slug': experiment_slug} urlpatterns.append( url(base_path + r'$', CountyPerformanceView.as_view(**view_kwargs), name=base_name)
urlpatterns = [ url(r"^$", KEHomeView.as_view(), name="home"), url( r"^shujaaz$", RedirectView.as_view(pattern_name="shujaaz-finalists-2015", permanent=False), name="shujaaz-redirect", ), url(r"^shujaaz/2015$", ShujaazFinalists2015View.as_view(), name="shujaaz-finalists-2015"), url(r"^shujaaz/2014$", ShujaazFinalists2014View.as_view(), name="shujaaz-finalists-2014"), url(r"^shujaaz-voting$", TemplateView.as_view(template_name="shujaaz-voting.html"), name="shujaaz-voting"), url(r"^intro$", TemplateView.as_view(template_name="intro.html")), url(r"^register-to-vote$", TemplateView.as_view(template_name="register-to-vote.html")), url(r"^find-polling-station$", TemplateView.as_view(template_name="find-polling-station.html")), url(r"^women/$", TemplateView.as_view(template_name="women.html"), name="women"), url(r"^person/all/$", ListView.as_view(model=models.Person), name="person_list"), url(r"^person/(?P<slug>[-\w]+)/$", KEPersonDetail.as_view(), name="person"), url( r"^person/(?P<slug>[-\w]+)/appearances/$", KEPersonDetailAppearances.as_view(sub_page="appearances"), name="person", ), url( r"^person/(?P<slug>[-\w]+)/experience/$", KEPersonDetailExperience.as_view(sub_page="experience"), name="person" ), url( "^info/political-parties$", RedirectView.as_view(pattern_name="organisation_kind", permanent=False), {"slug": "party"}, ), url(r"^iebc-office-lookup$", OfficeSingleSelectView.as_view(), name="iebc-offices-single-select"), url(r"^iebc-office$", OfficeDetailView.as_view(), name="iebc-office"),