def setUp(self): self.program = ProgramFactory( reporting_period_start=datetime.date(2018, 1, 1), reporting_period_end=datetime.date(2019, 1, 1), ) self.indicator = IndicatorFactory( program=self.program, target_frequency=Indicator.MID_END, ) PeriodicTargetFactory( indicator=self.indicator, start_date=datetime.date(2018, 1, 1), end_date=datetime.date(2018, 12, 31), ) self.result = ResultFactory( indicator=self.indicator, date_collected=datetime.date(2017, 1, 1), achieved=42, record_name='My Test Record', evidence_url='http://my_evidence_url', ) self.count = 1 self.count += str(self.indicator.pk).count('42') * 2 self.count += str(self.indicator.name).count('42') self.count += str(self.result.pk).count('42') self.user = UserFactory(first_name="FN", last_name="LN", username="******", is_superuser=True) self.user.set_password('password') self.user.save() self.tola_user = TolaUserFactory(user=self.user) self.client.login(username='******', password='******')
def setUp(self): startdate = datetime.strptime('2017-02-04', '%Y-%m-%d') enddate = datetime.strptime('2019-10-01', '%Y-%m-%d') self.program = ProgramFactory(reporting_period_start=startdate, reporting_period_end=enddate) self.user = UserFactory(first_name="FN", last_name="LN", username="******", is_superuser=True) self.user.set_password('password') self.user.save() self.tola_user = TolaUserFactory(user=self.user) self.tola_user.save() self.client.login(username='******', password='******') # setting up an indicator of each target type should allow the view to load w/ that target period (I think...) for indicator_frequency in self.test_target_periods: indicator = IndicatorFactory(target_frequency=indicator_frequency, program=self.program) # make periodic target w/ unicode in the period names - this was causing an exception! PeriodicTargetFactory(period='Año unicode name', indicator=indicator, start_date=startdate, end_date=enddate)
def setUp(self): self.program = ProgramFactory( reporting_period_start=datetime.date(2018, 1, 1), reporting_period_end=datetime.date(2019, 1, 1), ) self.level1 = LevelFactory(program=self.program, customsort=1) self.level1_1 = LevelFactory(parent=self.level1, customsort=1, program=self.program) self.level1_1_1 = LevelFactory(parent=self.level1_1, customsort=1, program=self.program) self.level1_1_2 = LevelFactory(parent=self.level1_1, customsort=2, program=self.program) self.level1_2 = LevelFactory(parent=self.level1, customsort=2, program=self.program) self.level1_2_1 = LevelFactory(parent=self.level1_2, customsort=1, program=self.program) self.level1_2_2 = LevelFactory(parent=self.level1_2, customsort=2, program=self.program) self.level1_2_3 = LevelFactory(parent=self.level1_2, customsort=3, program=self.program) self.level1_2_3_1 = LevelFactory(parent=self.level1_2_3, customsort=1, program=self.program) self.level1_2_3_1_1 = LevelFactory(parent=self.level1_2_3_1, customsort=1, program=self.program) self.tier1 = LevelTierFactory(program=self.program, name='Tier1', tier_depth=1) self.tier2 = LevelTierFactory(program=self.program, name='Tier2', tier_depth=2) self.tier3 = LevelTierFactory(program=self.program, name='Tier3', tier_depth=3) self.tier4 = LevelTierFactory(program=self.program, name='Tier4', tier_depth=4)
def test_form_populates(self): """The form should populate several fields from the db""" request = RequestFactory().get('/') request.user = UserFactory() sectors = SectorFactory.create_batch(3) levels = LevelFactory.create_batch(3) ind_types = IndicatorTypeFactory.create_batch(3) program = ProgramFactory() indicator = IndicatorFactory(program=program) IndicatorFactory.create_batch(3) collected_data = CollectedDataFactory(indicator=indicator) CollectedDataFactory.create_batch(3) expected = SiteProfileFactory() expected2 = SiteProfileFactory() collected_data.site.add(expected2) collected_data.site.add(expected) SiteProfileFactory.create_batch(3) period_choices_start = ((2018, ( ('2018-02-01', 'Quarter 4 (Feb 01, 2018 - Apr 30, 2018)'), ('2018-05-01', 'Quarter 5 (May 01, 2018 - Jul 31, 2018)'))), ) period_choices_end = ((2018, ( ('2018-04-30', 'Quarter 4 (Feb 01, 2018 - Apr 30, 2018)'), ('2018-07-31', 'Quarter 5 (May 01, 2018 - Jul 31, 2018)'))), ) kwargs = { 'program': program, 'request': request, 'initial': { 'period_choices_start': period_choices_start, 'period_choices_end': period_choices_end } } form = IPTTReportFilterForm(**kwargs) stuff = str(form) self.assertIn(expected.name, stuff) self.assertIn(expected2.name, stuff) self.assertIn(indicator.name, stuff)