implement get/query scenario(s) and add unittest
[releng.git] / utils / test / testapi / opnfv_testapi / resources / scenario_models.py
1 import models
2 from opnfv_testapi.tornado_swagger import swagger
3
4
5 @swagger.model()
6 class ScenarioTI(models.ModelBase):
7     def __init__(self, date=None, status='silver'):
8         self.date = date
9         self.status = status
10
11
12 @swagger.model()
13 class ScenarioScore(models.ModelBase):
14     def __init__(self, date=None, score='0'):
15         self.date = date
16         self.score = score
17
18
19 @swagger.model()
20 class ScenarioProject(models.ModelBase):
21     """
22         @property customs:
23         @ptype customs: C{list} of L{string}
24         @property scores:
25         @ptype scores: C{list} of L{ScenarioScore}
26         @property trust_indicators:
27         @ptype trust_indicators: C{list} of L{ScenarioTI}
28     """
29     def __init__(self,
30                  project='',
31                  customs=None,
32                  scores=None,
33                  trust_indicators=None):
34         self.project = project
35         self.customs = customs
36         self.scores = scores
37         self.trust_indicators = trust_indicators
38
39     @staticmethod
40     def attr_parser():
41         return {'scores': ScenarioScore,
42                 'trust_indicators': ScenarioTI}
43
44
45 @swagger.model()
46 class ScenarioVersion(models.ModelBase):
47     """
48         @property projects:
49         @ptype projects: C{list} of L{ScenarioProject}
50     """
51     def __init__(self, version=None, projects=None):
52         self.version = version
53         self.projects = projects
54
55     @staticmethod
56     def attr_parser():
57         return {'projects': ScenarioProject}
58
59
60 @swagger.model()
61 class ScenarioInstaller(models.ModelBase):
62     """
63         @property versions:
64         @ptype versions: C{list} of L{ScenarioVersion}
65     """
66     def __init__(self, installer=None, versions=None):
67         self.installer = installer
68         self.versions = versions if versions else list()
69
70     @staticmethod
71     def attr_parser():
72         return {'versions': ScenarioVersion}
73
74
75 @swagger.model()
76 class ScenarioCreateRequest(models.ModelBase):
77     """
78         @property installers:
79         @ptype installers: C{list} of L{ScenarioInstaller}
80     """
81     def __init__(self, name='', installers=None):
82         self.name = name
83         self.installers = installers if installers else list()
84
85     @staticmethod
86     def attr_parser():
87         return {'installers': ScenarioInstaller}
88
89
90 @swagger.model()
91 class Scenario(models.ModelBase):
92     """
93         @property installers:
94         @ptype installers: C{list} of L{ScenarioInstaller}
95     """
96     def __init__(self, name='', create_date='', _id='', installers=None):
97         self.name = name
98         self._id = _id
99         self.creation_date = create_date
100         self.installers = installers if installers else list()
101
102     @staticmethod
103     def attr_parser():
104         return {'installers': ScenarioInstaller}
105
106
107 @swagger.model()
108 class Scenarios(models.ModelBase):
109     """
110         @property scenarios:
111         @ptype scenarios: C{list} of L{Scenario}
112     """
113     def __init__(self):
114         self.scenarios = list()
115
116     @staticmethod
117     def attr_parser():
118         return {'scenarios': Scenario}