def test_should_ignore_locations_if_no_response_found(self): with patch('education.absenteeism_view_helper.get_responses_over_depth') as method_mock: method_mock.return_value = [], [] , 0 config_data = get_polls_for_keyword('P3Boys') config=config_data[0] get_responses_by_location(list(self.uganda.get_children()),config, self.date_week) method_mock.assert_called_with(config['attendance_poll'][0],config['enrollment_poll'][0], list(self.uganda.get_children()), self.date_week)
def test_should_give_result_for_p3_boys_poll_at_location(self): locations = [self.gulu_district] with patch('education.absenteeism_view_helper.get_responses_over_depth') as method_mock: method_mock.return_value = [], [],0 config_data = get_polls_for_keyword('P3Boys') config=config_data[0] get_responses_by_location(locations, config ,self.date_week) method_mock.assert_called_with(config['attendance_poll'][0],config['enrollment_poll'][0], locations, self.date_week)
def test_should_give_proper_school_percent_for_location_and_time(self): self.p3_boys_absent_poll.start() locations = [self.kampala_district] self.fake_incoming('3', self.emis_reporter7) self.fake_incoming('4', self.emis_reporter8) config_data = get_polls_for_keyword('P3Boys') config=config_data[0] absent_by_loc, absent_by_time, school_percent = get_responses_by_location(locations,config,self.date_week) self.assertEqual(25,school_percent)
def test_should_give_head_teachers_absenteeism_percent(self): schedule_script_now(grp=self.smc_group.name,slug='edtrac_smc_weekly') check_progress(self.head_teachers_script) locations = [self.kampala_district] # self.head_teachers_poll.start() self.fake_incoming('no', self.emis_reporter5) self.fake_incoming('yes', self.emis_reporter6) config = get_polls_for_keyword('MaleHeadTeachers') result_by_location, result_by_time,school_percent = get_head_teachers_absent_over_time(locations,config[0], self.date_week) self.assertEqual(50, result_by_location.get('Kampala')) self.assertIn(50, result_by_time) self.assertEqual(25,school_percent) #n four weeks only once replies were sent
def test_should_give_result_for_p3_boys_poll(self): locations = [self.kampala_district] self.p3_boys_enrolled_poll.start() self.fake_incoming('10', self.emis_reporter1) self.fake_incoming('10', self.emis_reporter2) self.p3_boys_enrolled_poll.end() create_record_enrolled_deployed_questions_answered(model=EnrolledDeployedQuestionsAnswered) with patch('education.absenteeism_view_helper.get_responses_over_depth') as method_mock: method_mock.return_value = [], [],0 config_data = get_polls_for_keyword('P3Boys') config=config_data[0] get_responses_by_location(locations, config ,self.date_week) method_mock.assert_called_with(config['attendance_poll'][0],config['enrollment_poll'][0], locations, self.date_week)
def test_should_return_proper_config_data_if_indicator_passed(self): expected = [dict(attendance_poll=['edtrac_boysp3_attendance'], collective_dict_key='P3 Boys', enrollment_poll=['edtrac_boysp3_enrollment'], time_data_name='P3 Boys', func= get_responses_by_location)] config_data = get_polls_for_keyword("P3Boys") self.assertEqual(expected,config_data)