Skip to content

Commit bd28bab

Browse files
committed
自动化测试
1 parent 3fb9198 commit bd28bab

File tree

4 files changed

+126
-0
lines changed

4 files changed

+126
-0
lines changed

templates/api.mustache

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{{!不实用API}}

templates/config.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
templateDir: ./templates

templates/enum.mustache

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
from enum import Enum, unique
2+
@unique
3+
class {{classname}}(Enum):
4+
"""{{#description}}{{description}}{{/description}}{{^description}}{{classname}}枚举类{{/description}}"""
5+
6+
{{#allowableValues}}
7+
{{#enumVars}}
8+
{{name}} = "{{name}}"
9+
{{/enumVars}}
10+
{{/allowableValues}}
11+
12+
def to_ams_dict(self) -> str:
13+
return self.name
14+
15+
@staticmethod
16+
def value_of(value):
17+
if not value:
18+
return None
19+
20+
{{#allowableValues}}
21+
{{#enumVars}}
22+
if {{classname}}.{{name}}.value == value:
23+
return {{classname}}.{{name}}
24+
{{/enumVars}}
25+
{{/allowableValues}}
26+
return None

templates/model.mustache

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
{{#models}}
2+
{{#model}}
3+
{{#isEnum}}
4+
{{>enum}}
5+
{{/isEnum}}
6+
{{^isEnum}}
7+
import json
8+
{{#vars}}
9+
{{#lambdas.PyImport}}{{name}} {{dataType}}
10+
{{/lambdas.PyImport}}
11+
{{/vars}}
12+
13+
14+
15+
{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 1
16+
{{/lambdas.PyParent}}
17+
18+
class {{classname}}{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 2{{/lambdas.PyParent}}:
19+
def __init__(self{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 6{{/lambdas.PyParent}}):
20+
{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 3 {{/lambdas.PyParent}}
21+
{{#vars}}
22+
self.__{{name}} = {{#lambdas.PyParent}}{{classname}} {{serverUrl}} 8 {{name}}{{/lambdas.PyParent}} # type: {{dataType}}
23+
{{/vars}}
24+
{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 7 {{/lambdas.PyParent}}
25+
26+
{{#vars}}
27+
@property
28+
def {{name}}(self):
29+
"""{{^description}}Gets the {{name}} of this {{classname}}.{{/description}}
30+
{{description}}
31+
"""
32+
return self.__{{name}}
33+
34+
@{{name}}.setter
35+
def {{name}}(self, value):
36+
self.__{{name}} = value
37+
{{/vars}}
38+
39+
40+
{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 4
41+
{{/lambdas.PyParent}}
42+
43+
44+
def to_ams_dict(self):
45+
params = dict()
46+
{{#vars}}
47+
if hasattr(self, "{{name}}") and self.{{name}} is not None:
48+
params['{{baseName}}'] = self.{{name}}
49+
{{/vars}}
50+
return params
51+
52+
53+
def parse_rsp_body(self, response_body):
54+
{{#lambdas.PyParent}}{{classname}} {{serverUrl}} 5
55+
{{/lambdas.PyParent}}
56+
{{#vars}}
57+
if '{{baseName}}' in response_body:
58+
{{#isPrimitiveType}}
59+
self.__{{name}} = response_body['{{baseName}}']
60+
{{/isPrimitiveType}}
61+
{{^isPrimitiveType}}
62+
{{#isModel}}
63+
self.__{{name}} = {{complexType}}()
64+
self.__{{name}}.parse_rsp_body(response_body['{{baseName}}'])
65+
{{/isModel}}
66+
{{#isArray}}
67+
self.__{{name}} = []
68+
for item in response_body['{{baseName}}']:
69+
{{#items.isModel}}
70+
obj = {{items.complexType}}()
71+
obj.parse_rsp_body(item)
72+
self.__{{name}}.append(obj)
73+
{{/items.isModel}}
74+
{{^items.isModel}}
75+
self.__{{name}}.append(item)
76+
{{/items.isModel}}
77+
{{/isArray}}
78+
{{#isMap}}
79+
self.__{{name}} = {}
80+
for key, value in response_body['{{baseName}}'].items():
81+
{{#items.isModel}}
82+
obj = {{items.complexType}}()
83+
obj.parse_rsp_body(value)
84+
self.__{{name}}[key] = obj
85+
{{/items.isModel}}
86+
{{^items.isModel}}
87+
self.__{{name}}[key] = value
88+
{{/items.isModel}}
89+
{{/isMap}}
90+
{{#allowableValues}}
91+
{{name}}_temp = {{dataType}}.value_of(response_body['{{baseName}}'])
92+
self.__{{name}} = {{name}}_temp
93+
{{/allowableValues}}
94+
{{/isPrimitiveType}}
95+
{{/vars}}
96+
{{/isEnum}}
97+
{{/model}}
98+
{{/models}}

0 commit comments

Comments
 (0)