bugfix: version return body is inconsistent with the designed model
[releng.git] / utils / test / result_collection_api / resources / models.py
index 3c834fd..7241bb7 100644 (file)
@@ -36,10 +36,21 @@ class CreateResponse(object):
 @swagger.model()\r
 class Versions(object):\r
     """\r
+        @property versions:\r
         @ptype versions: C{list} of L{Version}\r
     """\r
-    def __init__(self, versions):\r
-        self.versions = versions\r
+    def __init__(self):\r
+        self.versions = list()\r
+\r
+    @staticmethod\r
+    def from_dict(res_dict):\r
+        if res_dict is None:\r
+            return None\r
+\r
+        res = Versions()\r
+        for version in res_dict.get('versions'):\r
+            res.versions.append(Version.from_dict(version))\r
+        return res\r
 \r
 \r
 @swagger.model()\r
@@ -47,3 +58,13 @@ class Version(object):
     def __init__(self, version=None, description=None):\r
         self.version = version\r
         self.description = description\r
+\r
+    @staticmethod\r
+    def from_dict(a_dict):\r
+        if a_dict is None:\r
+            return None\r
+\r
+        ver = Version()\r
+        ver.version = a_dict.get('version')\r
+        ver.description = str(a_dict.get('description'))\r
+        return ver\r