def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) is_staff = self.request.user.is_staff context['show_pdf'] = self.request.user.profile.should_see_pdf() context['body_class'] = 'admin' if is_staff: context['ALL_TAG_NAMES'] = TagsService.get_all_used_tag_names() context['results'] = \ SubmissionsService.get_submissions_for_followups( self.request.GET.get('page')) context['app_index_tabs'], count = get_tabs_for_staff_user( 'All Applications') context['app_index_scope_title'] = 'Applications' else: context['results'] = \ AppsService.get_all_applications_for_org_user( self.request.user, self.request.GET.get('page')) context['app_index_tabs'], count = get_tabs_for_org_user( self.request.user.profile.organization, 'All') context['app_index_scope_title'] = "All Applications To {}".format( self.request.user.profile.organization.name) if count == 0: context['no_results'] = 'You have no applications.' context['csv_download_link'] = None else: context['csv_download_link'] = reverse('intake-csv_download') context['page_counter'] = \ utils.get_page_navigation_counter( page=context['results'], wing_size=9) return context
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) is_staff = self.request.user.is_staff context['show_pdf'] = self.request.user.profile.should_see_pdf() context['body_class'] = 'admin' if is_staff: context['ALL_TAG_NAMES'] = TagsService.get_all_used_tag_names() context['results'] = \ SubmissionsService.get_submissions_for_followups( self.request.GET.get('page')) context['app_index_tabs'], count = get_tabs_for_staff_user( 'All Applications') context['app_index_scope_title'] = 'Applications' else: context['results'] = \ AppsService.get_all_applications_for_org_user( self.request.user, self.request.GET.get('page')) context['app_index_tabs'], count = get_tabs_for_org_user( self.request.user.profile.organization, 'All') context['app_index_scope_title'] = "All Applications To {}".format( self.request.user.profile.organization.name) if count == 0: context['no_results'] = 'You have no applications.' context['csv_download_link'] = None else: context['csv_download_link'] = reverse('intake-csv_download') context['page_counter'] = \ utils.get_page_navigation_counter( page=context['results'], wing_size=9) return context
def test_all_results_for_org_who_cant_transfer(self): user = User.objects.filter( profile__organization__county__slug='solano').first() with self.assertNumQueries(6): results = AppsService.get_all_applications_for_org_user(user, 1) self.assertTrue(results.object_list) for thing in results: self.assertTrue(isinstance(thing, OrderedDict))
def all_results_include_unread_apps(self): user = User.objects.filter( profile__organization__slug='a_pubdef').first() results = AppsService.get_all_applications_for_org_user(user, 1) self.assertTrue( any([ app['has_been_opened'] for app in results ]))
def test_all_results_for_org_who_cant_transfer(self): user = User.objects.filter( profile__organization__county__slug='solano').first() with self.assertNumQueries(6): results = AppsService.get_all_applications_for_org_user(user, 1) self.assertTrue(results.object_list) for thing in results: self.assertTrue(isinstance(thing, OrderedDict))
def test_all_results_are_in_proper_order(self): user = User.objects.filter( profile__organization__slug='cc_pubdef').first() results = AppsService.get_all_applications_for_org_user(user, 1) future = timezone.now() + timedelta(days=10000) for item in results: date = item['form_submission']['local_date_received'] self.assertTrue(date <= future) future = date
def test_all_results_are_in_proper_order(self): user = User.objects.filter( profile__organization__slug='cc_pubdef').first() results = AppsService.get_all_applications_for_org_user(user, 1) future = timezone.now() + timedelta(days=10000) for item in results: date = item['form_submission']['local_date_received'] self.assertTrue(date <= future) future = date
def test_all_results_for_org_who_has_outgoing_transfers(self): user = User.objects.filter( profile__organization__slug='a_pubdef').first() to_org = Organization.objects.get(slug='ebclc') application = models.Application.objects.filter( organization__county__slug='alameda').first() TransferService.transfer_application(user, application, to_org, 'food replicator malfunction') with self.assertNumQueries(5): results = AppsService.get_all_applications_for_org_user(user, 1) self.assertTrue(any([app['was_transferred_out'] for app in results]))
def test_all_results_for_org_who_has_outgoing_transfers(self): user = User.objects.filter( profile__organization__slug='a_pubdef').first() to_org = Organization.objects.get(slug='ebclc') application = models.Application.objects.filter( organization__county__slug='alameda').first() TransferService.transfer_application( user, application, to_org, 'food replicator malfunction') with self.assertNumQueries(5): results = AppsService.get_all_applications_for_org_user(user, 1) self.assertTrue( any([ app['was_transferred_out'] for app in results ]))
def test_all_results_for_org_who_has_incoming_transfers(self): author = User.objects.filter( profile__organization__slug='a_pubdef').first() to_org = Organization.objects.get(slug='ebclc') applications = models.Application.objects.filter( organization__slug='a_pubdef') for application in applications: TransferService.transfer_application(author, application, to_org, 'temporal anomalies') user = User.objects.filter(profile__organization__slug='ebclc')[0] with self.assertNumQueries(16): results = AppsService.get_all_applications_for_org_user(user, 1) transferred_apps = [ app for app in results if app['incoming_transfers'] ] self.assertTrue(transferred_apps) transfer = transferred_apps[0]['incoming_transfers'][0] self.assertEqual(transfer['organization_name'], author.profile.organization.name) self.assertEqual(transfer['author_name'], author.profile.name) self.assertEqual(transfer['reason'], 'temporal anomalies')
def test_all_results_for_org_who_has_incoming_transfers(self): author = User.objects.filter( profile__organization__slug='a_pubdef').first() to_org = Organization.objects.get(slug='ebclc') applications = models.Application.objects.filter( organization__slug='a_pubdef') for application in applications: TransferService.transfer_application( author, application, to_org, 'temporal anomalies') user = User.objects.filter( profile__organization__slug='ebclc')[0] with self.assertNumQueries(16): results = AppsService.get_all_applications_for_org_user(user, 1) transferred_apps = [ app for app in results if app['incoming_transfers']] self.assertTrue(transferred_apps) transfer = transferred_apps[0]['incoming_transfers'][0] self.assertEqual( transfer['organization_name'], author.profile.organization.name) self.assertEqual( transfer['author_name'], author.profile.name) self.assertEqual( transfer['reason'], 'temporal anomalies')
def all_results_include_unread_apps(self): user = User.objects.filter( profile__organization__slug='a_pubdef').first() results = AppsService.get_all_applications_for_org_user(user, 1) self.assertTrue(any([app['has_been_opened'] for app in results]))