Add changes to Base AT structure
Fields 'status', 'visibility', 'updated_at' should be declared as mutable (because their values can be changed after activation). Name must contain at least 1 character and cannot be an empty string. Change-Id: Iafdce6f24fd20d0db61a6f022ff2534b4d01e306
This commit is contained in:
parent
405ae23beb
commit
b0c2a93aa5
|
@ -77,12 +77,13 @@ class BaseArtifact(base.VersionedObject):
|
|||
sortable=True, description="Artifact UUID."),
|
||||
'name': Field(fields.StringField, required_on_activate=False,
|
||||
nullable=False, sortable=True,
|
||||
validators=[validators.MinStrLen(1)],
|
||||
description="Artifact Name."),
|
||||
'owner': Field(fields.StringField, system=True,
|
||||
required_on_activate=False, nullable=False,
|
||||
sortable=True, description="ID of user/tenant who "
|
||||
"uploaded artifact."),
|
||||
'status': Field(glare_fields.ArtifactStatusField,
|
||||
'status': Field(glare_fields.ArtifactStatusField, mutable=True,
|
||||
default=glare_fields.ArtifactStatusField.DRAFTED,
|
||||
nullable=False, sortable=True,
|
||||
description="Artifact status."),
|
||||
|
@ -91,7 +92,7 @@ class BaseArtifact(base.VersionedObject):
|
|||
description="Datetime when artifact has "
|
||||
"been created."),
|
||||
'updated_at': Field(fields.DateTimeField, system=True,
|
||||
nullable=False, sortable=True,
|
||||
nullable=False, sortable=True, mutable=True,
|
||||
description="Datetime when artifact has "
|
||||
"been updated last time."),
|
||||
'activated_at': Field(fields.DateTimeField, system=True,
|
||||
|
@ -118,7 +119,7 @@ class BaseArtifact(base.VersionedObject):
|
|||
description="Key-value dict with useful "
|
||||
"information about an artifact."),
|
||||
'visibility': Field(fields.StringField, default='private',
|
||||
nullable=False, sortable=True,
|
||||
nullable=False, sortable=True, mutable=True,
|
||||
validators=[validators.AllowedValues(
|
||||
['private', 'public'])],
|
||||
description="Artifact visibility that defines "
|
||||
|
|
|
@ -150,12 +150,10 @@ class TestList(base.TestArtifact):
|
|||
self.get(url=url, status=400)
|
||||
|
||||
url = '/sample_artifact?name='
|
||||
result = self.get(url=url)['sample_artifact']
|
||||
self.assertEqual([], result)
|
||||
self.get(url=url, status=400)
|
||||
|
||||
url = '/sample_artifact?name=eq:'
|
||||
result = self.get(url=url)['sample_artifact']
|
||||
self.assertEqual([], result)
|
||||
self.get(url=url, status=400)
|
||||
|
||||
url = '/sample_artifact?tags=tag4,tag5'
|
||||
result = sort_results(self.get(url=url)['sample_artifact'])
|
||||
|
|
|
@ -75,6 +75,7 @@ fixture_base_props = {
|
|||
u'in'],
|
||||
u'glareType': u'String',
|
||||
u'maxLength': 255,
|
||||
u'minLength': 1,
|
||||
u'required_on_activate': False,
|
||||
u'sortable': True,
|
||||
u'type': u'string'},
|
||||
|
@ -98,6 +99,7 @@ fixture_base_props = {
|
|||
u'neq',
|
||||
u'in'],
|
||||
u'glareType': u'String',
|
||||
u'mutable': True,
|
||||
u'sortable': True,
|
||||
u'type': u'string'},
|
||||
u'tags': {u'default': [],
|
||||
|
@ -118,6 +120,7 @@ fixture_base_props = {
|
|||
u'filter_ops': [u'lt', u'gt'],
|
||||
u'format': u'date-time',
|
||||
u'glareType': u'DateTime',
|
||||
u'mutable': True,
|
||||
u'readOnly': True,
|
||||
u'sortable': True,
|
||||
u'type': u'string'},
|
||||
|
@ -144,6 +147,7 @@ fixture_base_props = {
|
|||
u'enum': [u'private', u'public'],
|
||||
u'filter_ops': [u'eq', u'neq', u'in'],
|
||||
u'glareType': u'String',
|
||||
u'mutable': True,
|
||||
u'sortable': True,
|
||||
u'type': u'string'}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue