1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
import json
import pytest
from fatcat.manifest_importer import FatcatManifestImporter
@pytest.fixture(scope="function")
def manifest_importer():
yield FatcatManifestImporter("http://localhost:9411/v0")
# TODO: use API to check that entities actually created...
#def test_manifest_importer_batch(manifest_importer):
# with open('tests/files/0000-0001-8254-7103.json', 'r') as f:
# manifest_importer.process_batch(f)
#def test_manifest_importer(manifest_importer):
# with open('tests/files/0000-0001-8254-7103.json', 'r') as f:
# manifest_importer.process_source(f)
def test_manifest_row_parse(manifest_importer):
# (sha1, mimetype, size_bytes, md5, doi, url, datetime) = row
c = manifest_importer.parse_manifest_row(
(None, None, None, None, None, None, None))
assert c == None
c = manifest_importer.parse_manifest_row(
("7d97e98f8af710c7e7fe703abc8f639e0ee507c4", "application/pdf", "12345", "8af710c7e7fe703abc8f639e0ee507c4", "10.1234/asdf", "https://example.com/thing.pdf", "200001010000"))
assert c.sha1 == "7d97e98f8af710c7e7fe703abc8f639e0ee507c4"
assert c.mimetype == "application/pdf"
assert c.urls[0].url == "https://example.com/thing.pdf"
assert c.urls[0].rel == "web"
assert c.urls[1].url == "https://web.archive.org/web/200001010000/https://example.com/thing.pdf"
assert c.urls[1].rel == "webarchive"
|