diff options
author | julien zhang <zhang.jun3g@zte.com.cn> | 2016-07-04 10:16:29 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@172.30.200.206> | 2016-07-04 10:16:29 +0000 |
commit | abb85f971f797e7db6c1737862b53ab4fee2a12e (patch) | |
tree | e9808e0b4274bb1b82237477f240780bcd754f0c /tosca2heat | |
parent | f532963362db840edbce7f647c851562b15e125f (diff) | |
parent | b41406e9eead948744645720db0c49c3998488cd (diff) |
Merge "The grouptype's parent_type definition is error"
Diffstat (limited to 'tosca2heat')
-rw-r--r-- | tosca2heat/tosca-parser/toscaparser/elements/grouptype.py | 11 | ||||
-rw-r--r-- | tosca2heat/tosca-parser/toscaparser/tests/test_toscadef.py | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/tosca2heat/tosca-parser/toscaparser/elements/grouptype.py b/tosca2heat/tosca-parser/toscaparser/elements/grouptype.py index ec5571c..5587f05 100644 --- a/tosca2heat/tosca-parser/toscaparser/elements/grouptype.py +++ b/tosca2heat/tosca-parser/toscaparser/elements/grouptype.py @@ -52,6 +52,17 @@ class GroupType(StatefulEntityType): self._validate_metadata(self.meta_data) @property + def parent_type(self): + '''Return a group statefulentity of this entity is derived from.''' + if not hasattr(self, 'defs'): + return None + pgroup_entity = self.derived_from(self.defs) + if pgroup_entity: + return GroupType(pgroup_entity, self.custom_def) + else: + return None + + @property def description(self): return self.group_description diff --git a/tosca2heat/tosca-parser/toscaparser/tests/test_toscadef.py b/tosca2heat/tosca-parser/toscaparser/tests/test_toscadef.py index 7c29e67..358bf28 100644 --- a/tosca2heat/tosca-parser/toscaparser/tests/test_toscadef.py +++ b/tosca2heat/tosca-parser/toscaparser/tests/test_toscadef.py @@ -60,6 +60,7 @@ class ToscaDefTest(TestCase): def test_group(self): self.assertEqual(group_type.type, "tosca.groups.Root") + self.assertEqual(group_type.parent_type, None) self.assertIn(ifaces.LIFECYCLE_SHORTNAME, group_type.interfaces) def test_capabilities(self): |