Beispiel #1
0
def test_lookup_hash_does_not_exist():
    unknown_content_ = random_content()

    actual_lookup = archive.lookup_hash("sha1_git:%s" %
                                        unknown_content_["sha1_git"])

    assert actual_lookup == {"found": None, "algo": "sha1_git"}
Beispiel #2
0
def test_lookup_directory_with_revision_unknown_content(
        archive_data, new_revision):
    unknown_content_ = random_content()

    dir_path = "README.md"

    # A directory that points to unknown content
    dir = Directory(entries=(DirectoryEntry(
        name=bytes(dir_path.encode("utf-8")),
        type="file",
        target=hash_to_bytes(unknown_content_["sha1_git"]),
        perms=DentryPerms.content,
    ), ))

    # Create a revision that points to a directory
    # Which points to unknown content
    new_revision = new_revision.to_dict()
    new_revision["directory"] = dir.id
    del new_revision["id"]
    new_revision = Revision.from_dict(new_revision)

    # Add the directory and revision in mem
    archive_data.directory_add([dir])
    archive_data.revision_add([new_revision])
    new_revision_id = hash_to_hex(new_revision.id)
    with pytest.raises(NotFoundExc) as e:
        archive.lookup_directory_with_revision(new_revision_id, dir_path)
    assert e.match("Content not found for revision %s" % new_revision_id)
Beispiel #3
0
def test_lookup_content_ctags_no_hash():
    unknown_content_ = random_content()

    actual_ctags = list(
        archive.lookup_content_ctags("sha1:%s" % unknown_content_["sha1"]))

    assert actual_ctags == []
Beispiel #4
0
def test_search_hash_does_not_exist():
    unknown_content_ = random_content()

    actual_lookup = archive.search_hash("sha1_git:%s" %
                                        unknown_content_["sha1_git"])

    assert {"found": False} == actual_lookup
Beispiel #5
0
def test_lookup_content_not_found():
    unknown_content_ = random_content()

    with pytest.raises(NotFoundExc) as e:
        archive.lookup_content("sha1:%s" % unknown_content_["sha1"])

    assert e.match("Content with %s checksum equals to %s not found!" %
                   ("sha1", unknown_content_["sha1"]))
Beispiel #6
0
def test_api_content_language_sha_not_found(api_client):
    unknown_content_ = random_content()

    url = reverse("api-1-content-language",
                  url_args={"q": "sha1:%s" % unknown_content_["sha1"]})
    rv = check_api_get_responses(api_client, url, status_code=404)
    assert rv.data == {
        "exception":
        "NotFoundExc",
        "reason":
        "No language information found for content "
        "sha1:%s." % unknown_content_["sha1"],
    }
Beispiel #7
0
def test_api_content_raw_ko_not_found(api_client):
    unknown_content_ = random_content()

    url = reverse("api-1-content-raw",
                  url_args={"q": "sha1:%s" % unknown_content_["sha1"]})
    rv = check_api_get_responses(api_client, url, status_code=404)
    assert rv.data == {
        "exception":
        "NotFoundExc",
        "reason":
        "Content with sha1 checksum equals to %s not found!" %
        unknown_content_["sha1"],
    }
Beispiel #8
0
def test_api_check_content_known_not_found(api_client):
    unknown_content_ = random_content()

    url = reverse("api-1-content-known",
                  url_args={"q": unknown_content_["sha1"]})
    rv = check_api_get_responses(api_client, url, status_code=200)
    assert rv.data == {
        "search_res": [{
            "found": False,
            "sha1": unknown_content_["sha1"]
        }],
        "search_stats": {
            "nbfiles": 1,
            "pct": 0.0
        },
    }