def test_create_nightly_notification_status_for_day_respects_bst( sample_template): create_notification(sample_template, status='delivered', created_at=datetime(2019, 4, 1, 23, 0)) # too new create_notification(sample_template, status='created', created_at=datetime(2019, 4, 1, 22, 59)) create_notification(sample_template, status='created', created_at=datetime(2019, 3, 31, 23, 0)) create_notification(sample_template, status='delivered', created_at=datetime(2019, 3, 31, 22, 59)) # too old create_nightly_notification_status_for_day('2019-04-01', 'sms') noti_status = FactNotificationStatus.query.order_by( FactNotificationStatus.bst_date).all() assert len(noti_status) == 1 assert noti_status[0].bst_date == date(2019, 4, 1) assert noti_status[0].notification_status == 'created'
def test_create_nightly_notification_status_for_day_respects_local_timezone( sample_template, ): create_notification(sample_template, status="delivered", created_at=datetime(2019, 4, 2, 5, 0)) # too new create_notification(sample_template, status="created", created_at=datetime(2019, 4, 2, 6, 59)) create_notification(sample_template, status="created", created_at=datetime(2019, 4, 1, 5, 59)) create_notification(sample_template, status="delivered", created_at=datetime(2019, 3, 30, 3, 59)) # too old create_nightly_notification_status_for_day("2019-04-01") noti_status = FactNotificationStatus.query.order_by( FactNotificationStatus.bst_date).all() print(noti_status) assert len(noti_status) == 1 assert noti_status[0].bst_date == date(2019, 4, 1) assert noti_status[0].notification_status == "created"
def test_create_nightly_notification_status_for_day(notify_db_session): first_service = create_service(service_name='First Service') first_template = create_template(service=first_service) second_service = create_service(service_name='second Service') second_template = create_template(service=second_service, template_type='email') third_service = create_service(service_name='third Service') third_template = create_template(service=third_service, template_type='letter') create_notification(template=first_template, status='delivered') create_notification(template=first_template, status='delivered', created_at=datetime(2019, 1, 1, 12, 0)) create_notification(template=second_template, status='temporary-failure') create_notification(template=second_template, status='temporary-failure', created_at=datetime(2019, 1, 1, 12, 0)) create_notification(template=third_template, status='created') create_notification(template=third_template, status='created', created_at=datetime(2019, 1, 1, 12, 0)) assert len(FactNotificationStatus.query.all()) == 0 create_nightly_notification_status_for_day('2019-01-01') new_data = FactNotificationStatus.query.all() assert len(new_data) == 3 assert new_data[0].bst_date == date(2019, 1, 1) assert new_data[1].bst_date == date(2019, 1, 1) assert new_data[2].bst_date == date(2019, 1, 1)
def test_create_nightly_notification_status_for_day(notify_db_session): first_service = create_service(service_name="First Service") first_template = create_template(service=first_service) second_service = create_service(service_name="second Service") second_template = create_template(service=second_service, template_type="email") third_service = create_service(service_name="third Service") third_template = create_template(service=third_service, template_type="letter") create_notification(template=first_template, status="delivered") create_notification( template=first_template, status="delivered", created_at=datetime(2019, 1, 1, 12, 0), ) create_notification(template=second_template, status="temporary-failure") create_notification( template=second_template, status="temporary-failure", created_at=datetime(2019, 1, 1, 12, 0), ) create_notification(template=third_template, status="created") create_notification( template=third_template, status="created", created_at=datetime(2019, 1, 1, 12, 0), ) assert len(FactNotificationStatus.query.all()) == 0 create_nightly_notification_status_for_day("2019-01-01") new_data = FactNotificationStatus.query.all() assert len(new_data) == 3 assert new_data[0].bst_date == date(2019, 1, 1) assert new_data[1].bst_date == date(2019, 1, 1) assert new_data[2].bst_date == date(2019, 1, 1)