@elisra-devops/docgen-data-provider 1.7.1 → 1.9.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.
- package/bin/index.d.ts +1 -1
- package/bin/index.js +1 -1
- package/bin/models/tfs-data.d.ts +35 -0
- package/bin/models/tfs-data.js +6 -8
- package/bin/models/tfs-data.js.map +1 -1
- package/bin/modules/PipelinesDataProvider.d.ts +1 -0
- package/bin/modules/PipelinesDataProvider.js +22 -0
- package/bin/modules/PipelinesDataProvider.js.map +1 -1
- package/bin/modules/TicketsDataProvider.d.ts +11 -3
- package/bin/modules/TicketsDataProvider.js +195 -35
- package/bin/modules/TicketsDataProvider.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +1 -1
- package/src/models/tfs-data.ts +14 -8
- package/src/modules/PipelinesDataProvider.ts +23 -0
- package/src/modules/TicketsDataProvider.ts +213 -38
package/bin/index.d.ts
CHANGED
|
@@ -17,5 +17,5 @@ export default class DgDataProviderAzureDevOps {
|
|
|
17
17
|
getPipelinesDataProvider(): Promise<PipelinesDataProvider>;
|
|
18
18
|
getTestDataProvider(): Promise<TestDataProvider>;
|
|
19
19
|
getResultDataProvider(): Promise<ResultDataProvider>;
|
|
20
|
-
|
|
20
|
+
getJfrogDataProvider(): Promise<JfrogDataProvider>;
|
|
21
21
|
}
|
package/bin/index.js
CHANGED
|
@@ -35,7 +35,7 @@ class DgDataProviderAzureDevOps {
|
|
|
35
35
|
async getResultDataProvider() {
|
|
36
36
|
return new ResultDataProvider_1.default(this.orgUrl, this.token);
|
|
37
37
|
}
|
|
38
|
-
async
|
|
38
|
+
async getJfrogDataProvider() {
|
|
39
39
|
return new JfrogDataProvider_1.default(this.orgUrl, this.token, this.jfrogToken || '');
|
|
40
40
|
}
|
|
41
41
|
} //class
|
package/bin/models/tfs-data.d.ts
CHANGED
|
@@ -9,11 +9,29 @@ export declare class Query {
|
|
|
9
9
|
columns: Column[];
|
|
10
10
|
workItems: Workitem[];
|
|
11
11
|
}
|
|
12
|
+
export declare class QueryTree {
|
|
13
|
+
queryType: QueryType;
|
|
14
|
+
queryResultType: QueryResultType;
|
|
15
|
+
asOf: string;
|
|
16
|
+
columns: Column[];
|
|
17
|
+
sortColumns?: SortColumn[];
|
|
18
|
+
workItems?: WorkItemForQuery[];
|
|
19
|
+
workItemRelations?: WorkItemRelation[];
|
|
20
|
+
}
|
|
12
21
|
export declare class Column {
|
|
13
22
|
referenceName: string;
|
|
14
23
|
name: string;
|
|
15
24
|
url: string;
|
|
16
25
|
}
|
|
26
|
+
declare class SortColumn {
|
|
27
|
+
field: Field;
|
|
28
|
+
descending: boolean;
|
|
29
|
+
}
|
|
30
|
+
declare class Field {
|
|
31
|
+
referenceName: string;
|
|
32
|
+
name: string;
|
|
33
|
+
url: string;
|
|
34
|
+
}
|
|
17
35
|
export declare class Workitem {
|
|
18
36
|
id: number;
|
|
19
37
|
url: string;
|
|
@@ -36,6 +54,23 @@ export declare enum QueryType {
|
|
|
36
54
|
Tree = "tree",
|
|
37
55
|
OneHop = "oneHop"
|
|
38
56
|
}
|
|
57
|
+
declare class WorkItemForQuery {
|
|
58
|
+
id: number;
|
|
59
|
+
url: string;
|
|
60
|
+
}
|
|
61
|
+
declare class WorkItemRelation {
|
|
62
|
+
rel: string;
|
|
63
|
+
source: Source;
|
|
64
|
+
target: Target;
|
|
65
|
+
}
|
|
66
|
+
declare class Source {
|
|
67
|
+
id: number;
|
|
68
|
+
url: string;
|
|
69
|
+
}
|
|
70
|
+
declare class Target {
|
|
71
|
+
id: number;
|
|
72
|
+
url: string;
|
|
73
|
+
}
|
|
39
74
|
export interface Comment {
|
|
40
75
|
parentCommentId: number;
|
|
41
76
|
content: string;
|
package/bin/models/tfs-data.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TestSteps = exports.TestCase = exports.QueryType = exports.value = exports.Workitem = exports.Column = exports.Query = exports.QueryAllTypes = void 0;
|
|
3
|
+
exports.TestSteps = exports.TestCase = exports.QueryType = exports.value = exports.Workitem = exports.Column = exports.QueryTree = exports.Query = exports.QueryAllTypes = void 0;
|
|
4
4
|
exports.createRequirementRelation = createRequirementRelation;
|
|
5
5
|
exports.createBugRelation = createBugRelation;
|
|
6
6
|
class QueryAllTypes {
|
|
@@ -15,16 +15,12 @@ class Query {
|
|
|
15
15
|
}
|
|
16
16
|
exports.Query = Query;
|
|
17
17
|
class QueryTree {
|
|
18
|
-
constructor() {
|
|
19
|
-
this.columns = new Array();
|
|
20
|
-
//sortColumns: Sortcolumn[] =new Array<Sortcolumn>()
|
|
21
|
-
this.workItems = new Array();
|
|
22
|
-
}
|
|
23
18
|
}
|
|
19
|
+
exports.QueryTree = QueryTree;
|
|
24
20
|
class Column {
|
|
25
21
|
}
|
|
26
22
|
exports.Column = Column;
|
|
27
|
-
class
|
|
23
|
+
class SortColumn {
|
|
28
24
|
}
|
|
29
25
|
class Field {
|
|
30
26
|
}
|
|
@@ -48,7 +44,9 @@ var QueryType;
|
|
|
48
44
|
QueryType["Tree"] = "tree";
|
|
49
45
|
QueryType["OneHop"] = "oneHop";
|
|
50
46
|
})(QueryType || (exports.QueryType = QueryType = {}));
|
|
51
|
-
class
|
|
47
|
+
class WorkItemForQuery {
|
|
48
|
+
}
|
|
49
|
+
class WorkItemRelation {
|
|
52
50
|
}
|
|
53
51
|
class Workrelation {
|
|
54
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tfs-data.js","sourceRoot":"","sources":["../../src/models/tfs-data.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"tfs-data.js","sourceRoot":"","sources":["../../src/models/tfs-data.ts"],"names":[],"mappings":";;;AAgKA,8DAMC;AAED,8CAEC;AA1KD,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,MAAa,SAAS;CAQrB;AARD,8BAQC;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,yBAAT,SAAS,QAIpB;AAED,MAAM,gBAAgB;CAGrB;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;AAkBD,SAAgB,yBAAyB,CACvC,EAAU,EACV,KAAa,EACb,UAAmB;IAEnB,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AACxD,CAAC;AAED,SAAgB,iBAAiB,CAAC,EAAU,EAAE,KAAa,EAAE,QAAiB;IAC5E,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC9C,CAAC;AAED,MAAa,SAAS;CAMrB;AAND,8BAMC"}
|
|
@@ -15,4 +15,5 @@ export default class PipelinesDataProvider {
|
|
|
15
15
|
GetReleaseHistory(projectName: string, definitionId: string): Promise<any>;
|
|
16
16
|
GetAllPipelines(projectName: string): Promise<any>;
|
|
17
17
|
GetAllReleaseDefenitions(projectName: string): Promise<any>;
|
|
18
|
+
GetRecentReleaseArtifactInfo(projectName: string): Promise<any[]>;
|
|
18
19
|
}
|
|
@@ -155,6 +155,28 @@ class PipelinesDataProvider {
|
|
|
155
155
|
let res = await tfs_1.TFSServices.getItemContent(url, this.token, 'get', null, null);
|
|
156
156
|
return res;
|
|
157
157
|
}
|
|
158
|
+
async GetRecentReleaseArtifactInfo(projectName) {
|
|
159
|
+
let artifactInfo = [];
|
|
160
|
+
let url = `${this.orgUrl}${projectName}/_apis/release/releases?$top=1&api-version=6.0`;
|
|
161
|
+
if (url.startsWith('https://dev.azure.com')) {
|
|
162
|
+
url = url.replace('https://dev.azure.com', 'https://vsrm.dev.azure.com');
|
|
163
|
+
}
|
|
164
|
+
let res = await tfs_1.TFSServices.getItemContent(url, this.token);
|
|
165
|
+
const { value: releases } = res;
|
|
166
|
+
if (releases && releases.length > 0) {
|
|
167
|
+
const releaseId = releases[0].id;
|
|
168
|
+
let url = `${this.orgUrl}${projectName}/_apis/release/releases/${releaseId}?api-version=6.0`;
|
|
169
|
+
const releaseResponse = await tfs_1.TFSServices.getItemContent(url, this.token);
|
|
170
|
+
if (releaseResponse) {
|
|
171
|
+
const { artifacts } = releaseResponse;
|
|
172
|
+
for (const artifact of artifacts) {
|
|
173
|
+
const { definition, version } = artifact.definitionReference;
|
|
174
|
+
artifactInfo.push({ artifactName: definition.name, artifactVersion: version.name });
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return artifactInfo;
|
|
179
|
+
}
|
|
158
180
|
}
|
|
159
181
|
exports.default = PipelinesDataProvider;
|
|
160
182
|
//# sourceMappingURL=PipelinesDataProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PipelinesDataProvider.js","sourceRoot":"","sources":["../../src/modules/PipelinesDataProvider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PipelinesDataProvider.js","sourceRoot":"","sources":["../../src/modules/PipelinesDataProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,8 +10,15 @@ export default class TicketsDataProvider {
|
|
|
10
10
|
GetParentLink(project: string, wi: any): Promise<Trace>;
|
|
11
11
|
GetRelationsIds(ids: any): Promise<Map<string, Relations>>;
|
|
12
12
|
GetLinks(project: string, wi: any, links: any): Promise<Links[]>;
|
|
13
|
-
GetSharedQueries(project: string, path: string): Promise<any>;
|
|
14
|
-
|
|
13
|
+
GetSharedQueries(project: string, path: string, docType?: string): Promise<any>;
|
|
14
|
+
private fetchOneHopQueriesForStr;
|
|
15
|
+
private fetchAnyQueries;
|
|
16
|
+
GetQueryResultsFromWiql(wiqlHref?: string, displayAsTable?: boolean): Promise<any>;
|
|
17
|
+
private parseDirectLinkedQueryResultForTableFormat;
|
|
18
|
+
private parseTreeQueryResult;
|
|
19
|
+
private initTreeQueryResultItem;
|
|
20
|
+
private initFlatQueryResultItem;
|
|
21
|
+
private parseFlatQueryResult;
|
|
15
22
|
private fetchWIByRelation;
|
|
16
23
|
GetModeledQuery(list: Array<any>): Array<any>;
|
|
17
24
|
GetQueryResultsByWiqlHref(wiqlHref: string, project: string): Promise<any>;
|
|
@@ -25,7 +32,8 @@ export default class TicketsDataProvider {
|
|
|
25
32
|
GetWorkitemAttachments(project: string, id: string): Promise<string[]>;
|
|
26
33
|
GetWorkitemAttachmentsJSONData(project: string, attachmentId: string): Promise<any>;
|
|
27
34
|
UpdateWorkItem(projectName: string, wiBody: any, workItemId: number, byPass: boolean): Promise<any>;
|
|
28
|
-
private
|
|
35
|
+
private structureAllQueryPath;
|
|
36
|
+
private structureReqTestQueries;
|
|
29
37
|
private matchesReqTestCondition;
|
|
30
38
|
private matchesTestReqCondition;
|
|
31
39
|
private filterFieldsByColumns;
|
|
@@ -90,7 +90,7 @@ class TicketsDataProvider {
|
|
|
90
90
|
return linkList;
|
|
91
91
|
}
|
|
92
92
|
// gets queries recursiv
|
|
93
|
-
async GetSharedQueries(project, path) {
|
|
93
|
+
async GetSharedQueries(project, path, docType = '') {
|
|
94
94
|
let url;
|
|
95
95
|
try {
|
|
96
96
|
if (path == '')
|
|
@@ -98,15 +98,32 @@ class TicketsDataProvider {
|
|
|
98
98
|
else
|
|
99
99
|
url = `${this.orgUrl}${project}/_apis/wit/queries/${path}?$depth=2&$expand=all`;
|
|
100
100
|
let queries = await tfs_1.TFSServices.getItemContent(url, this.token);
|
|
101
|
-
|
|
102
|
-
|
|
101
|
+
logger_1.default.debug(`doctype: ${docType}`);
|
|
102
|
+
switch (docType) {
|
|
103
|
+
case 'STD':
|
|
104
|
+
return await this.fetchOneHopQueriesForStr(queries);
|
|
105
|
+
case 'SVD':
|
|
106
|
+
return await this.fetchAnyQueries(queries);
|
|
107
|
+
default:
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
103
110
|
}
|
|
104
111
|
catch (err) {
|
|
105
112
|
logger_1.default.error(err.message);
|
|
106
113
|
logger_1.default.error(`Error stack trace: ${JSON.stringify(err.stack)}`);
|
|
107
114
|
}
|
|
108
115
|
}
|
|
109
|
-
async
|
|
116
|
+
async fetchOneHopQueriesForStr(queries) {
|
|
117
|
+
const { tree1: reqTestTree, tree2: testReqTree } = await this.structureReqTestQueries(queries);
|
|
118
|
+
return { reqTestTree, testReqTree };
|
|
119
|
+
}
|
|
120
|
+
async fetchAnyQueries(queries) {
|
|
121
|
+
const { tree1: systemOverviewQueryTree } = await this.structureAllQueryPath(queries);
|
|
122
|
+
//TODO:insert here the known bugs tree from the queries (similar to req-test)
|
|
123
|
+
const knownBugsTree = {};
|
|
124
|
+
return { systemOverviewQueryTree };
|
|
125
|
+
}
|
|
126
|
+
async GetQueryResultsFromWiql(wiqlHref = '', displayAsTable = false) {
|
|
110
127
|
try {
|
|
111
128
|
if (!wiqlHref) {
|
|
112
129
|
throw new Error('Incorrect WIQL Link');
|
|
@@ -116,27 +133,46 @@ class TicketsDataProvider {
|
|
|
116
133
|
if (!queryResult) {
|
|
117
134
|
throw new Error('Query result failed');
|
|
118
135
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
136
|
+
switch (queryResult.queryType) {
|
|
137
|
+
case tfs_data_3.QueryType.OneHop:
|
|
138
|
+
return displayAsTable
|
|
139
|
+
? await this.parseDirectLinkedQueryResultForTableFormat(queryResult)
|
|
140
|
+
: await this.parseTreeQueryResult(queryResult);
|
|
141
|
+
case tfs_data_3.QueryType.Tree:
|
|
142
|
+
return await this.parseTreeQueryResult(queryResult);
|
|
143
|
+
case tfs_data_3.QueryType.Flat:
|
|
144
|
+
return await this.parseFlatQueryResult(queryResult);
|
|
145
|
+
default:
|
|
146
|
+
break;
|
|
122
147
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
const
|
|
148
|
+
}
|
|
149
|
+
catch (err) {
|
|
150
|
+
logger_1.default.error(`Could not fetch query results for ${wiqlHref}: ${err.message}`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
async parseDirectLinkedQueryResultForTableFormat(queryResult) {
|
|
154
|
+
const { columns, workItemRelations } = queryResult;
|
|
155
|
+
if ((workItemRelations === null || workItemRelations === void 0 ? void 0 : workItemRelations.length) === 0) {
|
|
156
|
+
throw new Error('No related work items were found');
|
|
157
|
+
}
|
|
158
|
+
const columnsToShowMap = new Map();
|
|
159
|
+
const columnSourceMap = new Map();
|
|
160
|
+
const columnTargetsMap = new Map();
|
|
161
|
+
//The map is copied because there are different fields for each WI type,
|
|
162
|
+
//Need to consider both ways (Req->Test; Test->Req)
|
|
163
|
+
columns.forEach((column) => {
|
|
164
|
+
const { referenceName, name } = column;
|
|
165
|
+
if (name === 'CustomerRequirementId') {
|
|
166
|
+
columnsToShowMap.set(referenceName, 'Customer ID');
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
columnsToShowMap.set(referenceName, name);
|
|
170
|
+
}
|
|
171
|
+
});
|
|
172
|
+
// Initialize maps
|
|
173
|
+
const sourceTargetsMap = new Map();
|
|
174
|
+
const lookupMap = new Map();
|
|
175
|
+
if (workItemRelations) {
|
|
140
176
|
for (const relation of workItemRelations) {
|
|
141
177
|
//if relation.Source is null and target has a valid value then the target is the source
|
|
142
178
|
if (!relation.source) {
|
|
@@ -161,15 +197,92 @@ class TicketsDataProvider {
|
|
|
161
197
|
targets.push(targetWi);
|
|
162
198
|
sourceTargetsMap.set(sourceRelation, targets);
|
|
163
199
|
}
|
|
164
|
-
columnsToShowMap.clear();
|
|
165
|
-
return {
|
|
166
|
-
sourceTargetsMap,
|
|
167
|
-
sortingSourceColumnsMap: columnSourceMap,
|
|
168
|
-
sortingTargetsColumnsMap: columnTargetsMap,
|
|
169
|
-
};
|
|
170
200
|
}
|
|
171
|
-
|
|
172
|
-
|
|
201
|
+
columnsToShowMap.clear();
|
|
202
|
+
return {
|
|
203
|
+
sourceTargetsMap,
|
|
204
|
+
sortingSourceColumnsMap: columnSourceMap,
|
|
205
|
+
sortingTargetsColumnsMap: columnTargetsMap,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
async parseTreeQueryResult(queryResult) {
|
|
209
|
+
const { workItemRelations } = queryResult;
|
|
210
|
+
if (!workItemRelations) {
|
|
211
|
+
logger_1.default.warn(`No work items were found for this requested query`);
|
|
212
|
+
return null;
|
|
213
|
+
}
|
|
214
|
+
try {
|
|
215
|
+
// Step 1: Identify roots and prepare a map of all nodes
|
|
216
|
+
const allItems = {};
|
|
217
|
+
const roots = [];
|
|
218
|
+
for (const relation of workItemRelations) {
|
|
219
|
+
const target = relation.target;
|
|
220
|
+
// Initialize the node if it doesn't exist yet
|
|
221
|
+
if (!allItems[target.id]) {
|
|
222
|
+
await this.initTreeQueryResultItem(target, allItems);
|
|
223
|
+
}
|
|
224
|
+
if (relation.rel === null && relation.source === null) {
|
|
225
|
+
roots.push(allItems[target.id]);
|
|
226
|
+
}
|
|
227
|
+
else if (relation.source) {
|
|
228
|
+
// This means target is a child of source
|
|
229
|
+
const parentId = relation.source.id;
|
|
230
|
+
if (!allItems[parentId]) {
|
|
231
|
+
const source = relation.source;
|
|
232
|
+
await this.initTreeQueryResultItem(source, allItems);
|
|
233
|
+
}
|
|
234
|
+
// Add the target as a child of the parent
|
|
235
|
+
allItems[parentId].children.push(allItems[target.id]);
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
return roots;
|
|
239
|
+
}
|
|
240
|
+
catch (error) {
|
|
241
|
+
logger_1.default.error(`could not parse requested tree query: ${error.message}`);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
async initTreeQueryResultItem(item, allItems) {
|
|
245
|
+
var _a, _b;
|
|
246
|
+
const urlWi = `${item.url}?fields=System.Description,System.Title,Microsoft.VSTS.TCM.ReproSteps,Microsoft.VSTS.CMMI.Symptom`;
|
|
247
|
+
const wi = await tfs_1.TFSServices.getItemContent(urlWi, this.token);
|
|
248
|
+
// need to fetch the WI with only the the title, the web URL and the description
|
|
249
|
+
allItems[item.id] = {
|
|
250
|
+
id: item.id,
|
|
251
|
+
title: wi.fields['System.Title'] || '',
|
|
252
|
+
description: (_b = (_a = wi.fields['Microsoft.VSTS.CMMI.Symptom']) !== null && _a !== void 0 ? _a : wi.fields['System.Description']) !== null && _b !== void 0 ? _b : '',
|
|
253
|
+
htmlUrl: wi._links.html.href,
|
|
254
|
+
children: [],
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
async initFlatQueryResultItem(item, workItemMap) {
|
|
258
|
+
var _a, _b;
|
|
259
|
+
const urlWi = `${item.url}?fields=System.Description,System.Title,Microsoft.VSTS.TCM.ReproSteps,Microsoft.VSTS.CMMI.Symptom`;
|
|
260
|
+
const wi = await tfs_1.TFSServices.getItemContent(urlWi, this.token);
|
|
261
|
+
// need to fetch the WI with only the the title, the web URL and the description
|
|
262
|
+
workItemMap.set(item.id, {
|
|
263
|
+
id: item.id,
|
|
264
|
+
title: wi.fields['System.Title'] || '',
|
|
265
|
+
description: (_b = (_a = wi.fields['Microsoft.VSTS.CMMI.Symptom']) !== null && _a !== void 0 ? _a : wi.fields['System.Description']) !== null && _b !== void 0 ? _b : '',
|
|
266
|
+
htmlUrl: wi._links.html.href,
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
async parseFlatQueryResult(queryResult) {
|
|
270
|
+
const { workItems } = queryResult;
|
|
271
|
+
if (!workItems) {
|
|
272
|
+
logger_1.default.warn(`No work items were found for this requested query`);
|
|
273
|
+
return null;
|
|
274
|
+
}
|
|
275
|
+
try {
|
|
276
|
+
const workItemsResultMap = new Map();
|
|
277
|
+
for (const wi of workItems) {
|
|
278
|
+
if (!workItemsResultMap.has(wi.id)) {
|
|
279
|
+
await this.initFlatQueryResultItem(wi, workItemsResultMap);
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
return [...workItemsResultMap.values()];
|
|
283
|
+
}
|
|
284
|
+
catch (error) {
|
|
285
|
+
logger_1.default.error(`could not parse requested flat query: ${error.message}`);
|
|
173
286
|
}
|
|
174
287
|
}
|
|
175
288
|
async fetchWIByRelation(relation, columnMap, resultedRefNameMap) {
|
|
@@ -404,7 +517,54 @@ class TicketsDataProvider {
|
|
|
404
517
|
});
|
|
405
518
|
return res;
|
|
406
519
|
} //CreateNewWorkItem
|
|
407
|
-
async
|
|
520
|
+
async structureAllQueryPath(rootQuery, parentId = null) {
|
|
521
|
+
var _a;
|
|
522
|
+
try {
|
|
523
|
+
if (!rootQuery.hasChildren) {
|
|
524
|
+
if (!rootQuery.isFolder) {
|
|
525
|
+
let treeNode = {
|
|
526
|
+
id: rootQuery.id,
|
|
527
|
+
pId: parentId,
|
|
528
|
+
value: rootQuery.name,
|
|
529
|
+
title: rootQuery.name,
|
|
530
|
+
queryType: rootQuery.queryType,
|
|
531
|
+
wiql: (_a = rootQuery._links.wiql) !== null && _a !== void 0 ? _a : undefined,
|
|
532
|
+
isValidQuery: true,
|
|
533
|
+
};
|
|
534
|
+
return { tree1: treeNode, tree2: null };
|
|
535
|
+
}
|
|
536
|
+
else {
|
|
537
|
+
return { tree1: null, tree2: null };
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
if (!rootQuery.children) {
|
|
541
|
+
const queryUrl = `${rootQuery.url}?$depth=2&$expand=all`;
|
|
542
|
+
const currentQuery = await tfs_1.TFSServices.getItemContent(queryUrl, this.token);
|
|
543
|
+
return currentQuery
|
|
544
|
+
? await this.structureAllQueryPath(currentQuery, currentQuery.id)
|
|
545
|
+
: { tree1: null, tree2: null };
|
|
546
|
+
}
|
|
547
|
+
// Process children recursively
|
|
548
|
+
const childResults = await Promise.all(rootQuery.children.map((child) => this.structureAllQueryPath(child, rootQuery.id)));
|
|
549
|
+
// Build tree
|
|
550
|
+
const treeChildren = childResults.map((res) => res.tree1).filter((child) => child !== null);
|
|
551
|
+
const treeNode = treeChildren.length > 0
|
|
552
|
+
? {
|
|
553
|
+
id: rootQuery.id,
|
|
554
|
+
pId: parentId,
|
|
555
|
+
value: rootQuery.name,
|
|
556
|
+
title: rootQuery.name,
|
|
557
|
+
children: treeChildren,
|
|
558
|
+
}
|
|
559
|
+
: null;
|
|
560
|
+
return { tree1: treeNode, tree2: null };
|
|
561
|
+
}
|
|
562
|
+
catch (err) {
|
|
563
|
+
logger_1.default.error(`Error occurred while constructing the query list ${err.message} with query ${JSON.stringify(rootQuery)}`);
|
|
564
|
+
logger_1.default.error(`Error stack ${err.message}`);
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
async structureReqTestQueries(rootQuery, parentId = null) {
|
|
408
568
|
var _a, _b;
|
|
409
569
|
try {
|
|
410
570
|
if (!rootQuery.hasChildren) {
|
|
@@ -444,11 +604,11 @@ class TicketsDataProvider {
|
|
|
444
604
|
const queryUrl = `${rootQuery.url}?$depth=2&$expand=all`;
|
|
445
605
|
const currentQuery = await tfs_1.TFSServices.getItemContent(queryUrl, this.token);
|
|
446
606
|
return currentQuery
|
|
447
|
-
? await this.
|
|
607
|
+
? await this.structureReqTestQueries(currentQuery, currentQuery.id)
|
|
448
608
|
: { tree1: null, tree2: null };
|
|
449
609
|
}
|
|
450
610
|
// Process children recursively
|
|
451
|
-
const childResults = await Promise.all(rootQuery.children.map((child) => this.
|
|
611
|
+
const childResults = await Promise.all(rootQuery.children.map((child) => this.structureReqTestQueries(child, rootQuery.id)));
|
|
452
612
|
// Build tree1
|
|
453
613
|
const tree1Children = childResults.map((res) => res.tree1).filter((child) => child !== null);
|
|
454
614
|
const tree1Node = tree1Children.length > 0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TicketsDataProvider.js","sourceRoot":"","sources":["../../src/modules/TicketsDataProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TicketsDataProvider.js","sourceRoot":"","sources":["../../src/modules/TicketsDataProvider.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -40,7 +40,7 @@ export default class DgDataProviderAzureDevOps {
|
|
|
40
40
|
return new ResultDataProvider(this.orgUrl, this.token);
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
async
|
|
43
|
+
async getJfrogDataProvider(): Promise<JfrogDataProvider> {
|
|
44
44
|
return new JfrogDataProvider(this.orgUrl, this.token, this.jfrogToken || '');
|
|
45
45
|
}
|
|
46
46
|
} //class
|
package/src/models/tfs-data.ts
CHANGED
|
@@ -11,13 +11,14 @@ export class Query {
|
|
|
11
11
|
//sortColumns: Sortcolumn[] =new Array<Sortcolumn>()
|
|
12
12
|
workItems: Workitem[] = new Array<Workitem>();
|
|
13
13
|
}
|
|
14
|
-
class QueryTree {
|
|
14
|
+
export class QueryTree {
|
|
15
15
|
queryType: QueryType;
|
|
16
16
|
queryResultType: QueryResultType;
|
|
17
|
-
asOf:
|
|
18
|
-
columns: Column[]
|
|
19
|
-
|
|
20
|
-
workItems
|
|
17
|
+
asOf: string;
|
|
18
|
+
columns: Column[];
|
|
19
|
+
sortColumns?: SortColumn[];
|
|
20
|
+
workItems?: WorkItemForQuery[];
|
|
21
|
+
workItemRelations?: WorkItemRelation[];
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
export class Column {
|
|
@@ -26,7 +27,7 @@ export class Column {
|
|
|
26
27
|
url: string;
|
|
27
28
|
}
|
|
28
29
|
|
|
29
|
-
class
|
|
30
|
+
class SortColumn {
|
|
30
31
|
field: Field;
|
|
31
32
|
descending: boolean;
|
|
32
33
|
}
|
|
@@ -60,14 +61,19 @@ export enum QueryType {
|
|
|
60
61
|
OneHop = 'oneHop',
|
|
61
62
|
}
|
|
62
63
|
|
|
63
|
-
class
|
|
64
|
+
class WorkItemForQuery {
|
|
65
|
+
id: number;
|
|
66
|
+
url: string;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
class WorkItemRelation {
|
|
64
70
|
rel: string;
|
|
65
71
|
source: Source;
|
|
66
72
|
target: Target;
|
|
67
73
|
}
|
|
68
74
|
|
|
69
75
|
class Workrelation {
|
|
70
|
-
relation:
|
|
76
|
+
relation: WorkItemRelation;
|
|
71
77
|
value: value;
|
|
72
78
|
}
|
|
73
79
|
|
|
@@ -192,4 +192,27 @@ export default class PipelinesDataProvider {
|
|
|
192
192
|
let res: any = await TFSServices.getItemContent(url, this.token, 'get', null, null);
|
|
193
193
|
return res;
|
|
194
194
|
}
|
|
195
|
+
|
|
196
|
+
async GetRecentReleaseArtifactInfo(projectName: string) {
|
|
197
|
+
let artifactInfo: any[] = [];
|
|
198
|
+
let url: string = `${this.orgUrl}${projectName}/_apis/release/releases?$top=1&api-version=6.0`;
|
|
199
|
+
if (url.startsWith('https://dev.azure.com')) {
|
|
200
|
+
url = url.replace('https://dev.azure.com', 'https://vsrm.dev.azure.com');
|
|
201
|
+
}
|
|
202
|
+
let res: any = await TFSServices.getItemContent(url, this.token);
|
|
203
|
+
const { value: releases } = res;
|
|
204
|
+
if (releases && releases.length > 0) {
|
|
205
|
+
const releaseId = releases[0].id;
|
|
206
|
+
let url: string = `${this.orgUrl}${projectName}/_apis/release/releases/${releaseId}?api-version=6.0`;
|
|
207
|
+
const releaseResponse = await TFSServices.getItemContent(url, this.token);
|
|
208
|
+
if (releaseResponse) {
|
|
209
|
+
const { artifacts } = releaseResponse;
|
|
210
|
+
for (const artifact of artifacts) {
|
|
211
|
+
const { definition, version } = artifact.definitionReference;
|
|
212
|
+
artifactInfo.push({ artifactName: definition.name, artifactVersion: version.name });
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
return artifactInfo;
|
|
217
|
+
}
|
|
195
218
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TFSServices } from '../helpers/tfs';
|
|
2
|
-
import { Workitem } from '../models/tfs-data';
|
|
2
|
+
import { Workitem, QueryTree } from '../models/tfs-data';
|
|
3
3
|
import { Helper, suiteData, Links, Trace, Relations } from '../helpers/helper';
|
|
4
4
|
import { Query, TestSteps } from '../models/tfs-data';
|
|
5
5
|
import { QueryType } from '../models/tfs-data';
|
|
@@ -98,58 +98,94 @@ export default class TicketsDataProvider {
|
|
|
98
98
|
return linkList;
|
|
99
99
|
}
|
|
100
100
|
// gets queries recursiv
|
|
101
|
-
async GetSharedQueries(project: string, path: string): Promise<any> {
|
|
101
|
+
async GetSharedQueries(project: string, path: string, docType: string = ''): Promise<any> {
|
|
102
102
|
let url;
|
|
103
103
|
try {
|
|
104
104
|
if (path == '')
|
|
105
105
|
url = `${this.orgUrl}${project}/_apis/wit/queries/Shared%20Queries?$depth=2&$expand=all`;
|
|
106
106
|
else url = `${this.orgUrl}${project}/_apis/wit/queries/${path}?$depth=2&$expand=all`;
|
|
107
107
|
let queries: any = await TFSServices.getItemContent(url, this.token);
|
|
108
|
-
|
|
109
|
-
|
|
108
|
+
logger.debug(`doctype: ${docType}`);
|
|
109
|
+
switch (docType) {
|
|
110
|
+
case 'STD':
|
|
111
|
+
return await this.fetchOneHopQueriesForStr(queries);
|
|
112
|
+
case 'SVD':
|
|
113
|
+
return await this.fetchAnyQueries(queries);
|
|
114
|
+
default:
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
110
117
|
} catch (err: any) {
|
|
111
118
|
logger.error(err.message);
|
|
112
119
|
logger.error(`Error stack trace: ${JSON.stringify(err.stack)}`);
|
|
113
120
|
}
|
|
114
121
|
}
|
|
115
122
|
|
|
116
|
-
async
|
|
123
|
+
private async fetchOneHopQueriesForStr(queries: any) {
|
|
124
|
+
const { tree1: reqTestTree, tree2: testReqTree } = await this.structureReqTestQueries(queries);
|
|
125
|
+
return { reqTestTree, testReqTree };
|
|
126
|
+
}
|
|
127
|
+
private async fetchAnyQueries(queries: any) {
|
|
128
|
+
const { tree1: systemOverviewQueryTree } = await this.structureAllQueryPath(queries);
|
|
129
|
+
//TODO:insert here the known bugs tree from the queries (similar to req-test)
|
|
130
|
+
const knownBugsTree = {};
|
|
131
|
+
return { systemOverviewQueryTree };
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
async GetQueryResultsFromWiql(wiqlHref: string = '', displayAsTable: boolean = false): Promise<any> {
|
|
117
135
|
try {
|
|
118
136
|
if (!wiqlHref) {
|
|
119
137
|
throw new Error('Incorrect WIQL Link');
|
|
120
138
|
}
|
|
121
|
-
|
|
122
139
|
// Remember to add customer id if needed
|
|
123
|
-
const queryResult:
|
|
140
|
+
const queryResult: QueryTree = await TFSServices.getItemContent(wiqlHref, this.token);
|
|
124
141
|
if (!queryResult) {
|
|
125
142
|
throw new Error('Query result failed');
|
|
126
143
|
}
|
|
127
144
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
145
|
+
switch (queryResult.queryType) {
|
|
146
|
+
case QueryType.OneHop:
|
|
147
|
+
return displayAsTable
|
|
148
|
+
? await this.parseDirectLinkedQueryResultForTableFormat(queryResult)
|
|
149
|
+
: await this.parseTreeQueryResult(queryResult);
|
|
150
|
+
case QueryType.Tree:
|
|
151
|
+
return await this.parseTreeQueryResult(queryResult);
|
|
152
|
+
case QueryType.Flat:
|
|
153
|
+
return await this.parseFlatQueryResult(queryResult);
|
|
154
|
+
default:
|
|
155
|
+
break;
|
|
132
156
|
}
|
|
157
|
+
} catch (err: any) {
|
|
158
|
+
logger.error(`Could not fetch query results for ${wiqlHref}: ${err.message}`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
133
161
|
|
|
134
|
-
|
|
162
|
+
private async parseDirectLinkedQueryResultForTableFormat(queryResult: QueryTree) {
|
|
163
|
+
const { columns, workItemRelations } = queryResult;
|
|
135
164
|
|
|
136
|
-
|
|
137
|
-
|
|
165
|
+
if (workItemRelations?.length === 0) {
|
|
166
|
+
throw new Error('No related work items were found');
|
|
167
|
+
}
|
|
138
168
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
if (name === 'CustomerRequirementId') {
|
|
144
|
-
columnsToShowMap.set(referenceName, 'Customer ID');
|
|
145
|
-
} else {
|
|
146
|
-
columnsToShowMap.set(referenceName, name);
|
|
147
|
-
}
|
|
148
|
-
});
|
|
169
|
+
const columnsToShowMap: Map<string, string> = new Map();
|
|
170
|
+
|
|
171
|
+
const columnSourceMap: Map<string, string> = new Map();
|
|
172
|
+
const columnTargetsMap: Map<string, string> = new Map();
|
|
149
173
|
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
174
|
+
//The map is copied because there are different fields for each WI type,
|
|
175
|
+
//Need to consider both ways (Req->Test; Test->Req)
|
|
176
|
+
columns.forEach((column: any) => {
|
|
177
|
+
const { referenceName, name } = column;
|
|
178
|
+
if (name === 'CustomerRequirementId') {
|
|
179
|
+
columnsToShowMap.set(referenceName, 'Customer ID');
|
|
180
|
+
} else {
|
|
181
|
+
columnsToShowMap.set(referenceName, name);
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
// Initialize maps
|
|
186
|
+
const sourceTargetsMap: Map<any, any[]> = new Map();
|
|
187
|
+
const lookupMap: Map<number, any> = new Map();
|
|
188
|
+
if (workItemRelations) {
|
|
153
189
|
for (const relation of workItemRelations) {
|
|
154
190
|
//if relation.Source is null and target has a valid value then the target is the source
|
|
155
191
|
if (!relation.source) {
|
|
@@ -177,14 +213,96 @@ export default class TicketsDataProvider {
|
|
|
177
213
|
targets.push(targetWi);
|
|
178
214
|
sourceTargetsMap.set(sourceRelation, targets);
|
|
179
215
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
columnsToShowMap.clear();
|
|
219
|
+
return {
|
|
220
|
+
sourceTargetsMap,
|
|
221
|
+
sortingSourceColumnsMap: columnSourceMap,
|
|
222
|
+
sortingTargetsColumnsMap: columnTargetsMap,
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
private async parseTreeQueryResult(queryResult: QueryTree) {
|
|
227
|
+
const { workItemRelations } = queryResult;
|
|
228
|
+
if (!workItemRelations) {
|
|
229
|
+
logger.warn(`No work items were found for this requested query`);
|
|
230
|
+
return null;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
try {
|
|
234
|
+
// Step 1: Identify roots and prepare a map of all nodes
|
|
235
|
+
const allItems: any = {};
|
|
236
|
+
const roots = [];
|
|
237
|
+
for (const relation of workItemRelations) {
|
|
238
|
+
const target = relation.target;
|
|
239
|
+
// Initialize the node if it doesn't exist yet
|
|
240
|
+
if (!allItems[target.id]) {
|
|
241
|
+
await this.initTreeQueryResultItem(target, allItems);
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
if (relation.rel === null && relation.source === null) {
|
|
245
|
+
roots.push(allItems[target.id]);
|
|
246
|
+
} else if (relation.source) {
|
|
247
|
+
// This means target is a child of source
|
|
248
|
+
const parentId = relation.source.id;
|
|
249
|
+
if (!allItems[parentId]) {
|
|
250
|
+
const source = relation.source;
|
|
251
|
+
await this.initTreeQueryResultItem(source, allItems);
|
|
252
|
+
}
|
|
253
|
+
// Add the target as a child of the parent
|
|
254
|
+
allItems[parentId].children.push(allItems[target.id]);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
return roots;
|
|
259
|
+
} catch (error: any) {
|
|
260
|
+
logger.error(`could not parse requested tree query: ${error.message}`);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
private async initTreeQueryResultItem(item: any, allItems: any) {
|
|
265
|
+
const urlWi = `${item.url}?fields=System.Description,System.Title,Microsoft.VSTS.TCM.ReproSteps,Microsoft.VSTS.CMMI.Symptom`;
|
|
266
|
+
const wi = await TFSServices.getItemContent(urlWi, this.token);
|
|
267
|
+
// need to fetch the WI with only the the title, the web URL and the description
|
|
268
|
+
allItems[item.id] = {
|
|
269
|
+
id: item.id,
|
|
270
|
+
title: wi.fields['System.Title'] || '',
|
|
271
|
+
description: wi.fields['Microsoft.VSTS.CMMI.Symptom'] ?? wi.fields['System.Description'] ?? '',
|
|
272
|
+
htmlUrl: wi._links.html.href,
|
|
273
|
+
children: [],
|
|
274
|
+
};
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
private async initFlatQueryResultItem(item: any, workItemMap: Map<number, any>) {
|
|
278
|
+
const urlWi = `${item.url}?fields=System.Description,System.Title,Microsoft.VSTS.TCM.ReproSteps,Microsoft.VSTS.CMMI.Symptom`;
|
|
279
|
+
const wi = await TFSServices.getItemContent(urlWi, this.token);
|
|
280
|
+
// need to fetch the WI with only the the title, the web URL and the description
|
|
281
|
+
workItemMap.set(item.id, {
|
|
282
|
+
id: item.id,
|
|
283
|
+
title: wi.fields['System.Title'] || '',
|
|
284
|
+
description: wi.fields['Microsoft.VSTS.CMMI.Symptom'] ?? wi.fields['System.Description'] ?? '',
|
|
285
|
+
htmlUrl: wi._links.html.href,
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
private async parseFlatQueryResult(queryResult: QueryTree) {
|
|
290
|
+
const { workItems } = queryResult;
|
|
291
|
+
if (!workItems) {
|
|
292
|
+
logger.warn(`No work items were found for this requested query`);
|
|
293
|
+
return null;
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
try {
|
|
297
|
+
const workItemsResultMap: Map<number, any> = new Map();
|
|
298
|
+
for (const wi of workItems) {
|
|
299
|
+
if (!workItemsResultMap.has(wi.id)) {
|
|
300
|
+
await this.initFlatQueryResultItem(wi, workItemsResultMap);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
return [...workItemsResultMap.values()];
|
|
304
|
+
} catch (error: any) {
|
|
305
|
+
logger.error(`could not parse requested flat query: ${error.message}`);
|
|
188
306
|
}
|
|
189
307
|
}
|
|
190
308
|
|
|
@@ -441,7 +559,64 @@ export default class TicketsDataProvider {
|
|
|
441
559
|
return res;
|
|
442
560
|
} //CreateNewWorkItem
|
|
443
561
|
|
|
444
|
-
private async
|
|
562
|
+
private async structureAllQueryPath(rootQuery: any, parentId: any = null): Promise<any> {
|
|
563
|
+
try {
|
|
564
|
+
if (!rootQuery.hasChildren) {
|
|
565
|
+
if (!rootQuery.isFolder) {
|
|
566
|
+
let treeNode = {
|
|
567
|
+
id: rootQuery.id,
|
|
568
|
+
pId: parentId,
|
|
569
|
+
value: rootQuery.name,
|
|
570
|
+
title: rootQuery.name,
|
|
571
|
+
queryType: rootQuery.queryType,
|
|
572
|
+
wiql: rootQuery._links.wiql ?? undefined,
|
|
573
|
+
isValidQuery: true,
|
|
574
|
+
};
|
|
575
|
+
|
|
576
|
+
return { tree1: treeNode, tree2: null };
|
|
577
|
+
} else {
|
|
578
|
+
return { tree1: null, tree2: null };
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
|
|
582
|
+
if (!rootQuery.children) {
|
|
583
|
+
const queryUrl = `${rootQuery.url}?$depth=2&$expand=all`;
|
|
584
|
+
const currentQuery = await TFSServices.getItemContent(queryUrl, this.token);
|
|
585
|
+
return currentQuery
|
|
586
|
+
? await this.structureAllQueryPath(currentQuery, currentQuery.id)
|
|
587
|
+
: { tree1: null, tree2: null };
|
|
588
|
+
}
|
|
589
|
+
|
|
590
|
+
// Process children recursively
|
|
591
|
+
const childResults = await Promise.all(
|
|
592
|
+
rootQuery.children.map((child: any) => this.structureAllQueryPath(child, rootQuery.id))
|
|
593
|
+
);
|
|
594
|
+
|
|
595
|
+
// Build tree
|
|
596
|
+
const treeChildren = childResults.map((res: any) => res.tree1).filter((child: any) => child !== null);
|
|
597
|
+
const treeNode =
|
|
598
|
+
treeChildren.length > 0
|
|
599
|
+
? {
|
|
600
|
+
id: rootQuery.id,
|
|
601
|
+
pId: parentId,
|
|
602
|
+
value: rootQuery.name,
|
|
603
|
+
title: rootQuery.name,
|
|
604
|
+
children: treeChildren,
|
|
605
|
+
}
|
|
606
|
+
: null;
|
|
607
|
+
|
|
608
|
+
return { tree1: treeNode, tree2: null };
|
|
609
|
+
} catch (err: any) {
|
|
610
|
+
logger.error(
|
|
611
|
+
`Error occurred while constructing the query list ${err.message} with query ${JSON.stringify(
|
|
612
|
+
rootQuery
|
|
613
|
+
)}`
|
|
614
|
+
);
|
|
615
|
+
logger.error(`Error stack ${err.message}`);
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
private async structureReqTestQueries(rootQuery: any, parentId: any = null): Promise<any> {
|
|
445
620
|
try {
|
|
446
621
|
if (!rootQuery.hasChildren) {
|
|
447
622
|
if (!rootQuery.isFolder && rootQuery.queryType === 'oneHop') {
|
|
@@ -481,13 +656,13 @@ export default class TicketsDataProvider {
|
|
|
481
656
|
const queryUrl = `${rootQuery.url}?$depth=2&$expand=all`;
|
|
482
657
|
const currentQuery = await TFSServices.getItemContent(queryUrl, this.token);
|
|
483
658
|
return currentQuery
|
|
484
|
-
? await this.
|
|
659
|
+
? await this.structureReqTestQueries(currentQuery, currentQuery.id)
|
|
485
660
|
: { tree1: null, tree2: null };
|
|
486
661
|
}
|
|
487
662
|
|
|
488
663
|
// Process children recursively
|
|
489
664
|
const childResults = await Promise.all(
|
|
490
|
-
rootQuery.children.map((child: any) => this.
|
|
665
|
+
rootQuery.children.map((child: any) => this.structureReqTestQueries(child, rootQuery.id))
|
|
491
666
|
);
|
|
492
667
|
|
|
493
668
|
// Build tree1
|