def setUp(self): super(CaseTypeReminderTestCase, self).setUp() self.domain = self.domain_obj.name self.user = CommCareUser.create(self.domain, 'chw.bob4', 'abc', phone_number='99912345') self.handler1 = ( CaseReminderHandler.create( self.domain, 'test').set_case_criteria_start_condition( 'case_type_a', 'start_sending1', MATCH_ANY_VALUE).set_case_criteria_start_date( start_offset=1).set_last_submitting_user_recipient(). set_sms_content_type('en').set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent(day_num=0, fire_time=time(0, 0), message={'en': 'Message1'}, callback_timeout_intervals=[]), ]).set_stop_condition( stop_case_property='stop_sending1').set_advanced_options()) self.handler1.save() self.handler2 = ( CaseReminderHandler.create( self.domain, 'test').set_case_criteria_start_condition( 'case_type_a', 'start_sending2', MATCH_ANY_VALUE).set_case_criteria_start_date( start_offset=2).set_last_submitting_user_recipient(). set_sms_content_type('en').set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent(day_num=0, fire_time=time(0, 0), message={'en': 'Message2'}, callback_timeout_intervals=[]), ]).set_stop_condition( stop_case_property='stop_sending2').set_advanced_options()) self.handler2.save() self.handler3 = ( CaseReminderHandler.create( self.domain, 'test').set_case_criteria_start_condition( 'case_type_a', 'start_sending3', MATCH_ANY_VALUE).set_case_criteria_start_date( start_offset=3).set_last_submitting_user_recipient(). set_sms_content_type('en').set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent(day_num=0, fire_time=time(0, 0), message={'en': 'Message3'}, callback_timeout_intervals=[]), ]).set_stop_condition( stop_case_property='stop_sending3').set_advanced_options()) self.handler3.save()
def setUp(self): super(StartConditionReminderTestCase, self).setUp() self.domain = self.domain_obj.name self.user = CommCareUser.create(self.domain, 'chw.bob5', 'abc', phone_number='99912345') self.handler1 = ( CaseReminderHandler.create( self.domain, 'test').set_case_criteria_start_condition( 'case_type_a', 'start_sending1', MATCH_REGEX, '^(ok|\d\d\d\d-\d\d-\d\d)').set_case_criteria_start_date( start_date='start_sending1', start_offset=1).set_last_submitting_user_recipient(). set_sms_content_type('en').set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent(day_num=0, fire_time=time(0, 0), message={'en': 'Message1'}, callback_timeout_intervals=[]), ]).set_stop_condition( stop_case_property='stop_sending1').set_advanced_options( use_today_if_start_date_is_blank=True)) self.handler1.save()
def setUp(self): super(StartConditionReminderTestCase, self).setUp() self.domain = self.domain_obj.name self.user = CommCareUser.create(self.domain, 'chw.bob5', 'abc', phone_number='99912345') self.handler1 = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition('case_type_a', 'start_sending1', MATCH_REGEX, '^(ok|\d\d\d\d-\d\d-\d\d)') .set_case_criteria_start_date(start_date='start_sending1', start_offset=1) .set_last_submitting_user_recipient() .set_sms_content_type('en') .set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent( day_num=0, fire_time=time(0, 0), message={'en': 'Message1'}, callback_timeout_intervals=[] ), ]) .set_stop_condition(stop_case_property='stop_sending1') .set_advanced_options(use_today_if_start_date_is_blank=True)) self.handler1.save()
def setUp(self): super(ReminderTestCase, self).setUp() self.domain = self.domain_obj.name self.case_type = "my_case_type" self.message = "Test reminder message." self.handler = ( CaseReminderHandler.create( self.domain, 'test').set_case_criteria_start_condition( self.case_type, 'start_sending', MATCH_EXACT, 'ok').set_case_criteria_start_date( start_offset=1).set_last_submitting_user_recipient(). set_sms_content_type('en').set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent(day_num=0, fire_time=time(0, 0), message={'en': self.message}, callback_timeout_intervals=[]), ]).set_stop_condition( stop_case_property='stop_sending').set_advanced_options()) self.handler.save() self.user = CommCareUser.create(self.domain, 'chw.bob', 'abc', phone_number='99912345')
def setUp(self): super(ReminderTestCase, self).setUp() self.domain = self.domain_obj.name self.case_type = "my_case_type" self.message = "Test reminder message." self.handler = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition(self.case_type, 'start_sending', MATCH_EXACT, 'ok') .set_case_criteria_start_date(start_offset=1) .set_last_submitting_user_recipient() .set_sms_content_type('en') .set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent( day_num=0, fire_time=time(0, 0), message={'en': self.message}, callback_timeout_intervals=[] ), ]) .set_stop_condition(stop_case_property='stop_sending') .set_advanced_options() ) self.handler.save() self.user = CommCareUser.create(self.domain, 'chw.bob', 'abc', phone_number='99912345')
def _create_reminder(self, domain, case_type): reminder = (CaseReminderHandler.create( domain, 'test').set_case_criteria_start_condition( case_type, 'status', MATCH_EXACT, 'green').set_case_criteria_start_date().set_case_recipient( ).set_sms_content_type('en').set_daily_schedule( fire_time=time(12, 0), message={ 'en': 'Hello {case.name}, your test result was normal.' }).set_stop_condition( max_iteration_count=REPEAT_SCHEDULE_INDEFINITELY). set_advanced_options()) reminder.save() return reminder
def setUp(self): super(ReminderIrregularScheduleTestCase, self).setUp() self.domain = self.domain_obj.name self.case_type = "my_case_type" self.message_1 = "Message 1" self.message_2 = "Message 2" self.message_3 = "Message 3" self.handler = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition(self.case_type, 'start_sending', MATCH_ANY_VALUE) .set_case_criteria_start_date(start_offset=1) .set_last_submitting_user_recipient() .set_sms_content_type('en') .set_schedule_manually( EVENT_AS_SCHEDULE, 7, [ CaseReminderEvent( day_num=0, fire_time=time(10, 0), message={"en": self.message_1}, callback_timeout_intervals=[] ), CaseReminderEvent( day_num=3, fire_time=time(11, 0), message={"en": self.message_2}, callback_timeout_intervals=[] ), CaseReminderEvent( day_num=3, fire_time=time(11, 30), message={"en": self.message_3}, callback_timeout_intervals=[] ), ]) .set_stop_condition(max_iteration_count=2, stop_case_property='stop_sending') .set_advanced_options() ) self.handler.save() self.user = CommCareUser.create(self.domain, 'chw.bob2', 'abc', phone_number='99912345')
def setUp(self): super(ReminderCallbackTestCase, self).setUp() self.domain = self.domain_obj.name self.case_type = "my_case_type" self.message_1 = "Callback Message 1" self.message_2 = "Callback Message 2" self.handler = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition(self.case_type, 'start_sending', MATCH_ANY_VALUE) .set_case_criteria_start_date() .set_last_submitting_user_recipient() .set_sms_callback_content_type('en') .set_schedule_manually( EVENT_AS_SCHEDULE, 1, [ CaseReminderEvent( day_num=0, fire_time=time(10, 0), message={'en': self.message_1}, callback_timeout_intervals=[] ), CaseReminderEvent( day_num=0, fire_time=time(11, 0), message={'en': self.message_2}, callback_timeout_intervals=[15, 30] ) ]) .set_stop_condition(max_iteration_count=3, stop_case_property='stop_sending') .set_advanced_options() ) self.handler.save() self.user = CommCareUser.create(self.domain, 'chw.bob3', 'abc', phone_number='14445551234') self.user.save_verified_number(self.domain, '14445551234', True) self.user.user_data['time_zone'] = 'Africa/Nairobi' self.user.save()
def setUp(self): super(ReminderIrregularScheduleTestCase, self).setUp() self.domain = self.domain_obj.name self.case_type = "my_case_type" self.message_1 = "Message 1" self.message_2 = "Message 2" self.message_3 = "Message 3" self.handler = ( CaseReminderHandler.create( self.domain, 'test').set_case_criteria_start_condition( self.case_type, 'start_sending', MATCH_ANY_VALUE).set_case_criteria_start_date( start_offset=1).set_last_submitting_user_recipient(). set_sms_content_type('en').set_schedule_manually( EVENT_AS_SCHEDULE, 7, [ CaseReminderEvent(day_num=0, fire_time=time(10, 0), message={"en": self.message_1}, callback_timeout_intervals=[]), CaseReminderEvent(day_num=3, fire_time=time(11, 0), message={"en": self.message_2}, callback_timeout_intervals=[]), CaseReminderEvent(day_num=3, fire_time=time(11, 30), message={"en": self.message_3}, callback_timeout_intervals=[]), ]).set_stop_condition( max_iteration_count=2, stop_case_property='stop_sending').set_advanced_options()) self.handler.save() self.user = CommCareUser.create(self.domain, 'chw.bob2', 'abc', phone_number='99912345')
def setUp(self): super(KooKooTestCase, self).setUp() self.ivr_backend = SQLKooKooBackend( backend_type=SQLKooKooBackend.IVR, name="MOBILE_BACKEND_KOOKOO", is_global=True, hq_api_id=SQLKooKooBackend.get_api_id()) self.ivr_backend.set_extra_fields(api_key="xyz") self.ivr_backend.save() self.user1 = self.create_mobile_worker("user1", "123", "91001", save_vn=False) self.user2 = self.create_mobile_worker("user2", "123", "91002", save_vn=False) self.create_group("group1", [self.user1, self.user2]) dirname = os.path.dirname(os.path.abspath(__file__)) self.load_app("app1.json", dirname) self.load_app("app2.json", dirname) self.reminder1 = ( CaseReminderHandler.create( self.domain, 'test1').set_case_criteria_start_condition( 'participant', 'name', MATCH_EXACT, 'case1').set_case_criteria_start_date().set_case_recipient( ).set_ivr_survey_content_type(). set_schedule_manually(EVENT_AS_SCHEDULE, 1, [ CaseReminderEvent( day_num=0, fire_time=time(12, 0), fire_time_type=FIRE_TIME_DEFAULT, callback_timeout_intervals=[30], form_unique_id=self.apps[0].modules[0].forms[0].unique_id, ), CaseReminderEvent( day_num=0, fire_time=time(13, 0), fire_time_type=FIRE_TIME_DEFAULT, callback_timeout_intervals=[30], form_unique_id=self.apps[0].modules[0].forms[1].unique_id, ), ]).set_stop_condition(max_iteration_count=7).set_advanced_options( submit_partial_forms=True, max_question_retries=5)) self.reminder1.save() self.reminder2 = (CaseReminderHandler.create( self.domain, 'test2').set_case_criteria_start_condition( 'participant', 'name', MATCH_EXACT, 'case2' ).set_case_criteria_start_date().set_case_owner_recipient( ).set_ivr_survey_content_type().set_daily_schedule( fire_time=time(12, 0), timeouts=[30, 30], form_unique_id=self.apps[1].modules[0].forms[0].unique_id ).set_stop_condition(max_iteration_count=7).set_advanced_options( submit_partial_forms=True, include_case_side_effects=True, max_question_retries=5)) self.reminder2.save()
def setUp(self): super(CaseTypeReminderTestCase, self).setUp() self.domain = self.domain_obj.name self.user = CommCareUser.create(self.domain, 'chw.bob4', 'abc', phone_number='99912345') self.handler1 = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition('case_type_a', 'start_sending1', MATCH_ANY_VALUE) .set_case_criteria_start_date(start_offset=1) .set_last_submitting_user_recipient() .set_sms_content_type('en') .set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent( day_num=0, fire_time=time(0, 0), message={'en': 'Message1'}, callback_timeout_intervals=[] ), ]) .set_stop_condition(stop_case_property='stop_sending1') .set_advanced_options() ) self.handler1.save() self.handler2 = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition('case_type_a', 'start_sending2', MATCH_ANY_VALUE) .set_case_criteria_start_date(start_offset=2) .set_last_submitting_user_recipient() .set_sms_content_type('en') .set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent( day_num=0, fire_time=time(0, 0), message={'en': 'Message2'}, callback_timeout_intervals=[] ), ]) .set_stop_condition(stop_case_property='stop_sending2') .set_advanced_options() ) self.handler2.save() self.handler3 = (CaseReminderHandler.create(self.domain, 'test') .set_case_criteria_start_condition('case_type_a', 'start_sending3', MATCH_ANY_VALUE) .set_case_criteria_start_date(start_offset=3) .set_last_submitting_user_recipient() .set_sms_content_type('en') .set_schedule_manually( EVENT_AS_OFFSET, 3, [ CaseReminderEvent( day_num=0, fire_time=time(0, 0), message={'en': 'Message3'}, callback_timeout_intervals=[] ), ]) .set_stop_condition(stop_case_property='stop_sending3') .set_advanced_options() ) self.handler3.save()