Changeset View
Changeset View
Standalone View
Standalone View
swh/graph/tests/test_api_client.py
Show First 20 Lines • Show All 132 Lines • ▼ Show 20 Lines | expected = [ | ||||
( | ( | ||||
"swh:1:rev:0000000000000000000000000000000000000003", | "swh:1:rev:0000000000000000000000000000000000000003", | ||||
"swh:1:dir:0000000000000000000000000000000000000002", | "swh:1:dir:0000000000000000000000000000000000000002", | ||||
), | ), | ||||
] | ] | ||||
assert set(actual) == set(expected) | assert set(actual) == set(expected) | ||||
def test_visit_edges_limited(graph_client): | @pytest.mark.parametrize("max_edges", [1, 2, 3, 4, 5]) | ||||
def test_visit_edges_limited(graph_client, max_edges): | |||||
actual = list( | actual = list( | ||||
graph_client.visit_edges( | graph_client.visit_edges( | ||||
"swh:1:rel:0000000000000000000000000000000000000010", | "swh:1:rel:0000000000000000000000000000000000000010", | ||||
max_edges=4, | max_edges=max_edges, | ||||
edges="rel:rev,rev:rev,rev:dir", | edges="rel:rev,rev:rev,rev:dir", | ||||
) | ) | ||||
) | ) | ||||
expected = [ | expected = [ | ||||
( | ( | ||||
"swh:1:rel:0000000000000000000000000000000000000010", | "swh:1:rel:0000000000000000000000000000000000000010", | ||||
"swh:1:rev:0000000000000000000000000000000000000009", | "swh:1:rev:0000000000000000000000000000000000000009", | ||||
), | ), | ||||
( | ( | ||||
"swh:1:rev:0000000000000000000000000000000000000009", | "swh:1:rev:0000000000000000000000000000000000000009", | ||||
"swh:1:rev:0000000000000000000000000000000000000003", | "swh:1:rev:0000000000000000000000000000000000000003", | ||||
), | ), | ||||
( | ( | ||||
"swh:1:rev:0000000000000000000000000000000000000009", | "swh:1:rev:0000000000000000000000000000000000000009", | ||||
"swh:1:dir:0000000000000000000000000000000000000008", | "swh:1:dir:0000000000000000000000000000000000000008", | ||||
), | ), | ||||
( | ( | ||||
"swh:1:rev:0000000000000000000000000000000000000003", | "swh:1:rev:0000000000000000000000000000000000000003", | ||||
"swh:1:dir:0000000000000000000000000000000000000002", | "swh:1:dir:0000000000000000000000000000000000000002", | ||||
), | ), | ||||
] | ] | ||||
# As there are four valid answers (up to reordering), we cannot check for | # As there are multiple valid answers for every value of max_edges (<= 3), | ||||
# equality. Instead, we check the client returned all edges but one. | # we cannot check for equality. | ||||
# Instead, we check the client returned all edges but one. | |||||
assert set(actual).issubset(set(expected)) | assert set(actual).issubset(set(expected)) | ||||
assert len(actual) == 3 | assert len(actual) == max_edges - 1 | ||||
def test_visit_edges_diamond_pattern(graph_client): | def test_visit_edges_diamond_pattern(graph_client): | ||||
actual = list( | actual = list( | ||||
graph_client.visit_edges( | graph_client.visit_edges( | ||||
"swh:1:rev:0000000000000000000000000000000000000009", edges="*", | "swh:1:rev:0000000000000000000000000000000000000009", edges="*", | ||||
) | ) | ||||
) | ) | ||||
▲ Show 20 Lines • Show All 192 Lines • Show Last 20 Lines |