def test_create_missing_items(): FlowItem.delete().where(FlowItem.name == FLOW_NAME).execute() worktime = pendulum.datetime(2020, 1, 6, tz="Europe/Moscow") interval_timedelta = dt.timedelta(1) items = FlowItem.create_missing_items( flow_name=FLOW_NAME, start_time=worktime - dt.timedelta(5), end_time=worktime - dt.timedelta(5), interval_timedelta=interval_timedelta, ) assert len(items) == 1 FlowItem.create(**{FlowItem.name.name: FLOW_NAME, FlowItem.worktime.name: worktime}) FlowItem.create_missing_items( flow_name=FLOW_NAME, start_time=worktime - dt.timedelta(5), end_time=worktime, interval_timedelta=interval_timedelta, ) assert ( FlowItem.select() .where(FlowItem.name == FLOW_NAME, FlowItem.status == FlowStatus.add) .count() ) == 6
def test_create_history_items(): FlowItem.delete().where(FlowItem.name == FLOW_NAME).execute() worktime = pendulum.datetime(2020, 1, 1, tz="Europe/Moscow") interval_timedelta = dt.timedelta(1) item = FlowItem.create_missing_items( flow_name=FLOW_NAME, start_time=worktime - dt.timedelta(5), end_time=worktime, interval_timedelta=interval_timedelta, ) assert len(item) == 6
def test_change_status(): FlowItem.delete().where(FlowItem.name == FLOW_NAME).execute() worktime = pendulum.datetime(2020, 1, 6, tz="Europe/Moscow") interval_timedelta = dt.timedelta(1) items = FlowItem.create_missing_items( flow_name=FLOW_NAME, start_time=worktime - dt.timedelta(5), end_time=worktime, interval_timedelta=interval_timedelta, ) FlowItem.change_status( FLOW_NAME, new_status=FlowStatus.success, from_time=worktime - dt.timedelta(5), to_time=worktime, ) assert FlowItem.count_items(FLOW_NAME, statuses=[FlowStatus.success]) == len(items)