@elisra-devops/docgen-data-provider 1.128.0 → 1.130.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.
@@ -3056,7 +3056,7 @@ class ResultDataProvider {
3056
3056
  * @returns A promise that resolves to the fetched result data.
3057
3057
  */
3058
3058
  async fetchResultDataBasedOnWiBase(projectName, runId, resultId, isTestReporter = false, selectedFields, isQueryMode, point, includeAllHistory = false, useRunlessAsOf = false) {
3059
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
3059
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
3060
3060
  try {
3061
3061
  let filteredFields = {};
3062
3062
  let relatedRequirements = [];
@@ -3096,13 +3096,16 @@ class ResultDataProvider {
3096
3096
  else {
3097
3097
  const filteredLinkedFields = (_e = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@linked'))) === null || _e === void 0 ? void 0 : _e.map((field) => field.split('@')[0]);
3098
3098
  const selectedLinkedFieldSet = new Set(filteredLinkedFields);
3099
- const { relations } = testCaseData;
3100
- if (relations) {
3101
- await this.appendLinkedRelations(relations, relatedRequirements, relatedBugs, relatedCRs, testCaseData, selectedLinkedFieldSet);
3099
+ if (selectedLinkedFieldSet.size > 0) {
3100
+ const latestWi = await this.fetchWorkItemLatest(projectName, testCaseId, true);
3101
+ const relations = (_f = latestWi === null || latestWi === void 0 ? void 0 : latestWi.relations) !== null && _f !== void 0 ? _f : testCaseData === null || testCaseData === void 0 ? void 0 : testCaseData.relations;
3102
+ if (relations) {
3103
+ await this.appendLinkedRelations(relations, relatedRequirements, relatedBugs, relatedCRs, testCaseData, selectedLinkedFieldSet);
3104
+ }
3102
3105
  }
3103
3106
  selectedLinkedFieldSet.clear();
3104
3107
  }
3105
- const filteredTestCaseFields = (_f = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@testCaseWorkItemField'))) === null || _f === void 0 ? void 0 : _f.map((field) => field.split('@')[0]);
3108
+ const filteredTestCaseFields = (_g = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@testCaseWorkItemField'))) === null || _g === void 0 ? void 0 : _g.map((field) => field.split('@')[0]);
3106
3109
  const selectedFieldSet = new Set(filteredTestCaseFields);
3107
3110
  // Filter fields based on selected field set
3108
3111
  if (selectedFieldSet.size !== 0) {
@@ -3116,7 +3119,7 @@ class ResultDataProvider {
3116
3119
  }
3117
3120
  }
3118
3121
  selectedFieldSet.clear();
3119
- return Object.assign(Object.assign({}, newResultData), { stepsResultXml: ((_g = testCaseData === null || testCaseData === void 0 ? void 0 : testCaseData.fields) === null || _g === void 0 ? void 0 : _g['Microsoft.VSTS.TCM.Steps']) || undefined, testCaseRevision: Number((testCaseData === null || testCaseData === void 0 ? void 0 : testCaseData.rev) || suiteTestCaseRevision || 1), filteredFields,
3122
+ return Object.assign(Object.assign({}, newResultData), { stepsResultXml: ((_h = testCaseData === null || testCaseData === void 0 ? void 0 : testCaseData.fields) === null || _h === void 0 ? void 0 : _h['Microsoft.VSTS.TCM.Steps']) || undefined, testCaseRevision: Number((testCaseData === null || testCaseData === void 0 ? void 0 : testCaseData.rev) || suiteTestCaseRevision || 1), filteredFields,
3120
3123
  relatedRequirements,
3121
3124
  relatedBugs,
3122
3125
  relatedCRs });
@@ -3136,7 +3139,7 @@ class ResultDataProvider {
3136
3139
  this.appendQueryRelations(resultData.testCase.id, relatedRequirements, relatedBugs, relatedCRs);
3137
3140
  }
3138
3141
  else {
3139
- const filteredLinkedFields = (_h = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@linked'))) === null || _h === void 0 ? void 0 : _h.map((field) => field.split('@')[0]);
3142
+ const filteredLinkedFields = (_j = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@linked'))) === null || _j === void 0 ? void 0 : _j.map((field) => field.split('@')[0]);
3140
3143
  const selectedLinkedFieldSet = new Set(filteredLinkedFields);
3141
3144
  const { relations } = wiByRevision;
3142
3145
  if (relations) {
@@ -3144,7 +3147,7 @@ class ResultDataProvider {
3144
3147
  }
3145
3148
  selectedLinkedFieldSet.clear();
3146
3149
  }
3147
- const filteredTestCaseFields = (_j = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@testCaseWorkItemField'))) === null || _j === void 0 ? void 0 : _j.map((field) => field.split('@')[0]);
3150
+ const filteredTestCaseFields = (_k = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.filter((field) => field.includes('@testCaseWorkItemField'))) === null || _k === void 0 ? void 0 : _k.map((field) => field.split('@')[0]);
3148
3151
  const selectedFieldSet = new Set(filteredTestCaseFields);
3149
3152
  // Filter fields based on selected field set
3150
3153
  if (selectedFieldSet.size !== 0) {
@@ -3582,9 +3585,6 @@ class ResultDataProvider {
3582
3585
  const relatedUrl = relation.url;
3583
3586
  try {
3584
3587
  const wi = await tfs_1.TFSServices.getItemContent(relatedUrl, this.token);
3585
- if (wi.fields['System.State'] === 'Closed') {
3586
- continue;
3587
- }
3588
3588
  if (selectedLinkedFieldSet.has('associatedRequirement') &&
3589
3589
  wi.fields['System.WorkItemType'] === 'Requirement') {
3590
3590
  const { id, fields, _links } = wi;