visit_statuses = ({'date': datetime.datetime(2021, 6, 28, 15, 24, 39, 371368, tzinfo=datetime.timezone.utc), 'origin': 'foo', 'snapshot...6, 29, 15, 24, 39, 371368, tzinfo=datetime.timezone.utc), 'origin': 'foo', 'snapshot': None, 'status': 'created', ...})
swh_scheduler = <swh.scheduler.backend.SchedulerBackend object at 0x7ff683e66208>
@pytest.mark.parametrize(
"visit_statuses", permutations(VISIT_STATUSES, len(VISIT_STATUSES))
)
def test_journal_client_origin_visit_status_permutation0(visit_statuses, swh_scheduler):
"""Ensure out of order topic subscription ends up in the same final state
"""
process_journal_objects(
{"origin_visit_status": visit_statuses}, scheduler=swh_scheduler
)
expected_visit_stats = OriginVisitStats(
url="foo",
visit_type="git",
last_eventful=DATE1 + ONE_DAY,
last_uneventful=DATE1 + 3 * ONE_DAY,
last_failed=None,
last_notfound=None,
last_snapshot=hash_to_bytes("d81cc0710eb6cf9efd5b920a8453e1e07157b6cd"),
next_visit_queue_position=None,
next_position_offset=5, # uneventful, visit origin less often in the future
)
> assert swh_scheduler.origin_visit_stats_get([("foo", "git")]) == [
expected_visit_stats
]
E AssertionError: assert [OriginVisitS...ion_offset=5)] == [OriginVisitS...ion_offset=5)]
E At index 0 diff: OriginVisitStats(url='foo', visit_type='git', last_eventful=datetime.datetime(2021, 6, 28, 15, 24, 39, 371368, tzinfo=datetime.timezone.utc), last_uneventful=datetime.datetime(2021, 6, 30, 15, 24, 39, 371368, tzinfo=datetime.timezone.utc), last_failed=None, last_notfound=None, last_scheduled=None, last_snapshot=b'\xd8\x1c\xc0q\x0e\xb6\xcf\x9e\xfd[\x92\n\x84S\xe1\xe0qW\xb6\xcd', next_visit_queue_position=datetime.datetime(2021, 7, 6, 1, 1, 36, 836239, tzinfo=datetime.timezone.utc), next_position_offset=5) != OriginVisitStats(url='foo', visit_type='git', ...
E
E ...Full output truncated (6 lines hidden), use '-vv' to show
.tox/py3/lib/python3.7/site-packages/swh/scheduler/tests/test_journal_client.py:459: AssertionError
TEST RESULT
TEST RESULT
- Run At
- Jun 29 2021, 5:25 PM