def tests_send_survey_latest_survey_less_four_weeks(self): monitor_script_kwargs = {"script_slug": "send_survey_reminder"} ending_date = timezone.now() + timedelta(weeks=2) kickoff_date = timezone.now() - timedelta(weeks=12) base = self.generate_models(academy=True, cohort=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_kwargs={'ending_date': ending_date, "kickoff_date": kickoff_date}) sent_at = timezone.now() - timedelta(weeks=2) models = [self.generate_models(survey=True, survey_kwargs={'sent_at': sent_at}, models=base) for _ in range(0, 2)] script = run_script(models[1].monitor_script) del script['slack_payload'] del script['text'] expected = { "severity_level": 5, "status": 'OPERATIONAL', } self.assertEqual(script, expected)
def tests_send_survey_ending_date_less_than_now(self): monitor_script_kwargs = {"script_slug": "send_survey_reminder"} ending_date = timezone.now() - timedelta(weeks=1) sent_at = timezone.now() - timedelta(weeks=5) model = self.generate_models(cohort=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_kwargs={ 'ending_date': ending_date}, survey=True, survey_kwargs={'sent_at': sent_at}) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = { "severity_level": 5, "status": 'OPERATIONAL', } self.assertEqual(script, expected) self.assertEqual(self.all_monitor_script_dict(), [{ **self.model_to_dict(model, 'monitor_script'), }])
def tests_send_survey_latest_survey_greater_four_weeks_two_cohorts_two_survey(self): monitor_script_kwargs = {"script_slug": "send_survey_reminder"} ending_date = timezone.now() + timedelta(days=2) kickoff_date = timezone.now() - timedelta(days=2) base = self.generate_models(academy=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, ) sent_at = timezone.now() - timedelta(weeks=6) models = [self.generate_models(survey=True, cohort=True, survey_kwargs={'sent_at': sent_at}, models=base, cohort_kwargs={'ending_date': ending_date, "kickoff_date": kickoff_date}) for _ in range(0, 2)] script = run_script(models[1].monitor_script) del script['slack_payload'] del script['text'] expected = { 'severity_level': 5, 'status': 'MINOR', 'error_slug': None, } self.assertEqual(script, expected)
def tests_check_cohort__ending_date_passed_with_status_final_project(self): monitor_script_kwargs = { "script_slug": "check_cohort_status_ended_cohort" } ending_date = timezone.now() - timedelta(weeks=2) model = self.generate_models( cohort=True, academy=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_kwargs={ 'ending_date': ending_date, 'stage': 'FINAL_PROJECT' }) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = { 'severity_level': 5, 'status': 'MINOR', 'error_slug': None, } self.assertEqual(script, expected) self.assertEqual(self.all_monitor_script_dict(), [{ **self.model_to_dict(model, 'monitor_script'), }])
def tests_check_cohort__status_ended_date_greater_than_now(self): monitor_script_kwargs = { "script_slug": "check_cohort_status_ended_cohort" } ending_date = timezone.now() + timedelta(weeks=2) model = self.generate_models( cohort=True, academy=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_kwargs={'ending_date': ending_date}) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = { 'severity_level': 5, 'status': 'OPERATIONAL', } self.assertEqual(script, expected) self.assertEqual(self.all_monitor_script_dict(), [{ **self.model_to_dict(model, 'monitor_script') }])
def tests_check_user_status_graduated_ended_cohort(self): monitor_script_kwargs = { "script_slug": "check_cohort_user_status_ended_cohort" } model = self.generate_models( cohort_user=True, cohort=True, academy=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_user_kwargs={'educational_status': "GRADUATED"}, cohort_kwargs={'stage': "ENDED"}) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = { 'severity_level': 5, 'status': 'OPERATIONAL', } self.assertEqual(script, expected) self.assertEqual(self.all_monitor_script_dict(), [{ **self.model_to_dict(model, 'monitor_script'), }])
def tests_check_user_status__active_ended_cohort(self): monitor_script_kwargs = { "script_slug": "check_cohort_user_status_ended_cohort" } model = self.generate_models( cohort_user=True, cohort=True, academy=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_user_kwargs={'educational_status': "ACTIVE"}, cohort_kwargs={'stage': "ENDED"}) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = { 'severity_level': 5, 'status': 'MINOR', 'error_slug': 'ended-cohort-had-active-users', } self.assertEqual(script, expected) self.assertEqual(self.all_monitor_script_dict(), [{ **self.model_to_dict(model, 'monitor_script'), }])
def tests_send_survey__kickoff_date_greater_than_now(self): monitor_script_kwargs = {"script_slug": "send_survey_reminder"} kickoff_date = timezone.now() + timedelta(weeks=1) sent_at = timezone.now() - timedelta(weeks=5) model = self.generate_models( cohort=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs, cohort_kwargs={'kickoff_date': kickoff_date}, survey=True, survey_kwargs={'sent_at': sent_at}) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = {"severity_level": 5, "status": 'OPERATIONAL'} self.assertEqual(script, expected)
def tests_send_survey_reminder_no_survey(self): monitor_script_kwargs = {"script_slug": "send_survey_reminder"} model = self.generate_models(academy=True, monitor_script=True, monitor_script_kwargs=monitor_script_kwargs ) script = run_script(model.monitor_script) del script['slack_payload'] del script['text'] expected = { "severity_level": 5, "status": 'OPERATIONAL', } self.assertEqual(script, expected) self.assertEqual(self.all_monitor_script_dict(), [{ **self.model_to_dict(model, 'monitor_script'), }])