@elisra-devops/docgen-data-provider 0.4.6 → 0.4.13

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 (68) hide show
  1. package/.github/sonar-project.properties +4 -4
  2. package/.github/workflows/ci.yml +21 -21
  3. package/.github/workflows/release.yml +45 -40
  4. package/LICENSE +21 -21
  5. package/README.md +39 -38
  6. package/bin/helpers/helper.d.ts +37 -0
  7. package/bin/helpers/helper.js +83 -0
  8. package/bin/helpers/helper.js.map +1 -0
  9. package/bin/helpers/tfs.d.ts +5 -0
  10. package/bin/helpers/tfs.js +100 -0
  11. package/bin/helpers/tfs.js.map +1 -0
  12. package/bin/index.d.ts +16 -0
  13. package/bin/index.js +53 -0
  14. package/bin/index.js.map +1 -0
  15. package/bin/models/tfs-data.d.ts +86 -0
  16. package/bin/models/tfs-data.js +63 -0
  17. package/bin/models/tfs-data.js.map +1 -0
  18. package/bin/modules/GitDataProvider.d.ts +26 -0
  19. package/bin/modules/GitDataProvider.js +301 -0
  20. package/bin/modules/GitDataProvider.js.map +1 -0
  21. package/bin/modules/MangementDataProvider.d.ts +9 -0
  22. package/bin/modules/MangementDataProvider.js +62 -0
  23. package/bin/modules/MangementDataProvider.js.map +1 -0
  24. package/bin/modules/PipelinesDataProvider.d.ts +13 -0
  25. package/bin/modules/PipelinesDataProvider.js +103 -0
  26. package/bin/modules/PipelinesDataProvider.js.map +1 -0
  27. package/bin/modules/TestDataProvider.d.ts +24 -0
  28. package/bin/modules/TestDataProvider.js +294 -0
  29. package/bin/modules/TestDataProvider.js.map +1 -0
  30. package/bin/modules/TicketsDataProvider.d.ts +26 -0
  31. package/bin/modules/TicketsDataProvider.js +385 -0
  32. package/bin/modules/TicketsDataProvider.js.map +1 -0
  33. package/bin/modules/test/gitDataProvider.test.d.ts +1 -0
  34. package/bin/modules/test/gitDataProvider.test.js +138 -0
  35. package/bin/modules/test/gitDataProvider.test.js.map +1 -0
  36. package/bin/modules/test/managmentDataProvider.test.d.ts +1 -0
  37. package/bin/modules/test/managmentDataProvider.test.js +40 -0
  38. package/bin/modules/test/managmentDataProvider.test.js.map +1 -0
  39. package/bin/modules/test/pipelineDataProvider.test.d.ts +1 -0
  40. package/bin/modules/test/pipelineDataProvider.test.js +62 -0
  41. package/bin/modules/test/pipelineDataProvider.test.js.map +1 -0
  42. package/bin/modules/test/testDataProvider.test.d.ts +1 -0
  43. package/bin/modules/test/testDataProvider.test.js +103 -0
  44. package/bin/modules/test/testDataProvider.test.js.map +1 -0
  45. package/bin/modules/test/ticketsDataProvider.test.d.ts +1 -0
  46. package/bin/modules/test/ticketsDataProvider.test.js +103 -0
  47. package/bin/modules/test/ticketsDataProvider.test.js.map +1 -0
  48. package/bin/utils/logger.d.ts +3 -0
  49. package/bin/utils/logger.js +33 -0
  50. package/bin/utils/logger.js.map +1 -0
  51. package/enviroment.d.ts +12 -12
  52. package/package.json +53 -53
  53. package/src/helpers/helper.ts +117 -117
  54. package/src/helpers/tfs.ts +92 -92
  55. package/src/index.ts +36 -36
  56. package/src/models/tfs-data.ts +136 -136
  57. package/src/modules/GitDataProvider.ts +446 -446
  58. package/src/modules/MangementDataProvider.ts +59 -59
  59. package/src/modules/PipelinesDataProvider.ts +142 -142
  60. package/src/modules/TestDataProvider.ts +423 -423
  61. package/src/modules/TicketsDataProvider.ts +435 -435
  62. package/src/modules/test/gitDataProvider.test.ts +207 -207
  63. package/src/modules/test/managmentDataProvider.test.ts +33 -33
  64. package/src/modules/test/pipelineDataProvider.test.ts +79 -79
  65. package/src/modules/test/testDataProvider.test.ts +139 -139
  66. package/src/modules/test/ticketsDataProvider.test.ts +138 -138
  67. package/src/utils/logger.ts +37 -37
  68. package/tsconfig.json +27 -27
@@ -0,0 +1,24 @@
1
+ import { suiteData } from "../helpers/helper";
2
+ import { TestSteps } from "../models/tfs-data";
3
+ export default class TestDataProvider {
4
+ orgUrl: string;
5
+ token: string;
6
+ constructor(orgUrl: string, token: string);
7
+ GetTestSuiteByTestCase(testCaseId: string): Promise<any>;
8
+ GetTestPlans(project: string): Promise<string>;
9
+ GetTestSuites(project: string, planId: string): Promise<any>;
10
+ GetTestSuitesForPlan(project: string, planid: string): Promise<any>;
11
+ GetTestSuitesByPlan(project: string, planId: string, recursive: boolean): Promise<any>;
12
+ GetTestSuiteById(project: string, planId: string, suiteId: string, recursive: boolean): Promise<any>;
13
+ GetTestCasesBySuites(project: string, planId: string, suiteId: string, recursiv: boolean): Promise<Array<any>>;
14
+ StructureTestCase(project: string, testCases: any, suite: suiteData): Promise<Array<any>>;
15
+ ParseSteps(steps: string): TestSteps[];
16
+ GetTestCases(project: string, planId: string, suiteId: string): Promise<any>;
17
+ GetTestPoint(project: string, planId: string, suiteId: string, testCaseId: string): Promise<any>;
18
+ CreateTestRun(projectName: string, testRunName: string, testPlanId: string, testPointId: string): Promise<any>;
19
+ UpdateTestRun(projectName: string, runId: string, state: string): Promise<any>;
20
+ UpdateTestCase(projectName: string, runId: string, state: number): Promise<any>;
21
+ UploadTestAttachment(runID: string, projectName: string, stream: any, fileName: string, comment: string, attachmentType: string): Promise<any>;
22
+ GetTestRunById(projectName: string, runId: string): Promise<any>;
23
+ GetTestPointByTestCaseId(projectName: string, testCaseId: string): Promise<any>;
24
+ }
@@ -0,0 +1,294 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const tfs_1 = require("../helpers/tfs");
13
+ const helper_1 = require("../helpers/helper");
14
+ const tfs_data_1 = require("../models/tfs-data");
15
+ const tfs_data_2 = require("../models/tfs-data");
16
+ const xml2js = require("xml2js");
17
+ const logger_1 = require("../utils/logger");
18
+ class TestDataProvider {
19
+ constructor(orgUrl, token) {
20
+ this.orgUrl = "";
21
+ this.token = "";
22
+ this.orgUrl = orgUrl;
23
+ this.token = token;
24
+ }
25
+ GetTestSuiteByTestCase(testCaseId) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ let url = `${this.orgUrl}/_apis/testplan/suites?testCaseId=${testCaseId}`;
28
+ let testCaseData = yield tfs_1.TFSServices.getItemContent(url, this.token);
29
+ return testCaseData;
30
+ });
31
+ }
32
+ //get all test plans in the project
33
+ GetTestPlans(project) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ let testPlanUrl = `${this.orgUrl}${project}/_apis/test/plans`;
36
+ return tfs_1.TFSServices.getItemContent(testPlanUrl, this.token);
37
+ });
38
+ }
39
+ // get all test suits in projct test plan
40
+ GetTestSuites(project, planId) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ let testsuitesUrl = this.orgUrl + project + "/_apis/test/Plans/" + planId + "/suites";
43
+ try {
44
+ let testSuites = yield tfs_1.TFSServices.getItemContent(testsuitesUrl, this.token);
45
+ return testSuites;
46
+ }
47
+ catch (e) { }
48
+ });
49
+ }
50
+ GetTestSuitesForPlan(project, planid) {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ let url = this.orgUrl +
53
+ "/" +
54
+ project +
55
+ "/_api/_testManagement/GetTestSuitesForPlan?__v=5&planId=" +
56
+ planid;
57
+ let suites = yield tfs_1.TFSServices.getItemContent(url, this.token);
58
+ return suites;
59
+ });
60
+ }
61
+ GetTestSuitesByPlan(project, planId, recursive) {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ let suiteId = Number(planId) + 1;
64
+ let suites = yield this.GetTestSuiteById(project, planId, suiteId.toString(), recursive);
65
+ return suites;
66
+ });
67
+ }
68
+ //gets all testsuits recorsivly under test suite
69
+ GetTestSuiteById(project, planId, suiteId, recursive) {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ let testSuites = yield this.GetTestSuitesForPlan(project, planId);
72
+ // GetTestSuites(project, planId);
73
+ helper_1.Helper.suitList = [];
74
+ helper_1.Helper.level = 1;
75
+ let dataSuites = helper_1.Helper.findSuitesRecursive(planId, this.orgUrl, project, testSuites.testSuites, suiteId, recursive);
76
+ helper_1.Helper.first = true;
77
+ // let levledSuites: any = Helper.buildSuiteslevel(dataSuites);
78
+ return dataSuites;
79
+ });
80
+ }
81
+ //gets all testcase under test suite acording to recursive flag
82
+ GetTestCasesBySuites(project, planId, suiteId, recursiv) {
83
+ return __awaiter(this, void 0, void 0, function* () {
84
+ let testCasesList = new Array();
85
+ let suitesTestCasesList = yield this.GetTestSuiteById(project, planId, suiteId, recursiv);
86
+ for (let i = 0; i < suitesTestCasesList.length; i++) {
87
+ let testCases = yield this.GetTestCases(project, planId, suitesTestCasesList[i].id);
88
+ let testCseseWithSteps = yield this.StructureTestCase(project, testCases, suitesTestCasesList[i]);
89
+ if (testCseseWithSteps.length > 0)
90
+ testCasesList = [...testCasesList, ...testCseseWithSteps];
91
+ }
92
+ return testCasesList;
93
+ });
94
+ }
95
+ StructureTestCase(project, testCases, suite) {
96
+ return __awaiter(this, void 0, void 0, function* () {
97
+ let url = this.orgUrl + project + "/_workitems/edit/";
98
+ let testCasesUrlList = new Array();
99
+ //let tesrCase:TestCase;
100
+ for (let i = 0; i < testCases.count; i++) {
101
+ try {
102
+ let test = yield tfs_1.TFSServices.getItemContent(testCases.value[i].testCase.url, this.token);
103
+ let testCase = new tfs_data_2.TestCase();
104
+ testCase.title = test.fields["System.Title"];
105
+ testCase.area = test.fields["System.AreaPath"];
106
+ testCase.description = test.fields["System.Description"];
107
+ testCase.url = url + test.id;
108
+ //testCase.steps = test.fields["Microsoft.VSTS.TCM.Steps"];
109
+ testCase.id = test.id;
110
+ testCase.suit = suite.id;
111
+ if (test.fields["Microsoft.VSTS.TCM.Steps"] != null) {
112
+ let steps = this.ParseSteps(test.fields["Microsoft.VSTS.TCM.Steps"]);
113
+ testCase.steps = steps;
114
+ }
115
+ testCasesUrlList.push(testCase);
116
+ }
117
+ catch (_a) {
118
+ logger_1.default.error(`ran into an issue while retriving testCase ${testCases.value[i].testCase.id}`);
119
+ }
120
+ }
121
+ return testCasesUrlList;
122
+ });
123
+ }
124
+ ParseSteps(steps) {
125
+ let stepsLsist = new Array();
126
+ const start = ";P&gt;";
127
+ const end = "&lt;/P";
128
+ let totalString = steps;
129
+ xml2js.parseString(steps, function (err, result) {
130
+ if (err)
131
+ console.log(err);
132
+ if (result.steps.step != null)
133
+ for (let i = 0; i < result.steps.step.length; i++) {
134
+ let step = new tfs_data_1.TestSteps();
135
+ try {
136
+ if (result.steps.step[i].parameterizedString[0]._ != null)
137
+ step.action = result.steps.step[i].parameterizedString[0]._;
138
+ }
139
+ catch (e) {
140
+ logger_1.default.warn(`No test step action data to parse for testcase `);
141
+ }
142
+ try {
143
+ if (result.steps.step[i].parameterizedString[1]._ != null)
144
+ step.expected = result.steps.step[i].parameterizedString[1]._;
145
+ }
146
+ catch (e) {
147
+ logger_1.default.warn(`No test step expected data to parse for testcase `);
148
+ }
149
+ stepsLsist.push(step);
150
+ }
151
+ });
152
+ return stepsLsist;
153
+ }
154
+ GetTestCases(project, planId, suiteId) {
155
+ return __awaiter(this, void 0, void 0, function* () {
156
+ let testCaseUrl = this.orgUrl +
157
+ project +
158
+ "/_apis/test/Plans/" +
159
+ planId +
160
+ "/suites/" +
161
+ suiteId +
162
+ "/testcases/";
163
+ let testCases = yield tfs_1.TFSServices.getItemContent(testCaseUrl, this.token);
164
+ return testCases;
165
+ });
166
+ }
167
+ //gets all test point in a test case
168
+ GetTestPoint(project, planId, suiteId, testCaseId) {
169
+ return __awaiter(this, void 0, void 0, function* () {
170
+ let testPointUrl = `${this.orgUrl}${project}/_apis/test/Plans/${planId}/Suites/${suiteId}/points?testCaseId=${testCaseId}`;
171
+ let testPoints = yield tfs_1.TFSServices.getItemContent(testPointUrl, this.token);
172
+ return testPoints;
173
+ });
174
+ }
175
+ CreateTestRun(projectName, testRunName, testPlanId, testPointId) {
176
+ return __awaiter(this, void 0, void 0, function* () {
177
+ try {
178
+ logger_1.default.info(`Create test run op test point ${testPointId} ,test planId : ${testPlanId}`);
179
+ let Url = `${this.orgUrl}${projectName}/_apis/test/runs`;
180
+ let data = {
181
+ name: testRunName,
182
+ plan: {
183
+ id: testPlanId,
184
+ },
185
+ pointIds: [testPointId],
186
+ };
187
+ let res = yield tfs_1.TFSServices.postRequest(Url, this.token, "Post", data, null);
188
+ return res;
189
+ }
190
+ catch (err) {
191
+ logger_1.default.error(`Error : ${err}`);
192
+ throw new Error(String(err));
193
+ }
194
+ });
195
+ }
196
+ UpdateTestRun(projectName, runId, state) {
197
+ return __awaiter(this, void 0, void 0, function* () {
198
+ logger_1.default.info(`Update runId : ${runId} to state : ${state}`);
199
+ let Url = `${this.orgUrl}${projectName}/_apis/test/Runs/${runId}?api-version=5.0`;
200
+ let data = {
201
+ state: state,
202
+ };
203
+ let res = yield tfs_1.TFSServices.postRequest(Url, this.token, "PATCH", data, null);
204
+ return res;
205
+ });
206
+ }
207
+ UpdateTestCase(projectName, runId, state) {
208
+ return __awaiter(this, void 0, void 0, function* () {
209
+ let data;
210
+ logger_1.default.info(`Update test case, runId : ${runId} to state : ${state}`);
211
+ let Url = `${this.orgUrl}${projectName}/_apis/test/Runs/${runId}/results?api-version=5.0`;
212
+ switch (state) {
213
+ case 0:
214
+ logger_1.default.info(`Reset test case to Active state `);
215
+ data = [
216
+ {
217
+ id: 100000,
218
+ outcome: "0",
219
+ },
220
+ ];
221
+ break;
222
+ case 1:
223
+ logger_1.default.info(`Update test case to complite state `);
224
+ data = [
225
+ {
226
+ id: 100000,
227
+ state: "Completed",
228
+ outcome: "1",
229
+ },
230
+ ];
231
+ break;
232
+ case 2:
233
+ logger_1.default.info(`Update test case to passed state `);
234
+ data = [
235
+ {
236
+ id: 100000,
237
+ state: "Completed",
238
+ outcome: "2",
239
+ },
240
+ ];
241
+ break;
242
+ case 3:
243
+ logger_1.default.info(`Update test case to failed state `);
244
+ data = [
245
+ {
246
+ id: 100000,
247
+ state: "Completed",
248
+ outcome: "3",
249
+ },
250
+ ];
251
+ break;
252
+ }
253
+ let res = yield tfs_1.TFSServices.postRequest(Url, this.token, "PATCH", data, null);
254
+ return res;
255
+ });
256
+ }
257
+ UploadTestAttachment(runID, projectName, stream, fileName, comment, attachmentType) {
258
+ return __awaiter(this, void 0, void 0, function* () {
259
+ logger_1.default.info(`Upload attachment to test run : ${runID}`);
260
+ let Url = `${this.orgUrl}${projectName}/_apis/test/Runs/${runID}/attachments?api-version=5.0-preview.1`;
261
+ let data = {
262
+ stream: stream,
263
+ fileName: fileName,
264
+ comment: comment,
265
+ attachmentType: attachmentType,
266
+ };
267
+ let res = yield tfs_1.TFSServices.postRequest(Url, this.token, "Post", data, null);
268
+ return res;
269
+ });
270
+ }
271
+ GetTestRunById(projectName, runId) {
272
+ return __awaiter(this, void 0, void 0, function* () {
273
+ logger_1.default.info(`getting test run id: ${runId}`);
274
+ let url = `${this.orgUrl}${projectName}/_apis/test/Runs/${runId}`;
275
+ let res = yield tfs_1.TFSServices.getItemContent(url, this.token, "get", null, null);
276
+ return res;
277
+ });
278
+ }
279
+ GetTestPointByTestCaseId(projectName, testCaseId) {
280
+ return __awaiter(this, void 0, void 0, function* () {
281
+ logger_1.default.info(`get test points at project ${projectName} , of testCaseId : ${testCaseId}`);
282
+ let url = `${this.orgUrl}${projectName}/_apis/test/points`;
283
+ let data = {
284
+ PointsFilter: {
285
+ TestcaseIds: [testCaseId],
286
+ },
287
+ };
288
+ let res = yield tfs_1.TFSServices.postRequest(url, this.token, "Post", data, null);
289
+ return res;
290
+ });
291
+ }
292
+ }
293
+ exports.default = TestDataProvider;
294
+ //# sourceMappingURL=TestDataProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestDataProvider.js","sourceRoot":"","sources":["../../src/modules/TestDataProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { Links, Trace, Relations } from "../helpers/helper";
2
+ import { Query } from "../models/tfs-data";
3
+ export default class TicketsDataProvider {
4
+ orgUrl: string;
5
+ token: string;
6
+ queriesList: Array<any>;
7
+ constructor(orgUrl: string, token: string);
8
+ GetWorkItem(project: string, id: string): Promise<any>;
9
+ GetLinksByIds(project: string, ids: any): Promise<Trace[]>;
10
+ GetParentLink(project: string, wi: any): Promise<Trace>;
11
+ GetRelationsIds(ids: any): Promise<Map<string, Relations>>;
12
+ GetLinks(project: string, wi: any, links: any): Promise<Links[]>;
13
+ GetSharedQueries(project: string, path: string): Promise<any>;
14
+ GetModeledQuery(list: Array<any>): Array<any>;
15
+ GetQueryResultsByWiqlHref(wiqlHref: string, project: string): Promise<any>;
16
+ GetQueryResultsByWiqlString(wiql: string, projectName: string): Promise<any>;
17
+ GetQueryResultById(query: string, project: string): Promise<any>;
18
+ PopulateWorkItemsByIds(workItemsArray?: any[], projectName?: string): Promise<any[]>;
19
+ GetModeledQueryResults(results: any, project: string): Promise<Query>;
20
+ BuildColumns(results: any, queryResult: Query): void;
21
+ GetIterationsByTeamName(projectName: string, teamName: string): Promise<any[]>;
22
+ CreateNewWorkItem(projectName: string, wiBody: any, wiType: string, byPass: boolean): Promise<any>;
23
+ GetWorkitemAttachments(project: string, id: string): Promise<string[]>;
24
+ GetWorkitemAttachmentsJSONData(project: string, attachmentId: string): Promise<any>;
25
+ UpdateWorkItem(projectName: string, wiBody: any, workItemId: number, byPass: boolean): Promise<any>;
26
+ }