@elisra-devops/docgen-data-provider 1.21.0 → 1.23.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 (49) hide show
  1. package/bin/helpers/helper.js.map +1 -1
  2. package/bin/helpers/test/tfs.test.d.ts +1 -0
  3. package/bin/helpers/test/tfs.test.js +613 -0
  4. package/bin/helpers/test/tfs.test.js.map +1 -0
  5. package/bin/helpers/tfs.js +4 -8
  6. package/bin/helpers/tfs.js.map +1 -1
  7. package/bin/modules/GitDataProvider.js.map +1 -1
  8. package/bin/modules/PipelinesDataProvider.js +3 -2
  9. package/bin/modules/PipelinesDataProvider.js.map +1 -1
  10. package/bin/modules/ResultDataProvider.d.ts +199 -17
  11. package/bin/modules/ResultDataProvider.js +611 -195
  12. package/bin/modules/ResultDataProvider.js.map +1 -1
  13. package/bin/modules/TestDataProvider.js +7 -7
  14. package/bin/modules/TestDataProvider.js.map +1 -1
  15. package/bin/modules/TicketsDataProvider.d.ts +1 -1
  16. package/bin/modules/TicketsDataProvider.js +3 -2
  17. package/bin/modules/TicketsDataProvider.js.map +1 -1
  18. package/bin/modules/test/JfrogDataProvider.test.d.ts +1 -0
  19. package/bin/modules/test/JfrogDataProvider.test.js +110 -0
  20. package/bin/modules/test/JfrogDataProvider.test.js.map +1 -0
  21. package/bin/modules/test/ResultDataProvider.test.d.ts +1 -0
  22. package/bin/modules/test/ResultDataProvider.test.js +478 -0
  23. package/bin/modules/test/ResultDataProvider.test.js.map +1 -0
  24. package/bin/modules/test/gitDataProvider.test.js +424 -120
  25. package/bin/modules/test/gitDataProvider.test.js.map +1 -1
  26. package/bin/modules/test/managmentDataProvider.test.js +283 -28
  27. package/bin/modules/test/managmentDataProvider.test.js.map +1 -1
  28. package/bin/modules/test/pipelineDataProvider.test.js +229 -45
  29. package/bin/modules/test/pipelineDataProvider.test.js.map +1 -1
  30. package/bin/modules/test/testDataProvider.test.js +225 -81
  31. package/bin/modules/test/testDataProvider.test.js.map +1 -1
  32. package/bin/modules/test/ticketsDataProvider.test.js +310 -82
  33. package/bin/modules/test/ticketsDataProvider.test.js.map +1 -1
  34. package/package.json +1 -1
  35. package/src/helpers/helper.ts +16 -14
  36. package/src/helpers/test/tfs.test.ts +748 -0
  37. package/src/helpers/tfs.ts +4 -8
  38. package/src/modules/GitDataProvider.ts +10 -10
  39. package/src/modules/PipelinesDataProvider.ts +2 -2
  40. package/src/modules/ResultDataProvider.ts +815 -260
  41. package/src/modules/TestDataProvider.ts +8 -8
  42. package/src/modules/TicketsDataProvider.ts +5 -9
  43. package/src/modules/test/JfrogDataProvider.test.ts +171 -0
  44. package/src/modules/test/ResultDataProvider.test.ts +581 -0
  45. package/src/modules/test/gitDataProvider.test.ts +671 -187
  46. package/src/modules/test/managmentDataProvider.test.ts +386 -26
  47. package/src/modules/test/pipelineDataProvider.test.ts +281 -52
  48. package/src/modules/test/testDataProvider.test.ts +307 -105
  49. package/src/modules/test/ticketsDataProvider.test.ts +425 -129
@@ -1 +1 @@
1
- {"version":3,"file":"pipelineDataProvider.test.js","sourceRoot":"","sources":["../../../src/modules/test/pipelineDataProvider.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pipelineDataProvider.test.js","sourceRoot":"","sources":["../../../src/modules/test/pipelineDataProvider.test.ts"],"names":[],"mappings":"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"}
@@ -1,95 +1,239 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const __1 = require("../..");
4
- require('dotenv').config();
5
- jest.setTimeout(600000);
6
- const orgUrl = process.env.ORG_URL;
7
- const token = process.env.PAT;
8
- const dgDataProviderAzureDevOps = new __1.default(orgUrl, token);
9
- describe('Test module - tests', () => {
10
- test('should return test plans', async () => {
11
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
12
- let json = await TestDataProvider.GetTestPlans('tests');
13
- expect(json.count).toBeGreaterThanOrEqual(1);
3
+ const tfs_1 = require("../../helpers/tfs");
4
+ const helper_1 = require("../../helpers/helper");
5
+ const TestDataProvider_1 = require("../TestDataProvider");
6
+ const logger_1 = require("../../utils/logger");
7
+ jest.mock('../../helpers/tfs');
8
+ jest.mock('../../utils/logger');
9
+ jest.mock('../../helpers/helper');
10
+ jest.mock('../../utils/testStepParserHelper');
11
+ jest.mock('p-limit', () => jest.fn(() => (fn) => fn()));
12
+ describe('TestDataProvider', () => {
13
+ let testDataProvider;
14
+ const mockOrgUrl = 'https://dev.azure.com/orgname/';
15
+ const mockToken = 'mock-token';
16
+ const mockProject = 'project-123';
17
+ const mockPlanId = '456';
18
+ const mockSuiteId = '789';
19
+ const mockTestCaseId = '101112';
20
+ beforeEach(() => {
21
+ jest.clearAllMocks();
22
+ helper_1.Helper.suitList = [];
23
+ helper_1.Helper.first = false;
24
+ testDataProvider = new TestDataProvider_1.default(mockOrgUrl, mockToken);
14
25
  });
15
- test('should return test suites by plan', async () => {
16
- //not working yet
17
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
18
- let testSuites = await TestDataProvider.GetTestSuitesByPlan('tests', '540', true);
19
- expect(testSuites[0].name).toBe('TestSuite');
26
+ // Helper to access private method for testing
27
+ const invokeFetchWithCache = async (instance, url, ttl = 60000) => {
28
+ return instance.fetchWithCache.call(instance, url, ttl);
29
+ };
30
+ describe('fetchWithCache', () => {
31
+ it('should return cached data when available and not expired', async () => {
32
+ // Arrange
33
+ const mockUrl = `${mockOrgUrl}_apis/test/endpoint`;
34
+ const mockData = { value: 'test data' };
35
+ const cache = new Map();
36
+ cache.set(mockUrl, {
37
+ data: mockData,
38
+ timestamp: Date.now()
39
+ });
40
+ testDataProvider.cache = cache;
41
+ // Act
42
+ const result = await invokeFetchWithCache(testDataProvider, mockUrl);
43
+ // Assert
44
+ expect(result).toEqual(mockData);
45
+ expect(tfs_1.TFSServices.getItemContent).not.toHaveBeenCalled();
46
+ });
47
+ it('should fetch new data when cache is expired', async () => {
48
+ // Arrange
49
+ const mockUrl = `${mockOrgUrl}_apis/test/endpoint`;
50
+ const mockData = { value: 'old data' };
51
+ const newData = { value: 'new data' };
52
+ const cache = new Map();
53
+ cache.set(mockUrl, {
54
+ data: mockData,
55
+ timestamp: Date.now() - 70000 // Expired (default TTL is 60000ms)
56
+ });
57
+ testDataProvider.cache = cache;
58
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(newData);
59
+ // Act
60
+ const result = await invokeFetchWithCache(testDataProvider, mockUrl);
61
+ // Assert
62
+ expect(result).toEqual(newData);
63
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(mockUrl, mockToken);
64
+ });
65
+ it('should fetch and cache new data when not in cache', async () => {
66
+ // Arrange
67
+ const mockUrl = `${mockOrgUrl}_apis/test/endpoint`;
68
+ const mockData = { value: 'new data' };
69
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockData);
70
+ // Act
71
+ const result = await invokeFetchWithCache(testDataProvider, mockUrl);
72
+ // Assert
73
+ expect(result).toEqual(mockData);
74
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(mockUrl, mockToken);
75
+ expect(testDataProvider.cache.has(mockUrl)).toBeTruthy();
76
+ expect(testDataProvider.cache.get(mockUrl).data).toEqual(mockData);
77
+ });
78
+ it('should throw and log error when fetch fails', async () => {
79
+ // Arrange
80
+ const mockUrl = `${mockOrgUrl}_apis/test/endpoint`;
81
+ const mockError = new Error('API call failed');
82
+ tfs_1.TFSServices.getItemContent.mockRejectedValueOnce(mockError);
83
+ // Act & Assert
84
+ await expect(invokeFetchWithCache(testDataProvider, mockUrl)).rejects.toThrow('API call failed');
85
+ expect(logger_1.default.error).toHaveBeenCalledWith(`Error fetching ${mockUrl}: API call failed`);
86
+ });
20
87
  });
21
- test('should return list of test cases', async () => {
22
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
23
- let attachList = await TestDataProvider.GetTestCasesBySuites('tests', '545', '546', true, true, true);
24
- expect(attachList.length > 0).toBeDefined();
88
+ describe('GetTestSuiteByTestCase', () => {
89
+ it('should return test suites for a given test case ID', async () => {
90
+ // Arrange
91
+ const mockData = { value: [{ id: '123', name: 'Test Suite 1' }] };
92
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockData);
93
+ // Act
94
+ const result = await testDataProvider.GetTestSuiteByTestCase(mockTestCaseId);
95
+ // Assert
96
+ expect(result).toEqual(mockData);
97
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(`${mockOrgUrl}_apis/testplan/suites?testCaseId=${mockTestCaseId}`, mockToken);
98
+ });
25
99
  });
26
- test('should use Helper.findSuitesRecursive twice after restarting static value of Helper.first=True ', async () => {
27
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
28
- let suitesByPlan = await TestDataProvider.GetTestSuitesByPlan('tests', '545', true);
29
- expect(suitesByPlan.length > 0).toBeDefined();
100
+ describe('GetTestPlans', () => {
101
+ it('should return test plans for a given project', async () => {
102
+ // Arrange
103
+ const mockData = {
104
+ value: [
105
+ { id: '456', name: 'Test Plan 1' },
106
+ { id: '789', name: 'Test Plan 2' }
107
+ ]
108
+ };
109
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockData);
110
+ // Act
111
+ const result = await testDataProvider.GetTestPlans(mockProject);
112
+ // Assert
113
+ expect(result).toEqual(mockData);
114
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(`${mockOrgUrl}${mockProject}/_apis/test/plans`, mockToken);
115
+ });
30
116
  });
31
- test.skip('should return list of test cases - stress test - big testplan 1400 cases', async () => {
32
- jest.setTimeout(1000000);
33
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
34
- let attachList = await TestDataProvider.GetTestCasesBySuites('tests', '540', '549', true, true, true);
35
- expect(attachList.length > 1000).toBeDefined(); //not enough test cases for stress test
117
+ describe('GetTestSuites', () => {
118
+ it('should return test suites for a given project and plan ID', async () => {
119
+ // Arrange
120
+ const mockData = {
121
+ value: [
122
+ { id: '123', name: 'Test Suite 1' },
123
+ { id: '456', name: 'Test Suite 2' }
124
+ ]
125
+ };
126
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockData);
127
+ // Act
128
+ const result = await testDataProvider.GetTestSuites(mockProject, mockPlanId);
129
+ // Assert
130
+ expect(result).toEqual(mockData);
131
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(`${mockOrgUrl}${mockProject}/_apis/test/Plans/${mockPlanId}/suites`, mockToken);
132
+ });
133
+ it('should return null and log error if fetching test suites fails', async () => {
134
+ // Arrange
135
+ const mockError = new Error('Failed to get test suites');
136
+ tfs_1.TFSServices.getItemContent.mockRejectedValueOnce(mockError);
137
+ // Act
138
+ const result = await testDataProvider.GetTestSuites(mockProject, mockPlanId);
139
+ // Assert
140
+ expect(result).toBeNull();
141
+ });
36
142
  });
37
- test('should return test cases by suite', async () => {
38
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
39
- let json = await TestDataProvider.GetTestCases('tests', '540', '541');
40
- expect(json.count).toBeGreaterThan(0);
143
+ describe('GetTestSuitesForPlan', () => {
144
+ it('should throw error when project is not provided', async () => {
145
+ // Act & Assert
146
+ await expect(testDataProvider.GetTestSuitesForPlan('', mockPlanId))
147
+ .rejects.toThrow('Project not selected');
148
+ });
149
+ it('should throw error when plan ID is not provided', async () => {
150
+ // Act & Assert
151
+ await expect(testDataProvider.GetTestSuitesForPlan(mockProject, ''))
152
+ .rejects.toThrow('Plan not selected');
153
+ });
154
+ it('should return test suites for a plan', async () => {
155
+ // Arrange
156
+ const mockData = {
157
+ testSuites: [
158
+ { id: '123', name: 'Test Suite 1' },
159
+ { id: '456', name: 'Test Suite 2' }
160
+ ]
161
+ };
162
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockData);
163
+ // Act
164
+ const result = await testDataProvider.GetTestSuitesForPlan(mockProject, mockPlanId);
165
+ // Assert
166
+ expect(result).toEqual(mockData);
167
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(`${mockOrgUrl}/${mockProject}/_api/_testManagement/GetTestSuitesForPlan?__v=5&planId=${mockPlanId}`, mockToken);
168
+ });
41
169
  });
42
- test('should return test points by testcase', async () => {
43
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
44
- let json = await TestDataProvider.GetTestPoint('tests', '540', '541', '542');
45
- expect(json.count).toBeGreaterThan(0);
170
+ describe('GetTestSuiteById', () => {
171
+ it('should call GetTestSuitesForPlan and Helper.findSuitesRecursive with correct params', async () => {
172
+ // Arrange
173
+ const mockTestSuites = { testSuites: [{ id: '123', name: 'Test Suite 1' }] };
174
+ const mockSuiteData = [new helper_1.suiteData('Test Suite 1', '123', '456', 1)];
175
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockTestSuites);
176
+ helper_1.Helper.findSuitesRecursive.mockReturnValueOnce(mockSuiteData);
177
+ // Act
178
+ const result = await testDataProvider.GetTestSuiteById(mockProject, mockPlanId, mockSuiteId, true);
179
+ // Assert
180
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(`${mockOrgUrl}/${mockProject}/_api/_testManagement/GetTestSuitesForPlan?__v=5&planId=${mockPlanId}`, mockToken);
181
+ expect(helper_1.Helper.findSuitesRecursive).toHaveBeenCalledWith(mockPlanId, mockOrgUrl, mockProject, mockTestSuites.testSuites, mockSuiteId, true);
182
+ expect(result).toEqual(mockSuiteData);
183
+ expect(helper_1.Helper.first).toBe(true);
184
+ });
46
185
  });
47
- test('should return test runs by testcaseid', async () => {
48
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
49
- let json = await TestDataProvider.GetTestRunById('tests', '1000120');
50
- expect(json.id).toBe(1000120);
186
+ describe('GetTestCases', () => {
187
+ it('should return test cases for a given project, plan ID, and suite ID', async () => {
188
+ // Arrange
189
+ const mockData = {
190
+ count: 2,
191
+ value: [
192
+ { testCase: { id: '101', name: 'Test Case 1', url: 'url1' } },
193
+ { testCase: { id: '102', name: 'Test Case 2', url: 'url2' } }
194
+ ]
195
+ };
196
+ tfs_1.TFSServices.getItemContent.mockResolvedValueOnce(mockData);
197
+ // Act
198
+ const result = await testDataProvider.GetTestCases(mockProject, mockPlanId, mockSuiteId);
199
+ // Assert
200
+ expect(result).toEqual(mockData);
201
+ expect(tfs_1.TFSServices.getItemContent).toHaveBeenCalledWith(`${mockOrgUrl}${mockProject}/_apis/test/Plans/${mockPlanId}/suites/${mockSuiteId}/testcases/`, mockToken);
202
+ expect(logger_1.default.debug).toHaveBeenCalledWith(`test cases for plan ${mockPlanId} and ${mockSuiteId} were found`);
203
+ });
51
204
  });
52
- test('should create run test according test pointId and return OK(200) as response ', async () => {
53
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
54
- let result = await TestDataProvider.CreateTestRun('tests', 'testrun', '540', '3');
55
- expect(result.status).toBe(200);
205
+ describe('clearCache', () => {
206
+ it('should clear the cache', () => {
207
+ // Arrange
208
+ const mockUrl = `${mockOrgUrl}_apis/test/endpoint`;
209
+ const mockData = { value: 'test data' };
210
+ const cache = new Map();
211
+ cache.set(mockUrl, {
212
+ data: mockData,
213
+ timestamp: Date.now()
214
+ });
215
+ testDataProvider.cache = cache;
216
+ // Act
217
+ testDataProvider.clearCache();
218
+ // Assert
219
+ expect(testDataProvider.cache.size).toBe(0);
220
+ expect(logger_1.default.debug).toHaveBeenCalledWith('Cache cleared');
221
+ });
56
222
  });
57
- test('should Update runId state and return OK(200) as response ', async () => {
58
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
59
- let result = await TestDataProvider.UpdateTestRun('tests', '1000124', //runId
60
- 'NeedsInvestigation' //Unspecified ,NotStarted, InProgress, Completed, Waiting, Aborted, NeedsInvestigation (State)
61
- );
62
- expect(result.status).toBe(200);
63
- });
64
- test('should Update test case state and return OK(200) as response ', async () => {
65
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
66
- let result = await TestDataProvider.UpdateTestCase('tests', '1000120', 2 //0-reset , 1-complite , 2-passed , 3-failed (State)
67
- );
68
- expect(result.status).toBe(200);
69
- });
70
- test('should Upload attachment for test run and return OK(200) as response ', async () => {
71
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
72
- let data = 'This is test line of data';
73
- let buff = new Buffer(data);
74
- let base64data = buff.toString('base64');
75
- let result = await TestDataProvider.UploadTestAttachment('1000120', //runID
76
- 'tests', base64data, //stream
77
- 'testAttachment2.json', //fileName
78
- 'Test attachment upload', //comment
79
- 'GeneralAttachment' //attachmentType
80
- );
81
- expect(result.status).toBe(200);
82
- });
83
- test('should Get all test case data', async () => {
84
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
85
- let result = await TestDataProvider.GetTestSuiteByTestCase('544');
86
- expect(result).toBeDefined;
87
- });
88
- test('should Get test points by test case id', async () => {
89
- let TestDataProvider = await dgDataProviderAzureDevOps.getTestDataProvider();
90
- let result = await TestDataProvider.GetTestPointByTestCaseId('tests', '544' //testCaseId
91
- );
92
- expect(result).toBeDefined;
223
+ describe('UpdateTestRun', () => {
224
+ it('should update a test run with the correct state', async () => {
225
+ // Arrange
226
+ const mockRunId = '12345';
227
+ const mockState = 'Completed';
228
+ const mockResponse = { id: mockRunId, state: mockState };
229
+ tfs_1.TFSServices.postRequest.mockResolvedValueOnce(mockResponse);
230
+ // Act
231
+ const result = await testDataProvider.UpdateTestRun(mockProject, mockRunId, mockState);
232
+ // Assert
233
+ expect(result).toEqual(mockResponse);
234
+ expect(tfs_1.TFSServices.postRequest).toHaveBeenCalledWith(`${mockOrgUrl}${mockProject}/_apis/test/Runs/${mockRunId}?api-version=5.0`, mockToken, 'PATCH', { state: mockState }, null);
235
+ expect(logger_1.default.info).toHaveBeenCalledWith(`Update runId : ${mockRunId} to state : ${mockState}`);
236
+ });
93
237
  });
94
238
  });
95
239
  //# sourceMappingURL=testDataProvider.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"testDataProvider.test.js","sourceRoot":"","sources":["../../../src/modules/test/testDataProvider.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testDataProvider.test.js","sourceRoot":"","sources":["../../../src/modules/test/testDataProvider.test.ts"],"names":[],"mappings":"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"}