Changeset View
Changeset View
Standalone View
Standalone View
swh/storage/tests/test_storage.py
Show First 20 Lines • Show All 3,797 Lines • ▼ Show 20 Lines | def test_origin_list(self, swh_storage, swh_origins, limit): | ||||
assert i * limit >= len(swh_origins) | assert i * limit >= len(swh_origins) | ||||
break | break | ||||
else: | else: | ||||
assert len(result["origins"]) == limit | assert len(result["origins"]) == limit | ||||
expected_origins = [origin.url for origin in swh_origins] | expected_origins = [origin.url for origin in swh_origins] | ||||
assert sorted(returned_origins) == sorted(expected_origins) | assert sorted(returned_origins) == sorted(expected_origins) | ||||
ORIGINS = [ | def test_origin_count(self, swh_storage, sample_data_model): | ||||
Origin(url="https://github.com/user1/repo1"), | swh_storage.origin_add(sample_data_model["origin"]) | ||||
Origin(url="https://github.com/user2/repo1"), | |||||
Origin(url="https://github.com/user3/repo1"), | |||||
Origin(url="https://gitlab.com/user1/repo1"), | |||||
Origin(url="https://gitlab.com/user2/repo1"), | |||||
Origin(url="https://forge.softwareheritage.org/source/repo1"), | |||||
] | |||||
def test_origin_count(self, swh_storage): | |||||
swh_storage.origin_add(self.ORIGINS) | |||||
assert swh_storage.origin_count("github") == 3 | assert swh_storage.origin_count("github") == 3 | ||||
assert swh_storage.origin_count("gitlab") == 2 | assert swh_storage.origin_count("gitlab") == 2 | ||||
assert swh_storage.origin_count(".*user.*", regexp=True) == 5 | assert swh_storage.origin_count(".*user.*", regexp=True) == 5 | ||||
assert swh_storage.origin_count(".*user.*", regexp=False) == 0 | assert swh_storage.origin_count(".*user.*", regexp=False) == 0 | ||||
assert swh_storage.origin_count(".*user1.*", regexp=True) == 2 | assert swh_storage.origin_count(".*user1.*", regexp=True) == 2 | ||||
assert swh_storage.origin_count(".*user1.*", regexp=False) == 0 | assert swh_storage.origin_count(".*user1.*", regexp=False) == 0 | ||||
def test_origin_count_with_visit_no_visits(self, swh_storage): | def test_origin_count_with_visit_no_visits(self, swh_storage, sample_data_model): | ||||
swh_storage.origin_add(self.ORIGINS) | swh_storage.origin_add(sample_data_model["origin"]) | ||||
# none of them have visits, so with_visit=True => 0 | # none of them have visits, so with_visit=True => 0 | ||||
assert swh_storage.origin_count("github", with_visit=True) == 0 | assert swh_storage.origin_count("github", with_visit=True) == 0 | ||||
assert swh_storage.origin_count("gitlab", with_visit=True) == 0 | assert swh_storage.origin_count("gitlab", with_visit=True) == 0 | ||||
assert swh_storage.origin_count(".*user.*", regexp=True, with_visit=True) == 0 | assert swh_storage.origin_count(".*user.*", regexp=True, with_visit=True) == 0 | ||||
assert swh_storage.origin_count(".*user.*", regexp=False, with_visit=True) == 0 | assert swh_storage.origin_count(".*user.*", regexp=False, with_visit=True) == 0 | ||||
assert swh_storage.origin_count(".*user1.*", regexp=True, with_visit=True) == 0 | assert swh_storage.origin_count(".*user1.*", regexp=True, with_visit=True) == 0 | ||||
assert swh_storage.origin_count(".*user1.*", regexp=False, with_visit=True) == 0 | assert swh_storage.origin_count(".*user1.*", regexp=False, with_visit=True) == 0 | ||||
def test_origin_count_with_visit_with_visits_no_snapshot(self, swh_storage): | def test_origin_count_with_visit_with_visits_no_snapshot( | ||||
swh_storage.origin_add(self.ORIGINS) | self, swh_storage, sample_data_model | ||||
): | |||||
swh_storage.origin_add(sample_data_model["origin"]) | |||||
origin_url = "https://github.com/user1/repo1" | origin_url = "https://github.com/user1/repo1" | ||||
visit = OriginVisit(origin=origin_url, date=now(), type="git",) | visit = OriginVisit(origin=origin_url, date=now(), type="git",) | ||||
swh_storage.origin_visit_add([visit]) | swh_storage.origin_visit_add([visit]) | ||||
assert swh_storage.origin_count("github", with_visit=False) == 3 | assert swh_storage.origin_count("github", with_visit=False) == 3 | ||||
# it has a visit, but no snapshot, so with_visit=True => 0 | # it has a visit, but no snapshot, so with_visit=True => 0 | ||||
assert swh_storage.origin_count("github", with_visit=True) == 0 | assert swh_storage.origin_count("github", with_visit=True) == 0 | ||||
Show All 10 Lines | ): | ||||
swh_storage.origin_count("github.*user1", regexp=True, with_visit=True) == 0 | swh_storage.origin_count("github.*user1", regexp=True, with_visit=True) == 0 | ||||
) | ) | ||||
assert swh_storage.origin_count("github", regexp=True, with_visit=True) == 0 | assert swh_storage.origin_count("github", regexp=True, with_visit=True) == 0 | ||||
def test_origin_count_with_visit_with_visits_and_snapshot( | def test_origin_count_with_visit_with_visits_and_snapshot( | ||||
self, swh_storage, sample_data_model | self, swh_storage, sample_data_model | ||||
): | ): | ||||
snapshot = sample_data_model["snapshot"][0] | snapshot = sample_data_model["snapshot"][0] | ||||
swh_storage.origin_add(self.ORIGINS) | swh_storage.origin_add(sample_data_model["origin"]) | ||||
swh_storage.snapshot_add([snapshot]) | swh_storage.snapshot_add([snapshot]) | ||||
origin_url = "https://github.com/user1/repo1" | origin_url = "https://github.com/user1/repo1" | ||||
visit = OriginVisit(origin=origin_url, date=now(), type="git",) | visit = OriginVisit(origin=origin_url, date=now(), type="git",) | ||||
visit = swh_storage.origin_visit_add([visit])[0] | visit = swh_storage.origin_visit_add([visit])[0] | ||||
swh_storage.origin_visit_status_add( | swh_storage.origin_visit_status_add( | ||||
[ | [ | ||||
OriginVisitStatus( | OriginVisitStatus( | ||||
▲ Show 20 Lines • Show All 269 Lines • Show Last 20 Lines |