@elisra-devops/docgen-data-provider 0.4.13 → 0.4.15
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.
- package/.github/workflows/ci.yml +0 -3
- package/README.md +1 -1
- package/bin/models/tfs-data.d.ts +12 -5
- package/bin/models/tfs-data.js +3 -0
- package/bin/models/tfs-data.js.map +1 -1
- package/bin/modules/TestDataProvider.d.ts +2 -2
- package/bin/modules/TestDataProvider.js +35 -5
- package/bin/modules/TestDataProvider.js.map +1 -1
- package/bin/modules/test/testDataProvider.test.js +2 -2
- package/bin/modules/test/testDataProvider.test.js.map +1 -1
- package/package.json +1 -1
- package/src/models/tfs-data.ts +17 -5
- package/src/modules/TestDataProvider.ts +49 -8
- package/src/modules/test/testDataProvider.test.ts +4 -0
package/.github/workflows/ci.yml
CHANGED
package/README.md
CHANGED
package/bin/models/tfs-data.d.ts
CHANGED
|
@@ -71,14 +71,21 @@ export interface RootObject {
|
|
|
71
71
|
pullRequestThreadContext: PullRequestThreadContext;
|
|
72
72
|
}
|
|
73
73
|
export declare class TestCase {
|
|
74
|
-
id:
|
|
75
|
-
title:
|
|
76
|
-
description:
|
|
77
|
-
area:
|
|
74
|
+
id: string;
|
|
75
|
+
title: string;
|
|
76
|
+
description: string;
|
|
77
|
+
area: string;
|
|
78
78
|
steps: TestSteps[];
|
|
79
79
|
suit: string;
|
|
80
80
|
url: string;
|
|
81
|
-
|
|
81
|
+
relations: Relation[];
|
|
82
|
+
constructor();
|
|
83
|
+
}
|
|
84
|
+
export declare type Relation = {
|
|
85
|
+
id: string;
|
|
86
|
+
title: string;
|
|
87
|
+
customerId?: string;
|
|
88
|
+
};
|
|
82
89
|
export declare class TestSteps {
|
|
83
90
|
action: String;
|
|
84
91
|
expected: String;
|
package/bin/models/tfs-data.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tfs-data.js","sourceRoot":"","sources":["../../src/models/tfs-data.ts"],"names":[],"mappings":";;;AACA,MAAa,aAAa;CAGzB;AAHD,sCAGC;AAED,MAAa,KAAK;IAAlB;QAIE,YAAO,GAAa,IAAI,KAAK,EAAU,CAAC;QACxC,qDAAqD;QACrD,cAAS,GAAe,IAAI,KAAK,EAAY,CAAC;IAChD,CAAC;CAAA;AAPD,sBAOC;AACD,MAAM,SAAS;IAAf;QAIE,YAAO,GAAa,IAAI,KAAK,EAAU,CAAC;QACxC,qDAAqD;QACrD,cAAS,GAAuB,IAAI,KAAK,EAAoB,CAAC;IAChE,CAAC;CAAA;AAED,MAAa,MAAM;CAIlB;AAJD,wBAIC;AAED,MAAM,UAAU;CAGf;AAED,MAAM,KAAK;CAIV;AAED,MAAa,QAAQ;IAArB;QAKE,WAAM,GAAW,CAAC,CAAC;IAGrB,CAAC;CAAA;AARD,4BAQC;AACD,MAAa,KAAK;CAGjB;AAHD,sBAGC;AACD,IAAK,eAGJ;AAHD,WAAK,eAAe;IAClB,6DAAY,CAAA;IACZ,qEAAgB,CAAA;AAClB,CAAC,EAHI,eAAe,KAAf,eAAe,QAGnB;AACD,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,0BAAa,CAAA;IACb,8BAAiB,CAAA;AACnB,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB;AAED,MAAM,gBAAgB;CAIrB;AAED,MAAM,YAAY;CAGjB;AAED,MAAM,MAAM;CAGX;AAED,MAAM,MAAM;CAGX;AA0CD,MAAa,QAAQ;
|
|
1
|
+
{"version":3,"file":"tfs-data.js","sourceRoot":"","sources":["../../src/models/tfs-data.ts"],"names":[],"mappings":";;;AACA,MAAa,aAAa;CAGzB;AAHD,sCAGC;AAED,MAAa,KAAK;IAAlB;QAIE,YAAO,GAAa,IAAI,KAAK,EAAU,CAAC;QACxC,qDAAqD;QACrD,cAAS,GAAe,IAAI,KAAK,EAAY,CAAC;IAChD,CAAC;CAAA;AAPD,sBAOC;AACD,MAAM,SAAS;IAAf;QAIE,YAAO,GAAa,IAAI,KAAK,EAAU,CAAC;QACxC,qDAAqD;QACrD,cAAS,GAAuB,IAAI,KAAK,EAAoB,CAAC;IAChE,CAAC;CAAA;AAED,MAAa,MAAM;CAIlB;AAJD,wBAIC;AAED,MAAM,UAAU;CAGf;AAED,MAAM,KAAK;CAIV;AAED,MAAa,QAAQ;IAArB;QAKE,WAAM,GAAW,CAAC,CAAC;IAGrB,CAAC;CAAA;AARD,4BAQC;AACD,MAAa,KAAK;CAGjB;AAHD,sBAGC;AACD,IAAK,eAGJ;AAHD,WAAK,eAAe;IAClB,6DAAY,CAAA;IACZ,qEAAgB,CAAA;AAClB,CAAC,EAHI,eAAe,KAAf,eAAe,QAGnB;AACD,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,0BAAa,CAAA;IACb,8BAAiB,CAAA;AACnB,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB;AAED,MAAM,gBAAgB;CAIrB;AAED,MAAM,YAAY;CAGjB;AAED,MAAM,MAAM;CAGX;AAED,MAAM,MAAM;CAGX;AA0CD,MAAa,QAAQ;IAUnB;QACE,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;CACF;AAbD,4BAaC;AAQD,MAAa,SAAS;CAGrB;AAHD,8BAGC"}
|
|
@@ -10,8 +10,8 @@ export default class TestDataProvider {
|
|
|
10
10
|
GetTestSuitesForPlan(project: string, planid: string): Promise<any>;
|
|
11
11
|
GetTestSuitesByPlan(project: string, planId: string, recursive: boolean): Promise<any>;
|
|
12
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>>;
|
|
13
|
+
GetTestCasesBySuites(project: string, planId: string, suiteId: string, recursiv: boolean, relations: boolean, CustomerRequirementId: boolean): Promise<Array<any>>;
|
|
14
|
+
StructureTestCase(project: string, testCases: any, suite: suiteData, relations: boolean, CustomerRequirementId: boolean): Promise<Array<any>>;
|
|
15
15
|
ParseSteps(steps: string): TestSteps[];
|
|
16
16
|
GetTestCases(project: string, planId: string, suiteId: string): Promise<any>;
|
|
17
17
|
GetTestPoint(project: string, planId: string, suiteId: string, testCaseId: string): Promise<any>;
|
|
@@ -71,7 +71,6 @@ class TestDataProvider {
|
|
|
71
71
|
let testSuites = yield this.GetTestSuitesForPlan(project, planId);
|
|
72
72
|
// GetTestSuites(project, planId);
|
|
73
73
|
helper_1.Helper.suitList = [];
|
|
74
|
-
helper_1.Helper.level = 1;
|
|
75
74
|
let dataSuites = helper_1.Helper.findSuitesRecursive(planId, this.orgUrl, project, testSuites.testSuites, suiteId, recursive);
|
|
76
75
|
helper_1.Helper.first = true;
|
|
77
76
|
// let levledSuites: any = Helper.buildSuiteslevel(dataSuites);
|
|
@@ -79,27 +78,28 @@ class TestDataProvider {
|
|
|
79
78
|
});
|
|
80
79
|
}
|
|
81
80
|
//gets all testcase under test suite acording to recursive flag
|
|
82
|
-
GetTestCasesBySuites(project, planId, suiteId, recursiv) {
|
|
81
|
+
GetTestCasesBySuites(project, planId, suiteId, recursiv, relations, CustomerRequirementId) {
|
|
83
82
|
return __awaiter(this, void 0, void 0, function* () {
|
|
84
83
|
let testCasesList = new Array();
|
|
85
84
|
let suitesTestCasesList = yield this.GetTestSuiteById(project, planId, suiteId, recursiv);
|
|
86
85
|
for (let i = 0; i < suitesTestCasesList.length; i++) {
|
|
87
86
|
let testCases = yield this.GetTestCases(project, planId, suitesTestCasesList[i].id);
|
|
88
|
-
let testCseseWithSteps = yield this.StructureTestCase(project, testCases, suitesTestCasesList[i]);
|
|
87
|
+
let testCseseWithSteps = yield this.StructureTestCase(project, testCases, suitesTestCasesList[i], relations, CustomerRequirementId);
|
|
89
88
|
if (testCseseWithSteps.length > 0)
|
|
90
89
|
testCasesList = [...testCasesList, ...testCseseWithSteps];
|
|
91
90
|
}
|
|
92
91
|
return testCasesList;
|
|
93
92
|
});
|
|
94
93
|
}
|
|
95
|
-
StructureTestCase(project, testCases, suite) {
|
|
94
|
+
StructureTestCase(project, testCases, suite, relations, CustomerRequirementId) {
|
|
96
95
|
return __awaiter(this, void 0, void 0, function* () {
|
|
97
96
|
let url = this.orgUrl + project + "/_workitems/edit/";
|
|
98
97
|
let testCasesUrlList = new Array();
|
|
99
98
|
//let tesrCase:TestCase;
|
|
100
99
|
for (let i = 0; i < testCases.count; i++) {
|
|
101
100
|
try {
|
|
102
|
-
let
|
|
101
|
+
let newurl = testCases.value[i].testCase.url + "?$expand=All";
|
|
102
|
+
let test = yield tfs_1.TFSServices.getItemContent(newurl, this.token);
|
|
103
103
|
let testCase = new tfs_data_2.TestCase();
|
|
104
104
|
testCase.title = test.fields["System.Title"];
|
|
105
105
|
testCase.area = test.fields["System.AreaPath"];
|
|
@@ -112,6 +112,36 @@ class TestDataProvider {
|
|
|
112
112
|
let steps = this.ParseSteps(test.fields["Microsoft.VSTS.TCM.Steps"]);
|
|
113
113
|
testCase.steps = steps;
|
|
114
114
|
}
|
|
115
|
+
if (relations && test.relations) {
|
|
116
|
+
for (const relation of test.relations) {
|
|
117
|
+
// Only proceed if the URL contains 'workItems'
|
|
118
|
+
if (relation.url.includes('/workItems/')) {
|
|
119
|
+
try {
|
|
120
|
+
let relatedItemContent = yield tfs_1.TFSServices.getItemContent(relation.url, this.token);
|
|
121
|
+
// Check if the WorkItemType is "Requirement" before adding to relations
|
|
122
|
+
if (relatedItemContent.fields["System.WorkItemType"] === "Requirement") {
|
|
123
|
+
let customerId = undefined;
|
|
124
|
+
// Check if CustomerRequirementId is true and set customerId
|
|
125
|
+
if (CustomerRequirementId) {
|
|
126
|
+
// Here we check for either of the two potential fields for customer ID
|
|
127
|
+
customerId = relatedItemContent.fields["Custom.CustomerID"] || relatedItemContent.fields["Elisra.CustomerRequirementId"] || " ";
|
|
128
|
+
}
|
|
129
|
+
let relatedItem = {
|
|
130
|
+
id: relatedItemContent.id,
|
|
131
|
+
title: relatedItemContent.fields["System.Title"],
|
|
132
|
+
customerId: customerId // Add this field conditionally
|
|
133
|
+
};
|
|
134
|
+
testCase.relations.push(relatedItem);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
catch (fetchError) {
|
|
138
|
+
// Log error silently or handle as needed
|
|
139
|
+
console.error("Failed to fetch relation content", fetchError);
|
|
140
|
+
logger_1.default.error(`Failed to fetch relation content for URL ${relation.url}: ${fetchError}`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
115
145
|
testCasesUrlList.push(testCase);
|
|
116
146
|
}
|
|
117
147
|
catch (_a) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestDataProvider.js","sourceRoot":"","sources":["../../src/modules/TestDataProvider.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,wCAA6C;AAE7C,8CAA+E;AAC/E,
|
|
1
|
+
{"version":3,"file":"TestDataProvider.js","sourceRoot":"","sources":["../../src/modules/TestDataProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ describe("Test module - tests", () => {
|
|
|
28
28
|
}));
|
|
29
29
|
test("should return list of test cases", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
30
30
|
let TestDataProvider = yield dgDataProviderAzureDevOps.getTestDataProvider();
|
|
31
|
-
let attachList = yield TestDataProvider.GetTestCasesBySuites("tests", "545", "546", true);
|
|
31
|
+
let attachList = yield TestDataProvider.GetTestCasesBySuites("tests", "545", "546", true, true, true);
|
|
32
32
|
expect(attachList.length > 0).toBeDefined();
|
|
33
33
|
}));
|
|
34
34
|
test("should use Helper.findSuitesRecursive twice after restarting static value of Helper.first=True ", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -39,7 +39,7 @@ describe("Test module - tests", () => {
|
|
|
39
39
|
test.skip("should return list of test cases - stress test - big testplan 1400 cases", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
40
40
|
jest.setTimeout(1000000);
|
|
41
41
|
let TestDataProvider = yield dgDataProviderAzureDevOps.getTestDataProvider();
|
|
42
|
-
let attachList = yield TestDataProvider.GetTestCasesBySuites("tests", "540", "549", true);
|
|
42
|
+
let attachList = yield TestDataProvider.GetTestCasesBySuites("tests", "540", "549", true, true, true);
|
|
43
43
|
expect(attachList.length > 1000).toBeDefined(); //not enough test cases for stress test
|
|
44
44
|
}));
|
|
45
45
|
test("should return test cases by suite", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testDataProvider.test.js","sourceRoot":"","sources":["../../../src/modules/test/testDataProvider.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,6BAA8C;AAE9C,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;AAC3B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAExB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;AACnC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;AAC9B,MAAM,yBAAyB,GAAG,IAAI,WAAyB,CAAC,MAAM,EAAC,KAAK,CAAC,CAAC;AAE9E,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,IAAI,CAAC,0BAA0B,EAAE,GAAS,EAAE;QAC1C,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,IAAI,GAAQ,MAAM,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,mCAAmC,EAAE,GAAS,EAAE;QACnD,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,UAAU,GAAG,MAAM,gBAAgB,CAAC,mBAAmB,CACzD,OAAO,EACP,KAAK,EACL,IAAI,CACL,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,kCAAkC,EAAE,GAAS,EAAE;QAClD,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,UAAU,GAAQ,MAAM,gBAAgB,CAAC,oBAAoB,CAC/D,OAAO,EACP,KAAK,EACL,KAAK,EACL,IAAI,CACL,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9C,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,iGAAiG,EAAE,GAAS,EAAE;QACjH,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,YAAY,GAAG,MAAM,gBAAgB,CAAC,mBAAmB,CAC3D,OAAO,EACP,KAAK,EACL,IAAI,CACL,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAChD,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,0EAA0E,EAAE,GAAS,EAAE;QAC/F,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,UAAU,GAAQ,MAAM,gBAAgB,CAAC,oBAAoB,CAC/D,OAAO,EACP,KAAK,EACL,KAAK,EACL,IAAI,CACL,CAAC;QACF,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,uCAAuC;IACzF,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,mCAAmC,EAAE,GAAS,EAAE;QACnD,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,IAAI,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAC5C,OAAO,EACP,KAAK,EACL,KAAK,CACJ,CAAC;QACJ,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,uCAAuC,EAAE,GAAS,EAAE;QACvD,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,IAAI,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAC5C,OAAO,EACP,KAAK,EACL,KAAK,EACL,KAAK,CACJ,CAAC;QACJ,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,uCAAuC,EAAE,GAAS,EAAE;QACvD,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,IAAI,GAAG,MAAM,gBAAgB,CAAC,cAAc,CAC9C,OAAO,EACP,SAAS,CACR,CAAC;QACJ,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAA,CAAC,CAAC;IACH,IAAI,CAAC,+EAA+E,EAAE,GAAS,EAAE;QAC7F,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC3E,IAAI,MAAM,GAAQ,MAAM,gBAAgB,CAAC,aAAa,CACtD,OAAO,EACP,SAAS,EACT,KAAK,EACL,GAAG,CACJ,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAA,CAAC,CAAC;IACL,IAAI,CAAC,2DAA2D,EAAE,GAAS,EAAE;QACzE,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,MAAM,GAAQ,MAAM,gBAAgB,CAAC,aAAa,CACpD,OAAO,EACP,SAAS,EAAE,OAAO;QAClB,oBAAoB,CAAC,8FAA8F;SACpH,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAA,CAAC,CAAC;IACL,IAAI,CAAC,+DAA+D,EAAE,GAAS,EAAE;QAC7E,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,MAAM,GAAQ,MAAM,gBAAgB,CAAC,cAAc,CACrD,OAAO,EACP,SAAS,EACT,CAAC,CAAC,oDAAoD;SACvD,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAA,CAAC,CAAC;IACL,IAAI,CAAC,uEAAuE,EAAE,GAAS,EAAE;QACrF,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,IAAI,GAAG,2BAA2B,CAAC;QACvC,IAAI,IAAI,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,MAAM,GAAQ,MAAM,gBAAgB,CAAC,oBAAoB,CAC3D,SAAS,EAAE,OAAO;QAClB,OAAO,EACP,UAAU,EAAE,QAAQ;QACpB,sBAAsB,EAAE,UAAU;QAClC,wBAAwB,EAAE,SAAS;QACnC,mBAAmB,CAAC,gBAAgB;SACrC,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC,CAAA,CAAC,CAAC;IACL,IAAI,CAAC,+BAA+B,EAAE,GAAS,EAAE;QAC7C,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,MAAM,GAAQ,MAAM,gBAAgB,CAAC,sBAAsB,CAC7D,KAAK,CACN,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC;IAC7B,CAAC,CAAA,CAAC,CAAC;IACL,IAAI,CAAC,wCAAwC,EAAE,GAAS,EAAE;QACtD,IAAI,gBAAgB,GAAG,MAAM,yBAAyB,CAAC,mBAAmB,EAAE,CAAC;QAC7E,IAAI,MAAM,GAAQ,MAAM,gBAAgB,CAAC,wBAAwB,CAC/D,OAAO,EACP,KAAK,CAAC,YAAY;SACjB,CAAC;QACJ,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC;IAC7B,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"testDataProvider.test.js","sourceRoot":"","sources":["../../../src/modules/test/testDataProvider.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/models/tfs-data.ts
CHANGED
|
@@ -123,14 +123,26 @@ export interface RootObject {
|
|
|
123
123
|
pullRequestThreadContext: PullRequestThreadContext;
|
|
124
124
|
}
|
|
125
125
|
export class TestCase {
|
|
126
|
-
id:
|
|
127
|
-
title:
|
|
128
|
-
description:
|
|
129
|
-
area:
|
|
126
|
+
id: string;
|
|
127
|
+
title: string;
|
|
128
|
+
description: string;
|
|
129
|
+
area: string;
|
|
130
130
|
steps: TestSteps[];
|
|
131
131
|
suit: string;
|
|
132
|
-
url:string;
|
|
132
|
+
url: string;
|
|
133
|
+
relations: Relation[];
|
|
134
|
+
|
|
135
|
+
constructor() {
|
|
136
|
+
this.relations = [];
|
|
137
|
+
}
|
|
133
138
|
}
|
|
139
|
+
|
|
140
|
+
export type Relation = {
|
|
141
|
+
id: string;
|
|
142
|
+
title: string;
|
|
143
|
+
customerId?: string;
|
|
144
|
+
}
|
|
145
|
+
|
|
134
146
|
export class TestSteps {
|
|
135
147
|
action: String;
|
|
136
148
|
expected: String;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { TFSServices } from "../helpers/tfs";
|
|
2
2
|
import { Workitem } from "../models/tfs-data";
|
|
3
3
|
import { Helper, suiteData, Links, Trace, Relations } from "../helpers/helper";
|
|
4
|
-
import { Query, TestSteps } from "../models/tfs-data";
|
|
4
|
+
import { Query, TestSteps, Relation } from "../models/tfs-data";
|
|
5
5
|
import { QueryType } from "../models/tfs-data";
|
|
6
6
|
import { QueryAllTypes } from "../models/tfs-data";
|
|
7
7
|
import { Column } from "../models/tfs-data";
|
|
@@ -91,7 +91,6 @@ export default class TestDataProvider {
|
|
|
91
91
|
let testSuites = await this.GetTestSuitesForPlan(project, planId);
|
|
92
92
|
// GetTestSuites(project, planId);
|
|
93
93
|
Helper.suitList = [];
|
|
94
|
-
Helper.level = 1;
|
|
95
94
|
let dataSuites: any = Helper.findSuitesRecursive(
|
|
96
95
|
planId,
|
|
97
96
|
this.orgUrl,
|
|
@@ -111,7 +110,9 @@ export default class TestDataProvider {
|
|
|
111
110
|
project: string,
|
|
112
111
|
planId: string,
|
|
113
112
|
suiteId: string,
|
|
114
|
-
recursiv: boolean
|
|
113
|
+
recursiv: boolean,
|
|
114
|
+
relations: boolean,
|
|
115
|
+
CustomerRequirementId: boolean
|
|
115
116
|
): Promise<Array<any>> {
|
|
116
117
|
let testCasesList: Array<any> = new Array<any>();
|
|
117
118
|
let suitesTestCasesList: Array<suiteData> = await this.GetTestSuiteById(
|
|
@@ -129,7 +130,9 @@ export default class TestDataProvider {
|
|
|
129
130
|
let testCseseWithSteps: any = await this.StructureTestCase(
|
|
130
131
|
project,
|
|
131
132
|
testCases,
|
|
132
|
-
suitesTestCasesList[i]
|
|
133
|
+
suitesTestCasesList[i],
|
|
134
|
+
relations,
|
|
135
|
+
CustomerRequirementId
|
|
133
136
|
);
|
|
134
137
|
if (testCseseWithSteps.length > 0)
|
|
135
138
|
testCasesList = [...testCasesList, ...testCseseWithSteps];
|
|
@@ -140,18 +143,23 @@ export default class TestDataProvider {
|
|
|
140
143
|
async StructureTestCase(
|
|
141
144
|
project: string,
|
|
142
145
|
testCases: any,
|
|
143
|
-
suite: suiteData
|
|
146
|
+
suite: suiteData,
|
|
147
|
+
relations: boolean,
|
|
148
|
+
CustomerRequirementId: boolean
|
|
144
149
|
): Promise<Array<any>> {
|
|
150
|
+
|
|
145
151
|
let url = this.orgUrl + project + "/_workitems/edit/";
|
|
146
152
|
let testCasesUrlList: Array<any> = new Array<any>();
|
|
147
153
|
//let tesrCase:TestCase;
|
|
148
154
|
for (let i = 0; i < testCases.count; i++) {
|
|
149
155
|
try{
|
|
156
|
+
let newurl = testCases.value[i].testCase.url + "?$expand=All"
|
|
150
157
|
let test: any = await TFSServices.getItemContent(
|
|
151
|
-
|
|
158
|
+
newurl,
|
|
152
159
|
this.token
|
|
153
160
|
);
|
|
154
161
|
let testCase: TestCase = new TestCase();
|
|
162
|
+
|
|
155
163
|
testCase.title = test.fields["System.Title"];
|
|
156
164
|
testCase.area = test.fields["System.AreaPath"];
|
|
157
165
|
testCase.description = test.fields["System.Description"];
|
|
@@ -164,12 +172,45 @@ export default class TestDataProvider {
|
|
|
164
172
|
test.fields["Microsoft.VSTS.TCM.Steps"]
|
|
165
173
|
);
|
|
166
174
|
testCase.steps = steps;
|
|
167
|
-
}
|
|
175
|
+
}
|
|
176
|
+
if (relations && test.relations) {
|
|
177
|
+
for (const relation of test.relations) {
|
|
178
|
+
// Only proceed if the URL contains 'workItems'
|
|
179
|
+
if (relation.url.includes('/workItems/')) {
|
|
180
|
+
try {
|
|
181
|
+
let relatedItemContent: any = await TFSServices.getItemContent(relation.url, this.token);
|
|
182
|
+
|
|
183
|
+
// Check if the WorkItemType is "Requirement" before adding to relations
|
|
184
|
+
if (relatedItemContent.fields["System.WorkItemType"] === "Requirement") {
|
|
185
|
+
let customerId = undefined;
|
|
186
|
+
// Check if CustomerRequirementId is true and set customerId
|
|
187
|
+
if (CustomerRequirementId) {
|
|
188
|
+
// Here we check for either of the two potential fields for customer ID
|
|
189
|
+
customerId = relatedItemContent.fields["Custom.CustomerID"] || relatedItemContent.fields["Elisra.CustomerRequirementId"] || " ";
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
let relatedItem: Relation = {
|
|
193
|
+
id: relatedItemContent.id,
|
|
194
|
+
title: relatedItemContent.fields["System.Title"],
|
|
195
|
+
customerId: customerId // Add this field conditionally
|
|
196
|
+
};
|
|
197
|
+
testCase.relations.push(relatedItem);
|
|
198
|
+
}
|
|
199
|
+
} catch (fetchError) {
|
|
200
|
+
// Log error silently or handle as needed
|
|
201
|
+
console.error("Failed to fetch relation content", fetchError);
|
|
202
|
+
logger.error(`Failed to fetch relation content for URL ${relation.url}: ${fetchError}`);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
168
207
|
testCasesUrlList.push(testCase);
|
|
169
208
|
}
|
|
209
|
+
|
|
170
210
|
catch{
|
|
171
211
|
logger.error(`ran into an issue while retriving testCase ${testCases.value[i].testCase.id}`);
|
|
172
212
|
}
|
|
213
|
+
|
|
173
214
|
}
|
|
174
215
|
|
|
175
216
|
return testCasesUrlList;
|
|
@@ -420,4 +461,4 @@ export default class TestDataProvider {
|
|
|
420
461
|
);
|
|
421
462
|
return res;
|
|
422
463
|
}
|
|
423
|
-
}
|
|
464
|
+
}
|
|
@@ -28,6 +28,8 @@ describe("Test module - tests", () => {
|
|
|
28
28
|
"tests",
|
|
29
29
|
"545",
|
|
30
30
|
"546",
|
|
31
|
+
true,
|
|
32
|
+
true,
|
|
31
33
|
true
|
|
32
34
|
);
|
|
33
35
|
expect(attachList.length > 0).toBeDefined();
|
|
@@ -48,6 +50,8 @@ describe("Test module - tests", () => {
|
|
|
48
50
|
"tests",
|
|
49
51
|
"540",
|
|
50
52
|
"549",
|
|
53
|
+
true,
|
|
54
|
+
true,
|
|
51
55
|
true
|
|
52
56
|
);
|
|
53
57
|
expect(attachList.length > 1000).toBeDefined(); //not enough test cases for stress test
|