• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

testit-tms / adapters-python / 22072083504

16 Feb 2026 05:23PM UTC coverage: 38.156% (-3.1%) from 41.236%
22072083504

Pull #234

github

web-flow
Merge a884e5000 into 44a4e9f3f
Pull Request #234: feat: TMS-37545: replace labels with tags when collecting autotest me…

20 of 86 new or added lines in 11 files covered. (23.26%)

11 existing lines in 1 file now uncovered.

1411 of 3698 relevant lines covered (38.16%)

0.76 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

63.9
/testit-python-commons/src/testit_python_commons/models/test_result.py
1
from typing import List
2✔
2

3
from testit_python_commons.models.link import Link
2✔
4
from testit_python_commons.models.step_result import StepResult
2✔
5
from testit_python_commons.services.logger import adapter_logger
2✔
6
from testit_python_commons.utils import HtmlEscapeUtils
2✔
7

8

9
class TestResult:
2✔
10
    __external_id: str = None
2✔
11
    __autotest_name: str = None
2✔
12
    __outcome: str = None
2✔
13
    __title: str = None
2✔
14
    __description: str = None
2✔
15
    __duration: int = None
2✔
16
    __started_on: str = None
2✔
17
    __completed_on: str = None
2✔
18
    __namespace: str = None
2✔
19
    __classname: str = None
2✔
20
    __message: str = None
2✔
21
    __traces: str = None
2✔
22
    __step_results: List[StepResult] = []
2✔
23
    __setup_results: List[StepResult] = []
2✔
24
    __teardown_results: List[StepResult] = []
2✔
25
    __links: List[Link] = []
2✔
26
    __result_links: List[Link] = []
2✔
27
    __attachments: List[str] = []
2✔
28
    __labels: List[str] = []
2✔
29
    __tags: List[str] = []
2✔
30
    __work_item_ids: List[str] = []
2✔
31
    __parameters: dict = {}
2✔
32
    __properties: dict = {}
2✔
33
    __automatic_creation_test_cases: bool = False
2✔
34
    __external_key: str = None
2✔
35

36
    @adapter_logger
2✔
37
    def set_external_id(self, external_id: str):
2✔
38
        # don't use escaping for externalId
39
        # self.__external_id = HtmlEscapeUtils.escape_html_tags(external_id)
40
        self.__external_id = external_id
×
41

42
        return self
×
43

44
    @adapter_logger
2✔
45
    def get_external_id(self) -> str:
2✔
46
        return self.__external_id
×
47

48
    @adapter_logger
2✔
49
    def set_autotest_name(self, autotest_name: str):
2✔
50
        self.__autotest_name = HtmlEscapeUtils.escape_html_tags(autotest_name)
×
51

52
        return self
×
53

54
    @adapter_logger
2✔
55
    def get_autotest_name(self) -> str:
2✔
56
        return self.__autotest_name
×
57

58
    @adapter_logger
2✔
59
    def set_outcome(self, outcome: str):
2✔
60
        self.__outcome = HtmlEscapeUtils.escape_html_tags(outcome)
×
61

62
        return self
×
63

64
    @adapter_logger
2✔
65
    def get_outcome(self) -> str:
2✔
66
        return self.__outcome
×
67

68
    @adapter_logger
2✔
69
    def set_title(self, title: str):
2✔
70
        self.__title = HtmlEscapeUtils.escape_html_tags(title)
×
71

72
        return self
×
73

74
    @adapter_logger
2✔
75
    def get_title(self) -> str:
2✔
76
        return self.__title
×
77

78
    @adapter_logger
2✔
79
    def set_description(self, description: str):
2✔
80
        self.__description = HtmlEscapeUtils.escape_html_tags(description)
×
81

82
        return self
×
83

84
    @adapter_logger
2✔
85
    def get_description(self) -> str:
2✔
86
        return self.__description
×
87

88
    @adapter_logger
2✔
89
    def set_duration(self, duration: int):
2✔
90
        self.__duration = duration
×
91

92
        return self
×
93

94
    @adapter_logger
2✔
95
    def get_duration(self) -> int:
2✔
96
        return self.__duration
×
97

98
    @adapter_logger
2✔
99
    def set_started_on(self, started_on: str):
2✔
100
        self.__started_on = started_on
×
101

102
        return self
×
103

104
    @adapter_logger
2✔
105
    def get_started_on(self) -> str:
2✔
106
        return self.__started_on
×
107

108
    @adapter_logger
2✔
109
    def set_completed_on(self, completed_on: str):
2✔
110
        self.__completed_on = completed_on
×
111

112
        return self
×
113

114
    @adapter_logger
2✔
115
    def get_completed_on(self) -> str:
2✔
116
        return self.__completed_on
×
117

118
    @adapter_logger
2✔
119
    def set_namespace(self, namespace: str):
2✔
120
        self.__namespace = HtmlEscapeUtils.escape_html_tags(namespace)
×
121

122
        return self
×
123

124
    @adapter_logger
2✔
125
    def get_namespace(self) -> str:
2✔
126
        return self.__namespace
×
127

128
    @adapter_logger
2✔
129
    def set_classname(self, classname: str):
2✔
130
        self.__classname = HtmlEscapeUtils.escape_html_tags(classname)
×
131

132
        return self
×
133

134
    @adapter_logger
2✔
135
    def get_classname(self) -> str:
2✔
136
        return self.__classname
×
137

138
    @adapter_logger
2✔
139
    def set_message(self, message: str):
2✔
140
        self.__message = HtmlEscapeUtils.escape_html_tags(message)
×
141

142
        return self
×
143

144
    @adapter_logger
2✔
145
    def get_message(self) -> str:
2✔
146
        return self.__message
×
147

148
    @adapter_logger
2✔
149
    def set_traces(self, traces: str):
2✔
150
        self.__traces = HtmlEscapeUtils.escape_html_tags(traces)
×
151

152
        return self
×
153

154
    @adapter_logger
2✔
155
    def get_traces(self) -> str:
2✔
156
        return self.__traces
×
157

158
    @adapter_logger
2✔
159
    def set_step_results(self, step_results: list):
2✔
160
        self.__step_results = step_results
×
161

162
        return self
×
163

164
    @adapter_logger
2✔
165
    def get_step_results(self) -> List[StepResult]:
2✔
166
        return self.__step_results
×
167

168
    @adapter_logger
2✔
169
    def set_setup_results(self, setup_results: list):
2✔
170
        self.__setup_results = setup_results
×
171

172
        return self
×
173

174
    @adapter_logger
2✔
175
    def get_setup_results(self) -> List[StepResult]:
2✔
176
        return self.__setup_results
×
177

178
    @adapter_logger
2✔
179
    def set_teardown_results(self, teardown_results: list):
2✔
180
        self.__teardown_results = teardown_results
×
181

182
        return self
×
183

184
    @adapter_logger
2✔
185
    def get_teardown_results(self) -> List[StepResult]:
2✔
186
        return self.__teardown_results
×
187

188
    @adapter_logger
2✔
189
    def set_links(self, links: list):
2✔
190
        self.__links = links
×
191

192
        return self
×
193

194
    @adapter_logger
2✔
195
    def get_links(self) -> list:
2✔
196
        return self.__links
×
197

198
    @adapter_logger
2✔
199
    def set_result_links(self, result_links: list):
2✔
200
        self.__result_links = result_links
×
201

202
        return self
×
203

204
    @adapter_logger
2✔
205
    def get_result_links(self) -> list:
2✔
206
        return self.__result_links
×
207

208
    @adapter_logger
2✔
209
    def set_attachments(self, attachments: list):
2✔
210
        self.__attachments = attachments
×
211

212
        return self
×
213

214
    @adapter_logger
2✔
215
    def get_attachments(self) -> list:
2✔
216
        return self.__attachments
×
217

218
    @adapter_logger
2✔
219
    def set_labels(self, labels: list):
2✔
220
        self.__labels = HtmlEscapeUtils.escape_html_in_object(labels)
×
221

222
    @adapter_logger
2✔
223
    def get_labels(self) -> list:
2✔
224
        return self.__labels
×
225

226
    @adapter_logger
2✔
227
    def set_tags(self, tags: list):
2✔
NEW
228
        self.__tags = HtmlEscapeUtils.escape_html_in_object(tags)
×
229

NEW
230
        return self
×
231

232
    @adapter_logger
2✔
233
    def get_tags(self) -> list:
2✔
NEW
234
        return self.__tags
×
235

236
    @adapter_logger
2✔
237
    def set_work_item_ids(self, work_item_ids: list):
2✔
238
        self.__work_item_ids = work_item_ids
×
239

240
        return self
×
241

242
    @adapter_logger
2✔
243
    def get_work_item_ids(self) -> list:
2✔
244
        return self.__work_item_ids
×
245

246
    @adapter_logger
2✔
247
    def set_parameters(self, parameters: dict):
2✔
248
        self.__parameters = HtmlEscapeUtils.escape_html_in_object(parameters)
×
249

250
        return self
×
251

252
    @adapter_logger
2✔
253
    def get_parameters(self) -> dict:
2✔
254
        return self.__parameters
×
255

256
    @adapter_logger
2✔
257
    def set_properties(self, properties: dict):
2✔
258
        self.__properties = HtmlEscapeUtils.escape_html_in_object(properties)
×
259

260
        return self
×
261

262
    @adapter_logger
2✔
263
    def get_properties(self) -> dict:
2✔
264
        return self.__properties
×
265

266
    @adapter_logger
2✔
267
    def set_automatic_creation_test_cases(self, automatic_creation_test_cases: bool):
2✔
268
        self.__automatic_creation_test_cases = automatic_creation_test_cases
×
269

270
        return self
×
271

272
    @adapter_logger
2✔
273
    def get_automatic_creation_test_cases(self) -> bool:
2✔
274
        return self.__automatic_creation_test_cases
×
275

276
    @adapter_logger
2✔
277
    def set_external_key(self, external_key: str):
2✔
278
        self.__external_key = external_key
×
279

280
        return self
×
281

282
    @adapter_logger
2✔
283
    def get_external_key(self) -> str:
2✔
284
        return self.__external_key
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc