@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,114 @@
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 ReleaseMinified
20
+ */
21
+ export interface ReleaseMinified {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof ReleaseMinified
26
+ */
27
+ id: number;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof ReleaseMinified
32
+ */
33
+ name: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof ReleaseMinified
38
+ */
39
+ status: ReleaseMinifiedStatusEnum;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof ReleaseMinified
44
+ */
45
+ targetDate?: string;
46
+ /**
47
+ *
48
+ * @type {string}
49
+ * @memberof ReleaseMinified
50
+ */
51
+ createdAt?: string;
52
+ }
53
+
54
+
55
+ /**
56
+ * @export
57
+ */
58
+ export const ReleaseMinifiedStatusEnum = {
59
+ Planned: 'planned',
60
+ InProgress: 'in_progress',
61
+ Ready: 'ready',
62
+ Shipped: 'shipped',
63
+ Blocked: 'blocked'
64
+ } as const;
65
+ export type ReleaseMinifiedStatusEnum = typeof ReleaseMinifiedStatusEnum[keyof typeof ReleaseMinifiedStatusEnum];
66
+
67
+
68
+ /**
69
+ * Check if a given object implements the ReleaseMinified interface.
70
+ */
71
+ export function instanceOfReleaseMinified(value: object): value is ReleaseMinified {
72
+ if (!('id' in value) || value['id'] === undefined) return false;
73
+ if (!('name' in value) || value['name'] === undefined) return false;
74
+ if (!('status' in value) || value['status'] === undefined) return false;
75
+ return true;
76
+ }
77
+
78
+ export function ReleaseMinifiedFromJSON(json: any): ReleaseMinified {
79
+ return ReleaseMinifiedFromJSONTyped(json, false);
80
+ }
81
+
82
+ export function ReleaseMinifiedFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseMinified {
83
+ if (json == null) {
84
+ return json;
85
+ }
86
+ return {
87
+
88
+ 'id': json['id'],
89
+ 'name': json['name'],
90
+ 'status': json['status'],
91
+ 'targetDate': json['target_date'] == null ? undefined : json['target_date'],
92
+ 'createdAt': json['created_at'] == null ? undefined : json['created_at'],
93
+ };
94
+ }
95
+
96
+ export function ReleaseMinifiedToJSON(json: any): ReleaseMinified {
97
+ return ReleaseMinifiedToJSONTyped(json, false);
98
+ }
99
+
100
+ export function ReleaseMinifiedToJSONTyped(value?: ReleaseMinified | null, ignoreDiscriminator: boolean = false): any {
101
+ if (value == null) {
102
+ return value;
103
+ }
104
+
105
+ return {
106
+
107
+ 'id': value['id'],
108
+ 'name': value['name'],
109
+ 'status': value['status'],
110
+ 'target_date': value['targetDate'],
111
+ 'created_at': value['createdAt'],
112
+ };
113
+ }
114
+
@@ -0,0 +1,162 @@
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 { ReleaseGoNoGoThreshold } from './ReleaseGoNoGoThreshold';
17
+ import {
18
+ ReleaseGoNoGoThresholdFromJSON,
19
+ ReleaseGoNoGoThresholdFromJSONTyped,
20
+ ReleaseGoNoGoThresholdToJSON,
21
+ ReleaseGoNoGoThresholdToJSONTyped,
22
+ } from './ReleaseGoNoGoThreshold';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface ReleasePayload
28
+ */
29
+ export interface ReleasePayload {
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof ReleasePayload
34
+ */
35
+ name: string;
36
+ /**
37
+ *
38
+ * @type {string}
39
+ * @memberof ReleasePayload
40
+ */
41
+ description?: string;
42
+ /**
43
+ *
44
+ * @type {string}
45
+ * @memberof ReleasePayload
46
+ */
47
+ status: ReleasePayloadStatusEnum;
48
+ /**
49
+ *
50
+ * @type {string}
51
+ * @memberof ReleasePayload
52
+ */
53
+ targetDate?: string;
54
+ /**
55
+ *
56
+ * @type {string}
57
+ * @memberof ReleasePayload
58
+ */
59
+ releaseDate?: string;
60
+ /**
61
+ *
62
+ * @type {ReleaseGoNoGoThreshold}
63
+ * @memberof ReleasePayload
64
+ */
65
+ goNoGoThreshold?: ReleaseGoNoGoThreshold;
66
+ /**
67
+ *
68
+ * @type {boolean}
69
+ * @memberof ReleasePayload
70
+ */
71
+ isPublic?: boolean;
72
+ /**
73
+ *
74
+ * @type {number}
75
+ * @memberof ReleasePayload
76
+ */
77
+ project: number;
78
+ /**
79
+ * Array of test plan IDs to associate with this release
80
+ * @type {Array<number>}
81
+ * @memberof ReleasePayload
82
+ */
83
+ testPlans?: Array<number>;
84
+ /**
85
+ * Array of requirement IDs to associate with this release
86
+ * @type {Array<number>}
87
+ * @memberof ReleasePayload
88
+ */
89
+ requirements?: Array<number>;
90
+ }
91
+
92
+
93
+ /**
94
+ * @export
95
+ */
96
+ export const ReleasePayloadStatusEnum = {
97
+ Planned: 'planned',
98
+ InProgress: 'in_progress',
99
+ Ready: 'ready',
100
+ Shipped: 'shipped',
101
+ Blocked: 'blocked'
102
+ } as const;
103
+ export type ReleasePayloadStatusEnum = typeof ReleasePayloadStatusEnum[keyof typeof ReleasePayloadStatusEnum];
104
+
105
+
106
+ /**
107
+ * Check if a given object implements the ReleasePayload interface.
108
+ */
109
+ export function instanceOfReleasePayload(value: object): value is ReleasePayload {
110
+ if (!('name' in value) || value['name'] === undefined) return false;
111
+ if (!('status' in value) || value['status'] === undefined) return false;
112
+ if (!('project' in value) || value['project'] === undefined) return false;
113
+ return true;
114
+ }
115
+
116
+ export function ReleasePayloadFromJSON(json: any): ReleasePayload {
117
+ return ReleasePayloadFromJSONTyped(json, false);
118
+ }
119
+
120
+ export function ReleasePayloadFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleasePayload {
121
+ if (json == null) {
122
+ return json;
123
+ }
124
+ return {
125
+
126
+ 'name': json['name'],
127
+ 'description': json['description'] == null ? undefined : json['description'],
128
+ 'status': json['status'],
129
+ 'targetDate': json['target_date'] == null ? undefined : json['target_date'],
130
+ 'releaseDate': json['release_date'] == null ? undefined : json['release_date'],
131
+ 'goNoGoThreshold': json['go_no_go_threshold'] == null ? undefined : json['go_no_go_threshold'],
132
+ 'isPublic': json['is_public'] == null ? undefined : json['is_public'],
133
+ 'project': json['project'],
134
+ 'testPlans': json['test_plans'] == null ? undefined : json['test_plans'],
135
+ 'requirements': json['requirements'] == null ? undefined : json['requirements'],
136
+ };
137
+ }
138
+
139
+ export function ReleasePayloadToJSON(json: any): ReleasePayload {
140
+ return ReleasePayloadToJSONTyped(json, false);
141
+ }
142
+
143
+ export function ReleasePayloadToJSONTyped(value?: ReleasePayload | null, ignoreDiscriminator: boolean = false): any {
144
+ if (value == null) {
145
+ return value;
146
+ }
147
+
148
+ return {
149
+
150
+ 'name': value['name'],
151
+ 'description': value['description'],
152
+ 'status': value['status'],
153
+ 'target_date': value['targetDate'],
154
+ 'release_date': value['releaseDate'],
155
+ 'go_no_go_threshold': value['goNoGoThreshold'],
156
+ 'is_public': value['isPublic'],
157
+ 'project': value['project'],
158
+ 'test_plans': value['testPlans'],
159
+ 'requirements': value['requirements'],
160
+ };
161
+ }
162
+
@@ -0,0 +1,233 @@
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 { ReleaseMinified } from './ReleaseMinified';
17
+ import {
18
+ ReleaseMinifiedFromJSON,
19
+ ReleaseMinifiedFromJSONTyped,
20
+ ReleaseMinifiedToJSON,
21
+ ReleaseMinifiedToJSONTyped,
22
+ } from './ReleaseMinified';
23
+ import type { ReleaseReadinessComparison } from './ReleaseReadinessComparison';
24
+ import {
25
+ ReleaseReadinessComparisonFromJSON,
26
+ ReleaseReadinessComparisonFromJSONTyped,
27
+ ReleaseReadinessComparisonToJSON,
28
+ ReleaseReadinessComparisonToJSONTyped,
29
+ } from './ReleaseReadinessComparison';
30
+ import type { ReleaseReadinessRequirementCoverage } from './ReleaseReadinessRequirementCoverage';
31
+ import {
32
+ ReleaseReadinessRequirementCoverageFromJSON,
33
+ ReleaseReadinessRequirementCoverageFromJSONTyped,
34
+ ReleaseReadinessRequirementCoverageToJSON,
35
+ ReleaseReadinessRequirementCoverageToJSONTyped,
36
+ } from './ReleaseReadinessRequirementCoverage';
37
+ import type { ReleaseReadinessSummary } from './ReleaseReadinessSummary';
38
+ import {
39
+ ReleaseReadinessSummaryFromJSON,
40
+ ReleaseReadinessSummaryFromJSONTyped,
41
+ ReleaseReadinessSummaryToJSON,
42
+ ReleaseReadinessSummaryToJSONTyped,
43
+ } from './ReleaseReadinessSummary';
44
+ import type { ReleaseReadinessConfigurationCoverage } from './ReleaseReadinessConfigurationCoverage';
45
+ import {
46
+ ReleaseReadinessConfigurationCoverageFromJSON,
47
+ ReleaseReadinessConfigurationCoverageFromJSONTyped,
48
+ ReleaseReadinessConfigurationCoverageToJSON,
49
+ ReleaseReadinessConfigurationCoverageToJSONTyped,
50
+ } from './ReleaseReadinessConfigurationCoverage';
51
+ import type { ReleaseReadinessCustomFieldCoverage } from './ReleaseReadinessCustomFieldCoverage';
52
+ import {
53
+ ReleaseReadinessCustomFieldCoverageFromJSON,
54
+ ReleaseReadinessCustomFieldCoverageFromJSONTyped,
55
+ ReleaseReadinessCustomFieldCoverageToJSON,
56
+ ReleaseReadinessCustomFieldCoverageToJSONTyped,
57
+ } from './ReleaseReadinessCustomFieldCoverage';
58
+ import type { ReleaseReadinessVerdict } from './ReleaseReadinessVerdict';
59
+ import {
60
+ ReleaseReadinessVerdictFromJSON,
61
+ ReleaseReadinessVerdictFromJSONTyped,
62
+ ReleaseReadinessVerdictToJSON,
63
+ ReleaseReadinessVerdictToJSONTyped,
64
+ } from './ReleaseReadinessVerdict';
65
+ import type { ReleaseReadinessEvidence } from './ReleaseReadinessEvidence';
66
+ import {
67
+ ReleaseReadinessEvidenceFromJSON,
68
+ ReleaseReadinessEvidenceFromJSONTyped,
69
+ ReleaseReadinessEvidenceToJSON,
70
+ ReleaseReadinessEvidenceToJSONTyped,
71
+ } from './ReleaseReadinessEvidence';
72
+ import type { ReleaseReadinessDefects } from './ReleaseReadinessDefects';
73
+ import {
74
+ ReleaseReadinessDefectsFromJSON,
75
+ ReleaseReadinessDefectsFromJSONTyped,
76
+ ReleaseReadinessDefectsToJSON,
77
+ ReleaseReadinessDefectsToJSONTyped,
78
+ } from './ReleaseReadinessDefects';
79
+ import type { ReleaseReadinessCoverageItem } from './ReleaseReadinessCoverageItem';
80
+ import {
81
+ ReleaseReadinessCoverageItemFromJSON,
82
+ ReleaseReadinessCoverageItemFromJSONTyped,
83
+ ReleaseReadinessCoverageItemToJSON,
84
+ ReleaseReadinessCoverageItemToJSONTyped,
85
+ } from './ReleaseReadinessCoverageItem';
86
+ import type { ReleaseReadinessTestPlan } from './ReleaseReadinessTestPlan';
87
+ import {
88
+ ReleaseReadinessTestPlanFromJSON,
89
+ ReleaseReadinessTestPlanFromJSONTyped,
90
+ ReleaseReadinessTestPlanToJSON,
91
+ ReleaseReadinessTestPlanToJSONTyped,
92
+ } from './ReleaseReadinessTestPlan';
93
+
94
+ /**
95
+ * Aggregated readiness data for a release. Combines execution results, defect counts, coverage analysis, evidence metrics, and a computed Go/No-Go verdict across all test plans in the release.
96
+ *
97
+ * @export
98
+ * @interface ReleaseReadiness
99
+ */
100
+ export interface ReleaseReadiness {
101
+ /**
102
+ *
103
+ * @type {ReleaseMinified}
104
+ * @memberof ReleaseReadiness
105
+ */
106
+ release: ReleaseMinified;
107
+ /**
108
+ *
109
+ * @type {ReleaseReadinessSummary}
110
+ * @memberof ReleaseReadiness
111
+ */
112
+ summary: ReleaseReadinessSummary;
113
+ /**
114
+ *
115
+ * @type {ReleaseReadinessDefects}
116
+ * @memberof ReleaseReadiness
117
+ */
118
+ defects: ReleaseReadinessDefects;
119
+ /**
120
+ *
121
+ * @type {Array<ReleaseReadinessCoverageItem>}
122
+ * @memberof ReleaseReadiness
123
+ */
124
+ coverage: Array<ReleaseReadinessCoverageItem>;
125
+ /**
126
+ *
127
+ * @type {ReleaseReadinessEvidence}
128
+ * @memberof ReleaseReadiness
129
+ */
130
+ evidence: ReleaseReadinessEvidence;
131
+ /**
132
+ *
133
+ * @type {ReleaseReadinessComparison}
134
+ * @memberof ReleaseReadiness
135
+ */
136
+ comparison?: ReleaseReadinessComparison;
137
+ /**
138
+ *
139
+ * @type {ReleaseReadinessVerdict}
140
+ * @memberof ReleaseReadiness
141
+ */
142
+ verdict: ReleaseReadinessVerdict;
143
+ /**
144
+ *
145
+ * @type {Array<ReleaseReadinessTestPlan>}
146
+ * @memberof ReleaseReadiness
147
+ */
148
+ testPlans: Array<ReleaseReadinessTestPlan>;
149
+ /**
150
+ *
151
+ * @type {ReleaseReadinessRequirementCoverage}
152
+ * @memberof ReleaseReadiness
153
+ */
154
+ requirementCoverage?: ReleaseReadinessRequirementCoverage;
155
+ /**
156
+ * Coverage breakdown by non-text custom fields. Only present when eligible custom fields exist for the project.
157
+ *
158
+ * @type {Array<ReleaseReadinessCustomFieldCoverage>}
159
+ * @memberof ReleaseReadiness
160
+ */
161
+ customFieldCoverage?: Array<ReleaseReadinessCustomFieldCoverage>;
162
+ /**
163
+ * Coverage breakdown by test plan configuration. Only present when test plans in the release have configurations defined.
164
+ *
165
+ * @type {Array<ReleaseReadinessConfigurationCoverage>}
166
+ * @memberof ReleaseReadiness
167
+ */
168
+ configurationCoverage?: Array<ReleaseReadinessConfigurationCoverage>;
169
+ }
170
+
171
+ /**
172
+ * Check if a given object implements the ReleaseReadiness interface.
173
+ */
174
+ export function instanceOfReleaseReadiness(value: object): value is ReleaseReadiness {
175
+ if (!('release' in value) || value['release'] === undefined) return false;
176
+ if (!('summary' in value) || value['summary'] === undefined) return false;
177
+ if (!('defects' in value) || value['defects'] === undefined) return false;
178
+ if (!('coverage' in value) || value['coverage'] === undefined) return false;
179
+ if (!('evidence' in value) || value['evidence'] === undefined) return false;
180
+ if (!('verdict' in value) || value['verdict'] === undefined) return false;
181
+ if (!('testPlans' in value) || value['testPlans'] === undefined) return false;
182
+ return true;
183
+ }
184
+
185
+ export function ReleaseReadinessFromJSON(json: any): ReleaseReadiness {
186
+ return ReleaseReadinessFromJSONTyped(json, false);
187
+ }
188
+
189
+ export function ReleaseReadinessFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadiness {
190
+ if (json == null) {
191
+ return json;
192
+ }
193
+ return {
194
+
195
+ 'release': json['release'],
196
+ 'summary': json['summary'],
197
+ 'defects': json['defects'],
198
+ 'coverage': ((json['coverage'] as Array<any>).map(ReleaseReadinessCoverageItemFromJSON)),
199
+ 'evidence': json['evidence'],
200
+ 'comparison': json['comparison'] == null ? undefined : json['comparison'],
201
+ 'verdict': json['verdict'],
202
+ 'testPlans': ((json['test_plans'] as Array<any>).map(ReleaseReadinessTestPlanFromJSON)),
203
+ 'requirementCoverage': json['requirement_coverage'] == null ? undefined : json['requirement_coverage'],
204
+ 'customFieldCoverage': json['custom_field_coverage'] == null ? undefined : ((json['custom_field_coverage'] as Array<any>).map(ReleaseReadinessCustomFieldCoverageFromJSON)),
205
+ 'configurationCoverage': json['configuration_coverage'] == null ? undefined : ((json['configuration_coverage'] as Array<any>).map(ReleaseReadinessConfigurationCoverageFromJSON)),
206
+ };
207
+ }
208
+
209
+ export function ReleaseReadinessToJSON(json: any): ReleaseReadiness {
210
+ return ReleaseReadinessToJSONTyped(json, false);
211
+ }
212
+
213
+ export function ReleaseReadinessToJSONTyped(value?: ReleaseReadiness | null, ignoreDiscriminator: boolean = false): any {
214
+ if (value == null) {
215
+ return value;
216
+ }
217
+
218
+ return {
219
+
220
+ 'release': value['release'],
221
+ 'summary': value['summary'],
222
+ 'defects': value['defects'],
223
+ 'coverage': ((value['coverage'] as Array<any>).map(ReleaseReadinessCoverageItemToJSON)),
224
+ 'evidence': value['evidence'],
225
+ 'comparison': value['comparison'],
226
+ 'verdict': value['verdict'],
227
+ 'test_plans': ((value['testPlans'] as Array<any>).map(ReleaseReadinessTestPlanToJSON)),
228
+ 'requirement_coverage': value['requirementCoverage'],
229
+ 'custom_field_coverage': value['customFieldCoverage'] == null ? undefined : ((value['customFieldCoverage'] as Array<any>).map(ReleaseReadinessCustomFieldCoverageToJSON)),
230
+ 'configuration_coverage': value['configurationCoverage'] == null ? undefined : ((value['configurationCoverage'] as Array<any>).map(ReleaseReadinessConfigurationCoverageToJSON)),
231
+ };
232
+ }
233
+
@@ -0,0 +1,98 @@
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 { ReleaseMinified } from './ReleaseMinified';
17
+ import {
18
+ ReleaseMinifiedFromJSON,
19
+ ReleaseMinifiedFromJSONTyped,
20
+ ReleaseMinifiedToJSON,
21
+ ReleaseMinifiedToJSONTyped,
22
+ } from './ReleaseMinified';
23
+
24
+ /**
25
+ * Comparison of this release's readiness metrics against the previous release in the same project. Null if no previous release exists.
26
+ *
27
+ * @export
28
+ * @interface ReleaseReadinessComparison
29
+ */
30
+ export interface ReleaseReadinessComparison {
31
+ /**
32
+ *
33
+ * @type {ReleaseMinified}
34
+ * @memberof ReleaseReadinessComparison
35
+ */
36
+ previousRelease?: ReleaseMinified;
37
+ /**
38
+ * Pass rate of the previous release
39
+ * @type {number}
40
+ * @memberof ReleaseReadinessComparison
41
+ */
42
+ previousPassRate?: number;
43
+ /**
44
+ * Difference in pass rate (current - previous). Negative means regression.
45
+ * @type {number}
46
+ * @memberof ReleaseReadinessComparison
47
+ */
48
+ passRateDelta?: number;
49
+ /**
50
+ * Number of open defects in the previous release at time of shipping
51
+ * @type {number}
52
+ * @memberof ReleaseReadinessComparison
53
+ */
54
+ previousOpenDefects?: number;
55
+ }
56
+
57
+ /**
58
+ * Check if a given object implements the ReleaseReadinessComparison interface.
59
+ */
60
+ export function instanceOfReleaseReadinessComparison(value: object): value is ReleaseReadinessComparison {
61
+ return true;
62
+ }
63
+
64
+ export function ReleaseReadinessComparisonFromJSON(json: any): ReleaseReadinessComparison {
65
+ return ReleaseReadinessComparisonFromJSONTyped(json, false);
66
+ }
67
+
68
+ export function ReleaseReadinessComparisonFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReleaseReadinessComparison {
69
+ if (json == null) {
70
+ return json;
71
+ }
72
+ return {
73
+
74
+ 'previousRelease': json['previous_release'] == null ? undefined : json['previous_release'],
75
+ 'previousPassRate': json['previous_pass_rate'] == null ? undefined : json['previous_pass_rate'],
76
+ 'passRateDelta': json['pass_rate_delta'] == null ? undefined : json['pass_rate_delta'],
77
+ 'previousOpenDefects': json['previous_open_defects'] == null ? undefined : json['previous_open_defects'],
78
+ };
79
+ }
80
+
81
+ export function ReleaseReadinessComparisonToJSON(json: any): ReleaseReadinessComparison {
82
+ return ReleaseReadinessComparisonToJSONTyped(json, false);
83
+ }
84
+
85
+ export function ReleaseReadinessComparisonToJSONTyped(value?: ReleaseReadinessComparison | null, ignoreDiscriminator: boolean = false): any {
86
+ if (value == null) {
87
+ return value;
88
+ }
89
+
90
+ return {
91
+
92
+ 'previous_release': value['previousRelease'],
93
+ 'previous_pass_rate': value['previousPassRate'],
94
+ 'pass_rate_delta': value['passRateDelta'],
95
+ 'previous_open_defects': value['previousOpenDefects'],
96
+ };
97
+ }
98
+