@testcollab/sdk 3.10.0 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/.openapi-generator/FILES +46 -0
  2. package/dist/apis/ProjectsApi.d.ts +5 -5
  3. package/dist/apis/ProjectsApi.js +1 -1
  4. package/dist/apis/ReleasesApi.d.ts +280 -0
  5. package/dist/apis/ReleasesApi.js +379 -0
  6. package/dist/apis/index.d.ts +1 -0
  7. package/dist/apis/index.js +1 -0
  8. package/dist/esm/apis/ProjectsApi.d.ts +5 -5
  9. package/dist/esm/apis/ProjectsApi.js +2 -2
  10. package/dist/esm/apis/ReleasesApi.d.ts +280 -0
  11. package/dist/esm/apis/ReleasesApi.js +375 -0
  12. package/dist/esm/apis/index.d.ts +1 -0
  13. package/dist/esm/apis/index.js +1 -0
  14. package/dist/esm/models/Activity.d.ts +9 -0
  15. package/dist/esm/models/Activity.js +6 -1
  16. package/dist/esm/models/ActivityAuditInfo.d.ts +44 -0
  17. package/dist/esm/models/ActivityAuditInfo.js +45 -0
  18. package/dist/esm/models/ProjectListItem.d.ts +93 -0
  19. package/dist/esm/models/ProjectListItem.js +72 -0
  20. package/dist/esm/models/Release.d.ts +131 -0
  21. package/dist/esm/models/Release.js +95 -0
  22. package/dist/esm/models/ReleaseGoNoGoThreshold.d.ts +45 -0
  23. package/dist/esm/models/ReleaseGoNoGoThreshold.js +45 -0
  24. package/dist/esm/models/ReleaseMinified.d.ts +67 -0
  25. package/dist/esm/models/ReleaseMinified.js +65 -0
  26. package/dist/esm/models/ReleasePayload.d.ts +98 -0
  27. package/dist/esm/models/ReleasePayload.js +75 -0
  28. package/dist/esm/models/ReleaseReadiness.d.ts +106 -0
  29. package/dist/esm/models/ReleaseReadiness.js +79 -0
  30. package/dist/esm/models/ReleaseReadinessComparison.d.ts +52 -0
  31. package/dist/esm/models/ReleaseReadinessComparison.js +47 -0
  32. package/dist/esm/models/ReleaseReadinessConfigurationCoverage.d.ts +84 -0
  33. package/dist/esm/models/ReleaseReadinessConfigurationCoverage.js +71 -0
  34. package/dist/esm/models/ReleaseReadinessCoverageItem.d.ts +75 -0
  35. package/dist/esm/models/ReleaseReadinessCoverageItem.js +65 -0
  36. package/dist/esm/models/ReleaseReadinessCustomFieldCoverage.d.ts +77 -0
  37. package/dist/esm/models/ReleaseReadinessCustomFieldCoverage.js +75 -0
  38. package/dist/esm/models/ReleaseReadinessCustomFieldGroup.d.ts +75 -0
  39. package/dist/esm/models/ReleaseReadinessCustomFieldGroup.js +69 -0
  40. package/dist/esm/models/ReleaseReadinessDefectSeverity.d.ts +38 -0
  41. package/dist/esm/models/ReleaseReadinessDefectSeverity.js +47 -0
  42. package/dist/esm/models/ReleaseReadinessDefects.d.ts +46 -0
  43. package/dist/esm/models/ReleaseReadinessDefects.js +52 -0
  44. package/dist/esm/models/ReleaseReadinessEvidence.d.ts +45 -0
  45. package/dist/esm/models/ReleaseReadinessEvidence.js +51 -0
  46. package/dist/esm/models/ReleaseReadinessRequirementCoverage.d.ts +41 -0
  47. package/dist/esm/models/ReleaseReadinessRequirementCoverage.js +48 -0
  48. package/dist/esm/models/ReleaseReadinessRequirementItem.d.ts +92 -0
  49. package/dist/esm/models/ReleaseReadinessRequirementItem.js +84 -0
  50. package/dist/esm/models/ReleaseReadinessRequirementSummary.d.ts +57 -0
  51. package/dist/esm/models/ReleaseReadinessRequirementSummary.js +59 -0
  52. package/dist/esm/models/ReleaseReadinessSummary.d.ts +70 -0
  53. package/dist/esm/models/ReleaseReadinessSummary.js +51 -0
  54. package/dist/esm/models/ReleaseReadinessTestPlan.d.ts +69 -0
  55. package/dist/esm/models/ReleaseReadinessTestPlan.js +68 -0
  56. package/dist/esm/models/ReleaseReadinessTestPlanRun.d.ts +51 -0
  57. package/dist/esm/models/ReleaseReadinessTestPlanRun.js +51 -0
  58. package/dist/esm/models/ReleaseReadinessVerdict.d.ts +50 -0
  59. package/dist/esm/models/ReleaseReadinessVerdict.js +56 -0
  60. package/dist/esm/models/StepWiseResult.d.ts +6 -0
  61. package/dist/esm/models/StepWiseResult.js +2 -0
  62. package/dist/esm/models/TestDatasetWiseResult.d.ts +6 -0
  63. package/dist/esm/models/TestDatasetWiseResult.js +2 -0
  64. package/dist/esm/models/TestPlan.d.ts +7 -0
  65. package/dist/esm/models/TestPlan.js +2 -0
  66. package/dist/esm/models/TestPlanBulkActionPayload.d.ts +6 -0
  67. package/dist/esm/models/TestPlanBulkActionPayload.js +2 -0
  68. package/dist/esm/models/TestPlanPayload.d.ts +6 -0
  69. package/dist/esm/models/TestPlanPayload.js +2 -0
  70. package/dist/esm/models/TraceabilityMatrixPayload.d.ts +7 -0
  71. package/dist/esm/models/TraceabilityMatrixPayload.js +2 -0
  72. package/dist/esm/models/index.d.ts +22 -0
  73. package/dist/esm/models/index.js +22 -0
  74. package/dist/models/Activity.d.ts +9 -0
  75. package/dist/models/Activity.js +6 -1
  76. package/dist/models/ActivityAuditInfo.d.ts +44 -0
  77. package/dist/models/ActivityAuditInfo.js +52 -0
  78. package/dist/models/ProjectListItem.d.ts +93 -0
  79. package/dist/models/ProjectListItem.js +79 -0
  80. package/dist/models/Release.d.ts +131 -0
  81. package/dist/models/Release.js +103 -0
  82. package/dist/models/ReleaseGoNoGoThreshold.d.ts +45 -0
  83. package/dist/models/ReleaseGoNoGoThreshold.js +52 -0
  84. package/dist/models/ReleaseMinified.d.ts +67 -0
  85. package/dist/models/ReleaseMinified.js +73 -0
  86. package/dist/models/ReleasePayload.d.ts +98 -0
  87. package/dist/models/ReleasePayload.js +83 -0
  88. package/dist/models/ReleaseReadiness.d.ts +106 -0
  89. package/dist/models/ReleaseReadiness.js +86 -0
  90. package/dist/models/ReleaseReadinessComparison.d.ts +52 -0
  91. package/dist/models/ReleaseReadinessComparison.js +54 -0
  92. package/dist/models/ReleaseReadinessConfigurationCoverage.d.ts +84 -0
  93. package/dist/models/ReleaseReadinessConfigurationCoverage.js +78 -0
  94. package/dist/models/ReleaseReadinessCoverageItem.d.ts +75 -0
  95. package/dist/models/ReleaseReadinessCoverageItem.js +72 -0
  96. package/dist/models/ReleaseReadinessCustomFieldCoverage.d.ts +77 -0
  97. package/dist/models/ReleaseReadinessCustomFieldCoverage.js +83 -0
  98. package/dist/models/ReleaseReadinessCustomFieldGroup.d.ts +75 -0
  99. package/dist/models/ReleaseReadinessCustomFieldGroup.js +76 -0
  100. package/dist/models/ReleaseReadinessDefectSeverity.d.ts +38 -0
  101. package/dist/models/ReleaseReadinessDefectSeverity.js +54 -0
  102. package/dist/models/ReleaseReadinessDefects.d.ts +46 -0
  103. package/dist/models/ReleaseReadinessDefects.js +59 -0
  104. package/dist/models/ReleaseReadinessEvidence.d.ts +45 -0
  105. package/dist/models/ReleaseReadinessEvidence.js +58 -0
  106. package/dist/models/ReleaseReadinessRequirementCoverage.d.ts +41 -0
  107. package/dist/models/ReleaseReadinessRequirementCoverage.js +55 -0
  108. package/dist/models/ReleaseReadinessRequirementItem.d.ts +92 -0
  109. package/dist/models/ReleaseReadinessRequirementItem.js +92 -0
  110. package/dist/models/ReleaseReadinessRequirementSummary.d.ts +57 -0
  111. package/dist/models/ReleaseReadinessRequirementSummary.js +66 -0
  112. package/dist/models/ReleaseReadinessSummary.d.ts +70 -0
  113. package/dist/models/ReleaseReadinessSummary.js +58 -0
  114. package/dist/models/ReleaseReadinessTestPlan.d.ts +69 -0
  115. package/dist/models/ReleaseReadinessTestPlan.js +76 -0
  116. package/dist/models/ReleaseReadinessTestPlanRun.d.ts +51 -0
  117. package/dist/models/ReleaseReadinessTestPlanRun.js +58 -0
  118. package/dist/models/ReleaseReadinessVerdict.d.ts +50 -0
  119. package/dist/models/ReleaseReadinessVerdict.js +64 -0
  120. package/dist/models/StepWiseResult.d.ts +6 -0
  121. package/dist/models/StepWiseResult.js +2 -0
  122. package/dist/models/TestDatasetWiseResult.d.ts +6 -0
  123. package/dist/models/TestDatasetWiseResult.js +2 -0
  124. package/dist/models/TestPlan.d.ts +7 -0
  125. package/dist/models/TestPlan.js +2 -0
  126. package/dist/models/TestPlanBulkActionPayload.d.ts +6 -0
  127. package/dist/models/TestPlanBulkActionPayload.js +2 -0
  128. package/dist/models/TestPlanPayload.d.ts +6 -0
  129. package/dist/models/TestPlanPayload.js +2 -0
  130. package/dist/models/TraceabilityMatrixPayload.d.ts +7 -0
  131. package/dist/models/TraceabilityMatrixPayload.js +2 -0
  132. package/dist/models/index.d.ts +22 -0
  133. package/dist/models/index.js +22 -0
  134. package/docs/Activity.md +2 -0
  135. package/docs/ActivityAuditInfo.md +39 -0
  136. package/docs/ProjectListItem.md +54 -0
  137. package/docs/ProjectsApi.md +2 -2
  138. package/docs/Release.md +62 -0
  139. package/docs/ReleaseGoNoGoThreshold.md +39 -0
  140. package/docs/ReleaseMinified.md +42 -0
  141. package/docs/ReleasePayload.md +52 -0
  142. package/docs/ReleaseReadiness.md +55 -0
  143. package/docs/ReleaseReadinessComparison.md +41 -0
  144. package/docs/ReleaseReadinessConfigurationCoverage.md +51 -0
  145. package/docs/ReleaseReadinessCoverageItem.md +49 -0
  146. package/docs/ReleaseReadinessCustomFieldCoverage.md +43 -0
  147. package/docs/ReleaseReadinessCustomFieldGroup.md +49 -0
  148. package/docs/ReleaseReadinessDefectSeverity.md +36 -0
  149. package/docs/ReleaseReadinessDefects.md +39 -0
  150. package/docs/ReleaseReadinessEvidence.md +39 -0
  151. package/docs/ReleaseReadinessRequirementCoverage.md +37 -0
  152. package/docs/ReleaseReadinessRequirementItem.md +51 -0
  153. package/docs/ReleaseReadinessRequirementSummary.md +43 -0
  154. package/docs/ReleaseReadinessSummary.md +47 -0
  155. package/docs/ReleaseReadinessTestPlan.md +43 -0
  156. package/docs/ReleaseReadinessTestPlanRun.md +41 -0
  157. package/docs/ReleaseReadinessVerdict.md +37 -0
  158. package/docs/ReleasesApi.md +655 -0
  159. package/docs/StepWiseResult.md +2 -0
  160. package/docs/TestDatasetWiseResult.md +2 -0
  161. package/docs/TestPlan.md +2 -0
  162. package/docs/TestPlanBulkActionPayload.md +2 -0
  163. package/docs/TestPlanPayload.md +2 -0
  164. package/docs/TraceabilityMatrixPayload.md +2 -0
  165. package/package.json +1 -1
  166. package/src/apis/ProjectsApi.ts +8 -5
  167. package/src/apis/ReleasesApi.ts +663 -0
  168. package/src/apis/index.ts +1 -0
  169. package/src/models/Activity.ts +18 -1
  170. package/src/models/ActivityAuditInfo.ts +81 -0
  171. package/src/models/ProjectListItem.ts +158 -0
  172. package/src/models/Release.ts +227 -0
  173. package/src/models/ReleaseGoNoGoThreshold.ts +82 -0
  174. package/src/models/ReleaseMinified.ts +114 -0
  175. package/src/models/ReleasePayload.ts +162 -0
  176. package/src/models/ReleaseReadiness.ts +233 -0
  177. package/src/models/ReleaseReadinessComparison.ts +98 -0
  178. package/src/models/ReleaseReadinessConfigurationCoverage.ts +138 -0
  179. package/src/models/ReleaseReadinessCoverageItem.ts +127 -0
  180. package/src/models/ReleaseReadinessCustomFieldCoverage.ts +133 -0
  181. package/src/models/ReleaseReadinessCustomFieldGroup.ts +129 -0
  182. package/src/models/ReleaseReadinessDefectSeverity.ts +75 -0
  183. package/src/models/ReleaseReadinessDefects.ts +93 -0
  184. package/src/models/ReleaseReadinessEvidence.ts +85 -0
  185. package/src/models/ReleaseReadinessRequirementCoverage.ts +91 -0
  186. package/src/models/ReleaseReadinessRequirementItem.ts +153 -0
  187. package/src/models/ReleaseReadinessRequirementSummary.ts +103 -0
  188. package/src/models/ReleaseReadinessSummary.ts +124 -0
  189. package/src/models/ReleaseReadinessTestPlan.ts +131 -0
  190. package/src/models/ReleaseReadinessTestPlanRun.ts +92 -0
  191. package/src/models/ReleaseReadinessVerdict.ts +90 -0
  192. package/src/models/StepWiseResult.ts +8 -0
  193. package/src/models/TestDatasetWiseResult.ts +8 -0
  194. package/src/models/TestPlan.ts +15 -0
  195. package/src/models/TestPlanBulkActionPayload.ts +8 -0
  196. package/src/models/TestPlanPayload.ts +8 -0
  197. package/src/models/TraceabilityMatrixPayload.ts +9 -0
  198. package/src/models/index.ts +22 -0
@@ -0,0 +1,138 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * TC API
5
+ * TestCollab is a test management tool that helps development teams carry out testing effectively and avoid failures. # Introduction This is an API documentation for TestCollab 2. # Authentication TestCollab supports two forms of authentication: - An <b>API token</b> is required to make API calls. The token can be generated from user\'s profile; to obtain it login to your TestCollab account and go to [\'My Profile Settings\'](https://testcollab.io/my_profile) and switch to API Token tab. Click on \"Generate new API token\", Once the token is generated it can be sent as a query parameter for the API calls made - https://api.testcollab.io/projects?token=<generated-API-token> - <b>Bearer authentication</b> (also called token authentication) is an HTTP authentication scheme that involves security tokens called bearer tokens. You can generate bearer auth token using [Login](#operation/login) API. Send this token as the Authorization header while making requests to protected resources: `Authorization: Bearer <token>` For making API calls, we recommend using the <b>API token</b> generated from user profile page as it won\'t affect the on-going user session and will be available until it is revoked by the user who generated it. # Error Handling Error responses - `Not Found` - Error is sent when requested resource is not available. - `Unauthorized - invalid token` - Error is sent when API token sent with the request is invalid or revoked. Error contains status code 401 - `Forbidden` - Error is sent when logged in user is not part of the company, project or his role does not allow to complete given action. Response consist of 403 status code and more information is given in error message.
6
+ *
7
+ * The version of the OpenAPI document: 2.3.1
8
+ * Contact: support@testcollab.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ * Coverage breakdown for a single configuration. Shows execution statistics aggregated across all test plans in the release that use this configuration.
18
+ *
19
+ * @export
20
+ * @interface ReleaseReadinessConfigurationCoverage
21
+ */
22
+ export interface ReleaseReadinessConfigurationCoverage {
23
+ /**
24
+ * The ID of the test plan configuration
25
+ * @type {number}
26
+ * @memberof ReleaseReadinessConfigurationCoverage
27
+ */
28
+ configurationId: number;
29
+ /**
30
+ * Key-value pairs defining the configuration. E.g. {"browser": "Chrome", "os": "Windows"}.
31
+ *
32
+ * @type {{ [key: string]: string; }}
33
+ * @memberof ReleaseReadinessConfigurationCoverage
34
+ */
35
+ parameters: { [key: string]: string; };
36
+ /**
37
+ * The test plan this configuration belongs to
38
+ * @type {number}
39
+ * @memberof ReleaseReadinessConfigurationCoverage
40
+ */
41
+ testPlanId?: number;
42
+ /**
43
+ * Title of the test plan
44
+ * @type {string}
45
+ * @memberof ReleaseReadinessConfigurationCoverage
46
+ */
47
+ testPlanTitle?: string;
48
+ /**
49
+ * Total test cases for this configuration
50
+ * @type {number}
51
+ * @memberof ReleaseReadinessConfigurationCoverage
52
+ */
53
+ total: number;
54
+ /**
55
+ * Number of test cases executed
56
+ * @type {number}
57
+ * @memberof ReleaseReadinessConfigurationCoverage
58
+ */
59
+ executed: number;
60
+ /**
61
+ * Number of test cases passed
62
+ * @type {number}
63
+ * @memberof ReleaseReadinessConfigurationCoverage
64
+ */
65
+ passed: number;
66
+ /**
67
+ * Number of test cases failed
68
+ * @type {number}
69
+ * @memberof ReleaseReadinessConfigurationCoverage
70
+ */
71
+ failed: number;
72
+ /**
73
+ * Pass rate as a percentage (passed / executed * 100)
74
+ * @type {number}
75
+ * @memberof ReleaseReadinessConfigurationCoverage
76
+ */
77
+ passRate: number;
78
+ }
79
+
80
+ /**
81
+ * Check if a given object implements the ReleaseReadinessConfigurationCoverage interface.
82
+ */
83
+ export function instanceOfReleaseReadinessConfigurationCoverage(value: object): value is ReleaseReadinessConfigurationCoverage {
84
+ if (!('configurationId' in value) || value['configurationId'] === undefined) return false;
85
+ if (!('parameters' in value) || value['parameters'] === undefined) return false;
86
+ if (!('total' in value) || value['total'] === undefined) return false;
87
+ if (!('executed' in value) || value['executed'] === undefined) return false;
88
+ if (!('passed' in value) || value['passed'] === undefined) return false;
89
+ if (!('failed' in value) || value['failed'] === undefined) return false;
90
+ if (!('passRate' in value) || value['passRate'] === undefined) return false;
91
+ return true;
92
+ }
93
+
94
+ export function ReleaseReadinessConfigurationCoverageFromJSON(json: any): ReleaseReadinessConfigurationCoverage {
95
+ return ReleaseReadinessConfigurationCoverageFromJSONTyped(json, false);
96
+ }
97
+
98
+ export function ReleaseReadinessConfigurationCoverageFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadinessConfigurationCoverage {
99
+ if (json == null) {
100
+ return json;
101
+ }
102
+ return {
103
+
104
+ 'configurationId': json['configuration_id'],
105
+ 'parameters': json['parameters'],
106
+ 'testPlanId': json['test_plan_id'] == null ? undefined : json['test_plan_id'],
107
+ 'testPlanTitle': json['test_plan_title'] == null ? undefined : json['test_plan_title'],
108
+ 'total': json['total'],
109
+ 'executed': json['executed'],
110
+ 'passed': json['passed'],
111
+ 'failed': json['failed'],
112
+ 'passRate': json['pass_rate'],
113
+ };
114
+ }
115
+
116
+ export function ReleaseReadinessConfigurationCoverageToJSON(json: any): ReleaseReadinessConfigurationCoverage {
117
+ return ReleaseReadinessConfigurationCoverageToJSONTyped(json, false);
118
+ }
119
+
120
+ export function ReleaseReadinessConfigurationCoverageToJSONTyped(value?: ReleaseReadinessConfigurationCoverage | null, ignoreDiscriminator: boolean = false): any {
121
+ if (value == null) {
122
+ return value;
123
+ }
124
+
125
+ return {
126
+
127
+ 'configuration_id': value['configurationId'],
128
+ 'parameters': value['parameters'],
129
+ 'test_plan_id': value['testPlanId'],
130
+ 'test_plan_title': value['testPlanTitle'],
131
+ 'total': value['total'],
132
+ 'executed': value['executed'],
133
+ 'passed': value['passed'],
134
+ 'failed': value['failed'],
135
+ 'pass_rate': value['passRate'],
136
+ };
137
+ }
138
+
@@ -0,0 +1,127 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * TC API
5
+ * TestCollab is a test management tool that helps development teams carry out testing effectively and avoid failures. # Introduction This is an API documentation for TestCollab 2. # Authentication TestCollab supports two forms of authentication: - An <b>API token</b> is required to make API calls. The token can be generated from user\'s profile; to obtain it login to your TestCollab account and go to [\'My Profile Settings\'](https://testcollab.io/my_profile) and switch to API Token tab. Click on \"Generate new API token\", Once the token is generated it can be sent as a query parameter for the API calls made - https://api.testcollab.io/projects?token=<generated-API-token> - <b>Bearer authentication</b> (also called token authentication) is an HTTP authentication scheme that involves security tokens called bearer tokens. You can generate bearer auth token using [Login](#operation/login) API. Send this token as the Authorization header while making requests to protected resources: `Authorization: Bearer <token>` For making API calls, we recommend using the <b>API token</b> generated from user profile page as it won\'t affect the on-going user session and will be available until it is revoked by the user who generated it. # Error Handling Error responses - `Not Found` - Error is sent when requested resource is not available. - `Unauthorized - invalid token` - Error is sent when API token sent with the request is invalid or revoked. Error contains status code 401 - `Forbidden` - Error is sent when logged in user is not part of the company, project or his role does not allow to complete given action. Response consist of 403 status code and more information is given in error message.
6
+ *
7
+ * The version of the OpenAPI document: 2.3.1
8
+ * Contact: support@testcollab.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ * Test coverage for a single suite/module within the release. Supports tree structure — parent suites aggregate totals from children.
18
+ *
19
+ * @export
20
+ * @interface ReleaseReadinessCoverageItem
21
+ */
22
+ export interface ReleaseReadinessCoverageItem {
23
+ /**
24
+ *
25
+ * @type {number}
26
+ * @memberof ReleaseReadinessCoverageItem
27
+ */
28
+ suiteId: number;
29
+ /**
30
+ *
31
+ * @type {string}
32
+ * @memberof ReleaseReadinessCoverageItem
33
+ */
34
+ suiteTitle: string;
35
+ /**
36
+ * Total test cases from this suite (including children) in release test plans
37
+ * @type {number}
38
+ * @memberof ReleaseReadinessCoverageItem
39
+ */
40
+ total: number;
41
+ /**
42
+ * Number of test cases executed (including children, any status except unexecuted)
43
+ * @type {number}
44
+ * @memberof ReleaseReadinessCoverageItem
45
+ */
46
+ executed: number;
47
+ /**
48
+ *
49
+ * @type {number}
50
+ * @memberof ReleaseReadinessCoverageItem
51
+ */
52
+ passed?: number;
53
+ /**
54
+ *
55
+ * @type {number}
56
+ * @memberof ReleaseReadinessCoverageItem
57
+ */
58
+ failed?: number;
59
+ /**
60
+ * Percentage of passed out of executed
61
+ * @type {number}
62
+ * @memberof ReleaseReadinessCoverageItem
63
+ */
64
+ passRate: number;
65
+ /**
66
+ * Child suite coverage nodes (tree structure)
67
+ * @type {Array<ReleaseReadinessCoverageItem>}
68
+ * @memberof ReleaseReadinessCoverageItem
69
+ */
70
+ children?: Array<ReleaseReadinessCoverageItem>;
71
+ }
72
+
73
+ /**
74
+ * Check if a given object implements the ReleaseReadinessCoverageItem interface.
75
+ */
76
+ export function instanceOfReleaseReadinessCoverageItem(value: object): value is ReleaseReadinessCoverageItem {
77
+ if (!('suiteId' in value) || value['suiteId'] === undefined) return false;
78
+ if (!('suiteTitle' in value) || value['suiteTitle'] === undefined) return false;
79
+ if (!('total' in value) || value['total'] === undefined) return false;
80
+ if (!('executed' in value) || value['executed'] === undefined) return false;
81
+ if (!('passRate' in value) || value['passRate'] === undefined) return false;
82
+ return true;
83
+ }
84
+
85
+ export function ReleaseReadinessCoverageItemFromJSON(json: any): ReleaseReadinessCoverageItem {
86
+ return ReleaseReadinessCoverageItemFromJSONTyped(json, false);
87
+ }
88
+
89
+ export function ReleaseReadinessCoverageItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadinessCoverageItem {
90
+ if (json == null) {
91
+ return json;
92
+ }
93
+ return {
94
+
95
+ 'suiteId': json['suite_id'],
96
+ 'suiteTitle': json['suite_title'],
97
+ 'total': json['total'],
98
+ 'executed': json['executed'],
99
+ 'passed': json['passed'] == null ? undefined : json['passed'],
100
+ 'failed': json['failed'] == null ? undefined : json['failed'],
101
+ 'passRate': json['pass_rate'],
102
+ 'children': json['children'] == null ? undefined : ((json['children'] as Array<any>).map(ReleaseReadinessCoverageItemFromJSON)),
103
+ };
104
+ }
105
+
106
+ export function ReleaseReadinessCoverageItemToJSON(json: any): ReleaseReadinessCoverageItem {
107
+ return ReleaseReadinessCoverageItemToJSONTyped(json, false);
108
+ }
109
+
110
+ export function ReleaseReadinessCoverageItemToJSONTyped(value?: ReleaseReadinessCoverageItem | null, ignoreDiscriminator: boolean = false): any {
111
+ if (value == null) {
112
+ return value;
113
+ }
114
+
115
+ return {
116
+
117
+ 'suite_id': value['suiteId'],
118
+ 'suite_title': value['suiteTitle'],
119
+ 'total': value['total'],
120
+ 'executed': value['executed'],
121
+ 'passed': value['passed'],
122
+ 'failed': value['failed'],
123
+ 'pass_rate': value['passRate'],
124
+ 'children': value['children'] == null ? undefined : ((value['children'] as Array<any>).map(ReleaseReadinessCoverageItemToJSON)),
125
+ };
126
+ }
127
+
@@ -0,0 +1,133 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * TC API
5
+ * TestCollab is a test management tool that helps development teams carry out testing effectively and avoid failures. # Introduction This is an API documentation for TestCollab 2. # Authentication TestCollab supports two forms of authentication: - An <b>API token</b> is required to make API calls. The token can be generated from user\'s profile; to obtain it login to your TestCollab account and go to [\'My Profile Settings\'](https://testcollab.io/my_profile) and switch to API Token tab. Click on \"Generate new API token\", Once the token is generated it can be sent as a query parameter for the API calls made - https://api.testcollab.io/projects?token=<generated-API-token> - <b>Bearer authentication</b> (also called token authentication) is an HTTP authentication scheme that involves security tokens called bearer tokens. You can generate bearer auth token using [Login](#operation/login) API. Send this token as the Authorization header while making requests to protected resources: `Authorization: Bearer <token>` For making API calls, we recommend using the <b>API token</b> generated from user profile page as it won\'t affect the on-going user session and will be available until it is revoked by the user who generated it. # Error Handling Error responses - `Not Found` - Error is sent when requested resource is not available. - `Unauthorized - invalid token` - Error is sent when API token sent with the request is invalid or revoked. Error contains status code 401 - `Forbidden` - Error is sent when logged in user is not part of the company, project or his role does not allow to complete given action. Response consist of 403 status code and more information is given in error message.
6
+ *
7
+ * The version of the OpenAPI document: 2.3.1
8
+ * Contact: support@testcollab.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { ReleaseReadinessCustomFieldGroup } from './ReleaseReadinessCustomFieldGroup';
17
+ import {
18
+ ReleaseReadinessCustomFieldGroupFromJSON,
19
+ ReleaseReadinessCustomFieldGroupFromJSONTyped,
20
+ ReleaseReadinessCustomFieldGroupToJSON,
21
+ ReleaseReadinessCustomFieldGroupToJSONTyped,
22
+ } from './ReleaseReadinessCustomFieldGroup';
23
+
24
+ /**
25
+ * Coverage breakdown for a single custom field. Groups test cases by their custom field value and shows execution statistics per group. Supports both test case and test plan custom fields.
26
+ *
27
+ * @export
28
+ * @interface ReleaseReadinessCustomFieldCoverage
29
+ */
30
+ export interface ReleaseReadinessCustomFieldCoverage {
31
+ /**
32
+ *
33
+ * @type {number}
34
+ * @memberof ReleaseReadinessCustomFieldCoverage
35
+ */
36
+ fieldId: number;
37
+ /**
38
+ *
39
+ * @type {string}
40
+ * @memberof ReleaseReadinessCustomFieldCoverage
41
+ */
42
+ fieldLabel: string;
43
+ /**
44
+ *
45
+ * @type {string}
46
+ * @memberof ReleaseReadinessCustomFieldCoverage
47
+ */
48
+ fieldType: ReleaseReadinessCustomFieldCoverageFieldTypeEnum;
49
+ /**
50
+ * Whether this is a test case or test plan custom field
51
+ * @type {string}
52
+ * @memberof ReleaseReadinessCustomFieldCoverage
53
+ */
54
+ entity?: ReleaseReadinessCustomFieldCoverageEntityEnum;
55
+ /**
56
+ *
57
+ * @type {Array<ReleaseReadinessCustomFieldGroup>}
58
+ * @memberof ReleaseReadinessCustomFieldCoverage
59
+ */
60
+ groups: Array<ReleaseReadinessCustomFieldGroup>;
61
+ }
62
+
63
+
64
+ /**
65
+ * @export
66
+ */
67
+ export const ReleaseReadinessCustomFieldCoverageFieldTypeEnum = {
68
+ Dropdown: 'dropdown',
69
+ MultipleSelect: 'multipleSelect',
70
+ Date: 'date',
71
+ Number: 'number',
72
+ User: 'user'
73
+ } as const;
74
+ export type ReleaseReadinessCustomFieldCoverageFieldTypeEnum = typeof ReleaseReadinessCustomFieldCoverageFieldTypeEnum[keyof typeof ReleaseReadinessCustomFieldCoverageFieldTypeEnum];
75
+
76
+ /**
77
+ * @export
78
+ */
79
+ export const ReleaseReadinessCustomFieldCoverageEntityEnum = {
80
+ TestCase: 'TestCase',
81
+ TestPlan: 'TestPlan'
82
+ } as const;
83
+ export type ReleaseReadinessCustomFieldCoverageEntityEnum = typeof ReleaseReadinessCustomFieldCoverageEntityEnum[keyof typeof ReleaseReadinessCustomFieldCoverageEntityEnum];
84
+
85
+
86
+ /**
87
+ * Check if a given object implements the ReleaseReadinessCustomFieldCoverage interface.
88
+ */
89
+ export function instanceOfReleaseReadinessCustomFieldCoverage(value: object): value is ReleaseReadinessCustomFieldCoverage {
90
+ if (!('fieldId' in value) || value['fieldId'] === undefined) return false;
91
+ if (!('fieldLabel' in value) || value['fieldLabel'] === undefined) return false;
92
+ if (!('fieldType' in value) || value['fieldType'] === undefined) return false;
93
+ if (!('groups' in value) || value['groups'] === undefined) return false;
94
+ return true;
95
+ }
96
+
97
+ export function ReleaseReadinessCustomFieldCoverageFromJSON(json: any): ReleaseReadinessCustomFieldCoverage {
98
+ return ReleaseReadinessCustomFieldCoverageFromJSONTyped(json, false);
99
+ }
100
+
101
+ export function ReleaseReadinessCustomFieldCoverageFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadinessCustomFieldCoverage {
102
+ if (json == null) {
103
+ return json;
104
+ }
105
+ return {
106
+
107
+ 'fieldId': json['field_id'],
108
+ 'fieldLabel': json['field_label'],
109
+ 'fieldType': json['field_type'],
110
+ 'entity': json['entity'] == null ? undefined : json['entity'],
111
+ 'groups': ((json['groups'] as Array<any>).map(ReleaseReadinessCustomFieldGroupFromJSON)),
112
+ };
113
+ }
114
+
115
+ export function ReleaseReadinessCustomFieldCoverageToJSON(json: any): ReleaseReadinessCustomFieldCoverage {
116
+ return ReleaseReadinessCustomFieldCoverageToJSONTyped(json, false);
117
+ }
118
+
119
+ export function ReleaseReadinessCustomFieldCoverageToJSONTyped(value?: ReleaseReadinessCustomFieldCoverage | null, ignoreDiscriminator: boolean = false): any {
120
+ if (value == null) {
121
+ return value;
122
+ }
123
+
124
+ return {
125
+
126
+ 'field_id': value['fieldId'],
127
+ 'field_label': value['fieldLabel'],
128
+ 'field_type': value['fieldType'],
129
+ 'entity': value['entity'],
130
+ 'groups': ((value['groups'] as Array<any>).map(ReleaseReadinessCustomFieldGroupToJSON)),
131
+ };
132
+ }
133
+
@@ -0,0 +1,129 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * TC API
5
+ * TestCollab is a test management tool that helps development teams carry out testing effectively and avoid failures. # Introduction This is an API documentation for TestCollab 2. # Authentication TestCollab supports two forms of authentication: - An <b>API token</b> is required to make API calls. The token can be generated from user\'s profile; to obtain it login to your TestCollab account and go to [\'My Profile Settings\'](https://testcollab.io/my_profile) and switch to API Token tab. Click on \"Generate new API token\", Once the token is generated it can be sent as a query parameter for the API calls made - https://api.testcollab.io/projects?token=<generated-API-token> - <b>Bearer authentication</b> (also called token authentication) is an HTTP authentication scheme that involves security tokens called bearer tokens. You can generate bearer auth token using [Login](#operation/login) API. Send this token as the Authorization header while making requests to protected resources: `Authorization: Bearer <token>` For making API calls, we recommend using the <b>API token</b> generated from user profile page as it won\'t affect the on-going user session and will be available until it is revoked by the user who generated it. # Error Handling Error responses - `Not Found` - Error is sent when requested resource is not available. - `Unauthorized - invalid token` - Error is sent when API token sent with the request is invalid or revoked. Error contains status code 401 - `Forbidden` - Error is sent when logged in user is not part of the company, project or his role does not allow to complete given action. Response consist of 403 status code and more information is given in error message.
6
+ *
7
+ * The version of the OpenAPI document: 2.3.1
8
+ * Contact: support@testcollab.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ * Coverage data for a single value/group within a custom field.
18
+ *
19
+ * @export
20
+ * @interface ReleaseReadinessCustomFieldGroup
21
+ */
22
+ export interface ReleaseReadinessCustomFieldGroup {
23
+ /**
24
+ * The raw custom field value (systemValue for dropdown, actual value for others)
25
+ * @type {string}
26
+ * @memberof ReleaseReadinessCustomFieldGroup
27
+ */
28
+ value: string;
29
+ /**
30
+ * Human-readable label for this value
31
+ * @type {string}
32
+ * @memberof ReleaseReadinessCustomFieldGroup
33
+ */
34
+ label: string;
35
+ /**
36
+ * Hex color for dropdown/multipleSelect options (if available)
37
+ * @type {string}
38
+ * @memberof ReleaseReadinessCustomFieldGroup
39
+ */
40
+ color?: string;
41
+ /**
42
+ * Total test cases with this custom field value that are in the release
43
+ * @type {number}
44
+ * @memberof ReleaseReadinessCustomFieldGroup
45
+ */
46
+ total: number;
47
+ /**
48
+ *
49
+ * @type {number}
50
+ * @memberof ReleaseReadinessCustomFieldGroup
51
+ */
52
+ executed: number;
53
+ /**
54
+ *
55
+ * @type {number}
56
+ * @memberof ReleaseReadinessCustomFieldGroup
57
+ */
58
+ passed: number;
59
+ /**
60
+ *
61
+ * @type {number}
62
+ * @memberof ReleaseReadinessCustomFieldGroup
63
+ */
64
+ failed: number;
65
+ /**
66
+ * Percentage of passed out of executed
67
+ * @type {number}
68
+ * @memberof ReleaseReadinessCustomFieldGroup
69
+ */
70
+ passRate: number;
71
+ }
72
+
73
+ /**
74
+ * Check if a given object implements the ReleaseReadinessCustomFieldGroup interface.
75
+ */
76
+ export function instanceOfReleaseReadinessCustomFieldGroup(value: object): value is ReleaseReadinessCustomFieldGroup {
77
+ if (!('value' in value) || value['value'] === undefined) return false;
78
+ if (!('label' in value) || value['label'] === undefined) return false;
79
+ if (!('total' in value) || value['total'] === undefined) return false;
80
+ if (!('executed' in value) || value['executed'] === undefined) return false;
81
+ if (!('passed' in value) || value['passed'] === undefined) return false;
82
+ if (!('failed' in value) || value['failed'] === undefined) return false;
83
+ if (!('passRate' in value) || value['passRate'] === undefined) return false;
84
+ return true;
85
+ }
86
+
87
+ export function ReleaseReadinessCustomFieldGroupFromJSON(json: any): ReleaseReadinessCustomFieldGroup {
88
+ return ReleaseReadinessCustomFieldGroupFromJSONTyped(json, false);
89
+ }
90
+
91
+ export function ReleaseReadinessCustomFieldGroupFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadinessCustomFieldGroup {
92
+ if (json == null) {
93
+ return json;
94
+ }
95
+ return {
96
+
97
+ 'value': json['value'],
98
+ 'label': json['label'],
99
+ 'color': json['color'] == null ? undefined : json['color'],
100
+ 'total': json['total'],
101
+ 'executed': json['executed'],
102
+ 'passed': json['passed'],
103
+ 'failed': json['failed'],
104
+ 'passRate': json['pass_rate'],
105
+ };
106
+ }
107
+
108
+ export function ReleaseReadinessCustomFieldGroupToJSON(json: any): ReleaseReadinessCustomFieldGroup {
109
+ return ReleaseReadinessCustomFieldGroupToJSONTyped(json, false);
110
+ }
111
+
112
+ export function ReleaseReadinessCustomFieldGroupToJSONTyped(value?: ReleaseReadinessCustomFieldGroup | null, ignoreDiscriminator: boolean = false): any {
113
+ if (value == null) {
114
+ return value;
115
+ }
116
+
117
+ return {
118
+
119
+ 'value': value['value'],
120
+ 'label': value['label'],
121
+ 'color': value['color'],
122
+ 'total': value['total'],
123
+ 'executed': value['executed'],
124
+ 'passed': value['passed'],
125
+ 'failed': value['failed'],
126
+ 'pass_rate': value['passRate'],
127
+ };
128
+ }
129
+
@@ -0,0 +1,75 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * TC API
5
+ * TestCollab is a test management tool that helps development teams carry out testing effectively and avoid failures. # Introduction This is an API documentation for TestCollab 2. # Authentication TestCollab supports two forms of authentication: - An <b>API token</b> is required to make API calls. The token can be generated from user\'s profile; to obtain it login to your TestCollab account and go to [\'My Profile Settings\'](https://testcollab.io/my_profile) and switch to API Token tab. Click on \"Generate new API token\", Once the token is generated it can be sent as a query parameter for the API calls made - https://api.testcollab.io/projects?token=<generated-API-token> - <b>Bearer authentication</b> (also called token authentication) is an HTTP authentication scheme that involves security tokens called bearer tokens. You can generate bearer auth token using [Login](#operation/login) API. Send this token as the Authorization header while making requests to protected resources: `Authorization: Bearer <token>` For making API calls, we recommend using the <b>API token</b> generated from user profile page as it won\'t affect the on-going user session and will be available until it is revoked by the user who generated it. # Error Handling Error responses - `Not Found` - Error is sent when requested resource is not available. - `Unauthorized - invalid token` - Error is sent when API token sent with the request is invalid or revoked. Error contains status code 401 - `Forbidden` - Error is sent when logged in user is not part of the company, project or his role does not allow to complete given action. Response consist of 403 status code and more information is given in error message.
6
+ *
7
+ * The version of the OpenAPI document: 2.3.1
8
+ * Contact: support@testcollab.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface ReleaseReadinessDefectSeverity
20
+ */
21
+ export interface ReleaseReadinessDefectSeverity {
22
+ /**
23
+ * Severity label from the external issue tracker (e.g. Blocker, Critical, Major, Minor)
24
+ * @type {string}
25
+ * @memberof ReleaseReadinessDefectSeverity
26
+ */
27
+ severity: string;
28
+ /**
29
+ *
30
+ * @type {number}
31
+ * @memberof ReleaseReadinessDefectSeverity
32
+ */
33
+ count: number;
34
+ }
35
+
36
+ /**
37
+ * Check if a given object implements the ReleaseReadinessDefectSeverity interface.
38
+ */
39
+ export function instanceOfReleaseReadinessDefectSeverity(value: object): value is ReleaseReadinessDefectSeverity {
40
+ if (!('severity' in value) || value['severity'] === undefined) return false;
41
+ if (!('count' in value) || value['count'] === undefined) return false;
42
+ return true;
43
+ }
44
+
45
+ export function ReleaseReadinessDefectSeverityFromJSON(json: any): ReleaseReadinessDefectSeverity {
46
+ return ReleaseReadinessDefectSeverityFromJSONTyped(json, false);
47
+ }
48
+
49
+ export function ReleaseReadinessDefectSeverityFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadinessDefectSeverity {
50
+ if (json == null) {
51
+ return json;
52
+ }
53
+ return {
54
+
55
+ 'severity': json['severity'],
56
+ 'count': json['count'],
57
+ };
58
+ }
59
+
60
+ export function ReleaseReadinessDefectSeverityToJSON(json: any): ReleaseReadinessDefectSeverity {
61
+ return ReleaseReadinessDefectSeverityToJSONTyped(json, false);
62
+ }
63
+
64
+ export function ReleaseReadinessDefectSeverityToJSONTyped(value?: ReleaseReadinessDefectSeverity | null, ignoreDiscriminator: boolean = false): any {
65
+ if (value == null) {
66
+ return value;
67
+ }
68
+
69
+ return {
70
+
71
+ 'severity': value['severity'],
72
+ 'count': value['count'],
73
+ };
74
+ }
75
+