Changeset View
Changeset View
Standalone View
Standalone View
swh/model/tests/test_model.py
Show First 20 Lines • Show All 257 Lines • ▼ Show 20 Lines | for key, value in MultiHash.from_data(data).digest().items(): | ||||
assert getattr(c, key) == value | assert getattr(c, key) == value | ||||
def test_directory_model_id_computation(): | def test_directory_model_id_computation(): | ||||
dir_dict = directory_example.copy() | dir_dict = directory_example.copy() | ||||
del dir_dict['id'] | del dir_dict['id'] | ||||
dir_id = hash_to_bytes(directory_identifier(dir_dict)) | dir_id = hash_to_bytes(directory_identifier(dir_dict)) | ||||
for dir_model in [Directory(**dir_dict), Directory.from_dict(dir_dict)]: | dir_model = Directory.from_dict(dir_dict) | ||||
assert dir_model.id == dir_id | assert dir_model.id == dir_id | ||||
def test_revision_model_id_computation(): | def test_revision_model_id_computation(): | ||||
rev_dict = revision_example.copy() | rev_dict = revision_example.copy() | ||||
del rev_dict['id'] | del rev_dict['id'] | ||||
rev_id = hash_to_bytes(revision_identifier(rev_dict)) | rev_id = hash_to_bytes(revision_identifier(rev_dict)) | ||||
for rev_model in [Revision(**rev_dict), Revision.from_dict(rev_dict)]: | rev_model = Revision.from_dict(rev_dict) | ||||
assert rev_model.id == rev_id | assert rev_model.id == rev_id | ||||
def test_revision_model_id_computation_with_no_date(): | def test_revision_model_id_computation_with_no_date(): | ||||
"""We can have revision with date to None | """We can have revision with date to None | ||||
""" | """ | ||||
rev_dict = revision_example.copy() | rev_dict = revision_example.copy() | ||||
rev_dict['date'] = None | rev_dict['date'] = None | ||||
rev_dict['committer_date'] = None | rev_dict['committer_date'] = None | ||||
del rev_dict['id'] | del rev_dict['id'] | ||||
rev_id = hash_to_bytes(revision_identifier(rev_dict)) | rev_id = hash_to_bytes(revision_identifier(rev_dict)) | ||||
for rev_model in [Revision(**rev_dict), Revision.from_dict(rev_dict)]: | rev_model = Revision.from_dict(rev_dict) | ||||
assert rev_model.date is None | assert rev_model.date is None | ||||
assert rev_model.committer_date is None | assert rev_model.committer_date is None | ||||
assert rev_model.id == rev_id | assert rev_model.id == rev_id | ||||
def test_release_model_id_computation(): | def test_release_model_id_computation(): | ||||
rel_dict = release_example.copy() | rel_dict = release_example.copy() | ||||
del rel_dict['id'] | del rel_dict['id'] | ||||
rel_id = hash_to_bytes(release_identifier(rel_dict)) | rel_id = hash_to_bytes(release_identifier(rel_dict)) | ||||
for rel_model in [Release(**rel_dict), Release.from_dict(rel_dict)]: | rel_model = Release.from_dict(rel_dict) | ||||
assert isinstance(rel_model.date, TimestampWithTimezone) | |||||
assert rel_model.id == hash_to_bytes(rel_id) | assert rel_model.id == hash_to_bytes(rel_id) | ||||
def test_snapshot_model_id_computation(): | def test_snapshot_model_id_computation(): | ||||
snp_dict = snapshot_example.copy() | snp_dict = snapshot_example.copy() | ||||
del snp_dict['id'] | del snp_dict['id'] | ||||
snp_id = hash_to_bytes(snapshot_identifier(snp_dict)) | snp_id = hash_to_bytes(snapshot_identifier(snp_dict)) | ||||
for snp_model in [Snapshot(**snp_dict), Snapshot.from_dict(snp_dict)]: | snp_model = Snapshot.from_dict(snp_dict) | ||||
assert snp_model.id == snp_id | assert snp_model.id == snp_id |