Changeset View
Changeset View
Standalone View
Standalone View
swh/web/tests/browse/views/test_directory.py
Show All 15 Lines | from swh.web.tests.strategies import ( | ||||
directory, | directory, | ||||
directory_with_subdirs, | directory_with_subdirs, | ||||
invalid_sha1, | invalid_sha1, | ||||
unknown_directory, | unknown_directory, | ||||
) | ) | ||||
@given(directory()) | @given(directory()) | ||||
def test_root_directory_view_checks(client, archive_data, directory): | def test_root_directory_view(client, archive_data, directory): | ||||
_directory_view_checks(client, directory, archive_data.directory_ls(directory)) | _directory_view_checks(client, directory, archive_data.directory_ls(directory)) | ||||
@given(directory_with_subdirs()) | @given(directory_with_subdirs()) | ||||
def test_sub_directory_view_checks(client, archive_data, directory): | def test_sub_directory_view(client, archive_data, directory): | ||||
dir_content = archive_data.directory_ls(directory) | dir_content = archive_data.directory_ls(directory) | ||||
subdir = random.choice([e for e in dir_content if e["type"] == "dir"]) | subdir = random.choice([e for e in dir_content if e["type"] == "dir"]) | ||||
subdir_content = archive_data.directory_ls(subdir["target"]) | subdir_content = archive_data.directory_ls(subdir["target"]) | ||||
_directory_view_checks(client, directory, subdir_content, subdir["name"]) | _directory_view_checks(client, directory, subdir_content, subdir["name"]) | ||||
@given(invalid_sha1(), unknown_directory()) | @given(invalid_sha1(), unknown_directory()) | ||||
def test_directory_request_errors(client, invalid_sha1, unknown_directory): | def test_directory_request_errors(client, invalid_sha1, unknown_directory): | ||||
Show All 34 Lines | def test_permalink_box_context(client, tests_data, directory): | ||||
) | ) | ||||
resp = client.get(url) | resp = client.get(url) | ||||
assert resp.status_code == 200 | assert resp.status_code == 200 | ||||
assert_contains(resp, 'id="swh-id-context-option-directory"') | assert_contains(resp, 'id="swh-id-context-option-directory"') | ||||
def _directory_view_checks(client, root_directory_sha1, directory_entries, path=None): | def _directory_view_checks( | ||||
client, | |||||
root_directory_sha1, | |||||
directory_entries, | |||||
path=None, | |||||
origin_url=None, | |||||
snapshot_id=None, | |||||
): | |||||
dirs = [e for e in directory_entries if e["type"] in ("dir", "rev")] | dirs = [e for e in directory_entries if e["type"] in ("dir", "rev")] | ||||
files = [e for e in directory_entries if e["type"] == "file"] | files = [e for e in directory_entries if e["type"] == "file"] | ||||
url_args = {"sha1_git": root_directory_sha1} | url_args = {"sha1_git": root_directory_sha1} | ||||
query_params = {} | query_params = {"path": path, "origin_url": origin_url, "snapshot": snapshot_id} | ||||
if path: | |||||
query_params["path"] = path | |||||
url = reverse("browse-directory", url_args=url_args, query_params=query_params) | url = reverse("browse-directory", url_args=url_args, query_params=query_params) | ||||
root_dir_url = reverse( | root_dir_url = reverse( | ||||
"browse-directory", url_args={"sha1_git": root_directory_sha1} | "browse-directory", url_args={"sha1_git": root_directory_sha1} | ||||
) | ) | ||||
resp = client.get(url) | resp = client.get(url) | ||||
▲ Show 20 Lines • Show All 83 Lines • Show Last 20 Lines |