Fix name of reversion field in new Tag table and add a test
This commit is contained in:
parent
114e2c3bf2
commit
e8ed43b46f
4 changed files with 19 additions and 3 deletions
|
@ -1400,7 +1400,7 @@ class Tag(BaseModel):
|
||||||
lifetime_start_ms = BigIntegerField(default=get_epoch_timestamp_ms)
|
lifetime_start_ms = BigIntegerField(default=get_epoch_timestamp_ms)
|
||||||
lifetime_end_ms = BigIntegerField(null=True, index=True)
|
lifetime_end_ms = BigIntegerField(null=True, index=True)
|
||||||
hidden = BooleanField(default=False)
|
hidden = BooleanField(default=False)
|
||||||
reverted = BooleanField(default=False)
|
reversion = BooleanField(default=False)
|
||||||
tag_kind = EnumField(TagKind)
|
tag_kind = EnumField(TagKind)
|
||||||
linked_tag = ForeignKeyField('self', null=True, backref='tag_parents')
|
linked_tag = ForeignKeyField('self', null=True, backref='tag_parents')
|
||||||
|
|
||||||
|
|
|
@ -47,7 +47,7 @@ def upgrade(tables, tester):
|
||||||
sa.Column('lifetime_start_ms', sa.BigInteger(), nullable=False),
|
sa.Column('lifetime_start_ms', sa.BigInteger(), nullable=False),
|
||||||
sa.Column('lifetime_end_ms', sa.BigInteger(), nullable=True),
|
sa.Column('lifetime_end_ms', sa.BigInteger(), nullable=True),
|
||||||
sa.Column('hidden', sa.Boolean(), nullable=False, server_default=sa.sql.expression.false()),
|
sa.Column('hidden', sa.Boolean(), nullable=False, server_default=sa.sql.expression.false()),
|
||||||
sa.Column('reverted', sa.Boolean(), nullable=False, server_default=sa.sql.expression.false()),
|
sa.Column('reversion', sa.Boolean(), nullable=False, server_default=sa.sql.expression.false()),
|
||||||
sa.Column('tag_kind_id', sa.Integer(), nullable=False),
|
sa.Column('tag_kind_id', sa.Integer(), nullable=False),
|
||||||
sa.Column('linked_tag_id', sa.Integer(), nullable=True),
|
sa.Column('linked_tag_id', sa.Integer(), nullable=True),
|
||||||
sa.ForeignKeyConstraint(['linked_tag_id'], ['tag.id'], name=op.f('fk_tag_linked_tag_id_tag')),
|
sa.ForeignKeyConstraint(['linked_tag_id'], ['tag.id'], name=op.f('fk_tag_linked_tag_id_tag')),
|
||||||
|
|
|
@ -146,6 +146,7 @@ def assert_tags(repository, *args):
|
||||||
oci_tag = _get_oci_tag(tag)
|
oci_tag = _get_oci_tag(tag)
|
||||||
assert oci_tag.name == tag.name
|
assert oci_tag.name == tag.name
|
||||||
assert not oci_tag.hidden
|
assert not oci_tag.hidden
|
||||||
|
assert oci_tag.reversion == tag.reversion
|
||||||
|
|
||||||
if tag.lifetime_end_ts:
|
if tag.lifetime_end_ts:
|
||||||
assert oci_tag.lifetime_end_ms == (tag.lifetime_end_ts * 1000)
|
assert oci_tag.lifetime_end_ms == (tag.lifetime_end_ts * 1000)
|
||||||
|
@ -156,6 +157,21 @@ def assert_tags(repository, *args):
|
||||||
assert expected in tags_dict
|
assert expected in tags_dict
|
||||||
|
|
||||||
|
|
||||||
|
def test_create_reversion_tag(initialized_db):
|
||||||
|
repository = create_repository('devtable', 'somenewrepo', None)
|
||||||
|
manifest = Manifest.get()
|
||||||
|
image1 = find_create_or_link_image('foobarimage1', repository, None, {}, 'local_us')
|
||||||
|
|
||||||
|
footag = create_or_update_tag_for_repo(repository, 'foo', image1.docker_image_id,
|
||||||
|
oci_manifest=manifest, reversion=True)
|
||||||
|
assert footag.reversion
|
||||||
|
|
||||||
|
oci_tag = _get_oci_tag(footag)
|
||||||
|
assert oci_tag.name == footag.name
|
||||||
|
assert not oci_tag.hidden
|
||||||
|
assert oci_tag.reversion == footag.reversion
|
||||||
|
|
||||||
|
|
||||||
def test_list_active_tags(initialized_db):
|
def test_list_active_tags(initialized_db):
|
||||||
# Create a new repository.
|
# Create a new repository.
|
||||||
repository = create_repository('devtable', 'somenewrepo', None)
|
repository = create_repository('devtable', 'somenewrepo', None)
|
||||||
|
|
|
@ -571,7 +571,7 @@ def test_torrent_info(registry_model):
|
||||||
registry_model.set_torrent_info(layers[0].blob, 2, 'foo')
|
registry_model.set_torrent_info(layers[0].blob, 2, 'foo')
|
||||||
|
|
||||||
# Check the information we've set.
|
# Check the information we've set.
|
||||||
torrent_info = pre_oci_model.get_torrent_info(layers[0].blob)
|
torrent_info = registry_model.get_torrent_info(layers[0].blob)
|
||||||
assert torrent_info is not None
|
assert torrent_info is not None
|
||||||
assert torrent_info.piece_length == 2
|
assert torrent_info.piece_length == 2
|
||||||
assert torrent_info.pieces == 'foo'
|
assert torrent_info.pieces == 'foo'
|
||||||
|
|
Reference in a new issue