Changeset View
Changeset View
Standalone View
Standalone View
swh/model/tests/swh_model_data.py
# Copyright (C) 2019-2021 The Software Heritage developers | # Copyright (C) 2019-2021 The Software Heritage developers | ||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# License: GNU General Public License version 3, or any later version | # License: GNU General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
import datetime | import datetime | ||||
from typing import Dict, Sequence | from typing import Dict, Sequence | ||||
import attr | import attr | ||||
from swh.model.hashutil import MultiHash, hash_to_bytes, hash_to_hex | from swh.model.hashutil import MultiHash, hash_to_bytes, hash_to_hex | ||||
from swh.model.identifiers import SWHID | |||||
from swh.model.model import ( | from swh.model.model import ( | ||||
BaseModel, | BaseModel, | ||||
Content, | Content, | ||||
Directory, | Directory, | ||||
DirectoryEntry, | DirectoryEntry, | ||||
MetadataAuthority, | MetadataAuthority, | ||||
MetadataAuthorityType, | MetadataAuthorityType, | ||||
MetadataFetcher, | MetadataFetcher, | ||||
MetadataTargetType, | |||||
ObjectType, | ObjectType, | ||||
Origin, | Origin, | ||||
OriginVisit, | OriginVisit, | ||||
OriginVisitStatus, | OriginVisitStatus, | ||||
Person, | Person, | ||||
RawExtrinsicMetadata, | RawExtrinsicMetadata, | ||||
Release, | Release, | ||||
Revision, | Revision, | ||||
RevisionType, | RevisionType, | ||||
SkippedContent, | SkippedContent, | ||||
Snapshot, | Snapshot, | ||||
SnapshotBranch, | SnapshotBranch, | ||||
TargetType, | TargetType, | ||||
Timestamp, | Timestamp, | ||||
TimestampWithTimezone, | TimestampWithTimezone, | ||||
) | ) | ||||
from swh.model.swhid import SWHID, SWHIDObjectType | |||||
UTC = datetime.timezone.utc | UTC = datetime.timezone.utc | ||||
CONTENTS = [ | CONTENTS = [ | ||||
Content( | Content( | ||||
length=4, | length=4, | ||||
data=f"foo{i}".encode(), | data=f"foo{i}".encode(), | ||||
status="visible", | status="visible", | ||||
▲ Show 20 Lines • Show All 259 Lines • ▼ Show 20 Lines | |||||
] | ] | ||||
METADATA_FETCHERS = [ | METADATA_FETCHERS = [ | ||||
MetadataFetcher(name="test-fetcher", version="1.0.0", metadata={},) | MetadataFetcher(name="test-fetcher", version="1.0.0", metadata={},) | ||||
] | ] | ||||
RAW_EXTRINSIC_METADATA = [ | RAW_EXTRINSIC_METADATA = [ | ||||
RawExtrinsicMetadata( | RawExtrinsicMetadata( | ||||
type=MetadataTargetType.ORIGIN, | target=SWHID( | ||||
target="http://example.org/foo.git", | object_type=SWHIDObjectType.ORIGIN, object_id=b"http://example.org/foo.git" | ||||
), | |||||
discovery_date=datetime.datetime(2020, 7, 30, 17, 8, 20, tzinfo=UTC), | discovery_date=datetime.datetime(2020, 7, 30, 17, 8, 20, tzinfo=UTC), | ||||
authority=attr.evolve(METADATA_AUTHORITIES[0], metadata=None), | authority=attr.evolve(METADATA_AUTHORITIES[0], metadata=None), | ||||
fetcher=attr.evolve(METADATA_FETCHERS[0], metadata=None), | fetcher=attr.evolve(METADATA_FETCHERS[0], metadata=None), | ||||
format="json", | format="json", | ||||
metadata=b'{"foo": "bar"}', | metadata=b'{"foo": "bar"}', | ||||
), | ), | ||||
RawExtrinsicMetadata( | RawExtrinsicMetadata( | ||||
type=MetadataTargetType.CONTENT, | |||||
target=SWHID( | target=SWHID( | ||||
object_type="content", object_id=hash_to_hex(CONTENTS[0].sha1_git) | object_type=SWHIDObjectType.CONTENT, | ||||
object_id=hash_to_hex(CONTENTS[0].sha1_git), | |||||
), | ), | ||||
discovery_date=datetime.datetime(2020, 7, 30, 17, 8, 20, tzinfo=UTC), | discovery_date=datetime.datetime(2020, 7, 30, 17, 8, 20, tzinfo=UTC), | ||||
authority=attr.evolve(METADATA_AUTHORITIES[0], metadata=None), | authority=attr.evolve(METADATA_AUTHORITIES[0], metadata=None), | ||||
fetcher=attr.evolve(METADATA_FETCHERS[0], metadata=None), | fetcher=attr.evolve(METADATA_FETCHERS[0], metadata=None), | ||||
format="json", | format="json", | ||||
metadata=b'{"foo": "bar"}', | metadata=b'{"foo": "bar"}', | ||||
), | ), | ||||
] | ] | ||||
Show All 16 Lines |