@superblocksteam/sabs-client 0.752.0 → 0.753.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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"sabs.test.js","sourceRoot":"","sources":["../src/sabs.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=scan.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scan.test.d.ts","sourceRoot":"","sources":["../src/scan.test.ts"],"names":[],"mappings":""}
package/dist/scan.test.js DELETED
@@ -1,249 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const sabs_types_1 = require("@superblocksteam/sabs-types");
7
- const axios_1 = __importDefault(require("axios"));
8
- const errors_1 = require("./errors");
9
- const sabs_1 = require("./sabs");
10
- describe('sabs scan api', () => {
11
- const anyAccessToken = 'any-access-token';
12
- const anyArtifactReadToken = 'bucketeer-org-read-token';
13
- const anyScanKey = 'any-secret-scan-key';
14
- const anyMeta = new sabs_types_1.ScanApplicationMetadata({
15
- id: 'anyApplicationId',
16
- organizationId: 'anyOrganizationId'
17
- });
18
- afterEach(() => {
19
- jest.restoreAllMocks();
20
- });
21
- const sentScanRequest = (mockAxios) => mockAxios.mock.calls[0][0].data;
22
- const sentTerminateRequest = (mockAxios) => mockAxios.mock.calls[0][0].data;
23
- describe('scan', () => {
24
- test('posts the directory hash, scan key, and artifact read token to the scans endpoint', async () => {
25
- const mockAxios = jest.spyOn(axios_1.default, 'request');
26
- mockAxios.mockResolvedValue({ data: { scanId: 'expectedScanId' } });
27
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
28
- const result = await sabs.scan({
29
- artifactReadToken: anyArtifactReadToken,
30
- directoryHash: 'anyDirectoryHash',
31
- meta: anyMeta,
32
- scanKey: anyScanKey,
33
- accessToken: anyAccessToken
34
- });
35
- expect(result).toEqual({ scanId: 'expectedScanId' });
36
- expect(sentScanRequest(mockAxios).artifactReadToken).toEqual(anyArtifactReadToken);
37
- expect(mockAxios).toHaveBeenCalledWith(expect.objectContaining({
38
- method: 'POST',
39
- url: 'http://localhost:3000/v1/scans',
40
- headers: { Authorization: `Bearer ${anyAccessToken}` }
41
- }));
42
- });
43
- test('sends the policy gate context so findings can be attributed to a review run', async () => {
44
- const mockAxios = jest.spyOn(axios_1.default, 'request');
45
- mockAxios.mockResolvedValue({ data: { scanId: 'expectedScanId' } });
46
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
47
- await sabs.scan({
48
- artifactReadToken: anyArtifactReadToken,
49
- directoryHash: 'anyDirectoryHash',
50
- meta: anyMeta,
51
- scanKey: anyScanKey,
52
- accessToken: anyAccessToken,
53
- policyGate: {
54
- reviewPolicyId: 'anyReviewPolicyId',
55
- reviewPolicyVersionId: 'anyReviewPolicyVersionId',
56
- token: 'policy-gate-callback-token',
57
- trigger: 'anyTrigger'
58
- }
59
- });
60
- expect(sentScanRequest(mockAxios).policyGate).toEqual(expect.objectContaining({
61
- reviewPolicyId: 'anyReviewPolicyId',
62
- reviewPolicyVersionId: 'anyReviewPolicyVersionId',
63
- token: 'policy-gate-callback-token',
64
- trigger: 'anyTrigger'
65
- }));
66
- });
67
- test('omits the policy gate when the caller did not supply one', async () => {
68
- const mockAxios = jest.spyOn(axios_1.default, 'request');
69
- mockAxios.mockResolvedValue({ data: { scanId: 'expectedScanId' } });
70
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
71
- await sabs.scan({
72
- artifactReadToken: anyArtifactReadToken,
73
- directoryHash: 'anyDirectoryHash',
74
- meta: anyMeta,
75
- scanKey: anyScanKey,
76
- accessToken: anyAccessToken
77
- });
78
- expect(sentScanRequest(mockAxios).policyGate).toBeUndefined();
79
- });
80
- test.each([
81
- ['directory hash', { directoryHash: '' }],
82
- ['scan key', { scanKey: '' }],
83
- ['access token', { accessToken: '' }],
84
- ['artifact read token', { artifactReadToken: '' }]
85
- ])('rejects a missing %s before issuing a request', async (_name, override) => {
86
- const mockAxios = jest.spyOn(axios_1.default, 'request');
87
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
88
- await expect(sabs.scan({
89
- artifactReadToken: anyArtifactReadToken,
90
- directoryHash: 'anyDirectoryHash',
91
- meta: anyMeta,
92
- scanKey: anyScanKey,
93
- accessToken: anyAccessToken,
94
- ...override
95
- })).rejects.toThrow(errors_1.BadRequestError);
96
- expect(mockAxios).not.toHaveBeenCalled();
97
- });
98
- test('rejects application metadata that is missing the organization', async () => {
99
- const mockAxios = jest.spyOn(axios_1.default, 'request');
100
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
101
- await expect(sabs.scan({
102
- artifactReadToken: anyArtifactReadToken,
103
- directoryHash: 'anyDirectoryHash',
104
- meta: new sabs_types_1.ScanApplicationMetadata({ id: 'anyApplicationId', organizationId: '' }),
105
- scanKey: anyScanKey,
106
- accessToken: anyAccessToken
107
- })).rejects.toThrow(errors_1.BadRequestError);
108
- expect(mockAxios).not.toHaveBeenCalled();
109
- });
110
- });
111
- describe('scanStatus', () => {
112
- test('reads the status of a single scan', async () => {
113
- const mockAxios = jest.spyOn(axios_1.default, 'request');
114
- mockAxios.mockResolvedValue({ data: { scanId: 'anyScanId', status: sabs_types_1.ScanStatus.SUCCESS } });
115
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
116
- const result = await sabs.scanStatus({ scanId: 'anyScanId', accessToken: anyAccessToken });
117
- expect(result.status).toEqual(sabs_types_1.ScanStatus.SUCCESS);
118
- expect(mockAxios).toHaveBeenCalledWith(expect.objectContaining({
119
- method: 'GET',
120
- url: 'http://localhost:3000/v1/scans/anyScanId'
121
- }));
122
- });
123
- test('rejects a missing scan id before issuing a request', async () => {
124
- const mockAxios = jest.spyOn(axios_1.default, 'request');
125
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
126
- await expect(sabs.scanStatus({ scanId: '', accessToken: anyAccessToken })).rejects.toThrow(errors_1.BadRequestError);
127
- expect(mockAxios).not.toHaveBeenCalled();
128
- });
129
- });
130
- describe('scanList', () => {
131
- test('queries scans for an application directory', async () => {
132
- const mockAxios = jest.spyOn(axios_1.default, 'request');
133
- mockAxios.mockResolvedValue({ data: { scans: [] } });
134
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
135
- const result = await sabs.scanList({
136
- organizationId: 'anyOrganizationId',
137
- applicationId: 'anyApplicationId',
138
- directoryHash: 'anyDirectoryHash',
139
- accessToken: anyAccessToken
140
- });
141
- expect(result).toEqual({ scans: [] });
142
- expect(mockAxios).toHaveBeenCalledWith(expect.objectContaining({
143
- method: 'GET',
144
- url: 'http://localhost:3000/v1/scans',
145
- params: {
146
- organizationId: 'anyOrganizationId',
147
- applicationId: 'anyApplicationId',
148
- directoryHash: 'anyDirectoryHash'
149
- }
150
- }));
151
- });
152
- });
153
- describe('scanTerminate', () => {
154
- test('reports the terminal status, summary and timings', async () => {
155
- const mockAxios = jest.spyOn(axios_1.default, 'request');
156
- mockAxios.mockResolvedValue({ data: { scanId: 'anyScanId', status: sabs_types_1.ScanStatus.SUCCESS } });
157
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
158
- await sabs.scanTerminate({
159
- scanId: 'anyScanId',
160
- status: sabs_types_1.ScanStatus.SUCCESS,
161
- scanKey: anyScanKey,
162
- accessToken: anyAccessToken,
163
- summary: {
164
- totalFindings: 3,
165
- highSeverityFindings: 1,
166
- sourceFindings: 2,
167
- builtAssetFindings: 1,
168
- scannerVersion: '1.2.3'
169
- },
170
- stepTimings: { sourceScanMs: 250 }
171
- });
172
- const sent = sentTerminateRequest(mockAxios);
173
- expect(mockAxios.mock.calls[0][0].url).toEqual('http://localhost:3000/v1/scans/anyScanId/terminate');
174
- // Counts cross the wire as protobuf int64, which serializes as bigint.
175
- expect(sent.summary?.totalFindings).toEqual(BigInt(3));
176
- expect(sent.summary?.highSeverityFindings).toEqual(BigInt(1));
177
- expect(sent.summary?.scannerVersion).toEqual('1.2.3');
178
- expect(sent.stepTimings?.sourceScanMs).toEqual(BigInt(250));
179
- });
180
- test('reports a step that took under a millisecond as measured rather than unmeasured', async () => {
181
- const mockAxios = jest.spyOn(axios_1.default, 'request');
182
- mockAxios.mockResolvedValue({ data: { scanId: 'anyScanId', status: sabs_types_1.ScanStatus.SUCCESS } });
183
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
184
- await sabs.scanTerminate({
185
- scanId: 'anyScanId',
186
- status: sabs_types_1.ScanStatus.SUCCESS,
187
- scanKey: anyScanKey,
188
- accessToken: anyAccessToken,
189
- stepTimings: { fetchSourceMs: 0, sourceScanMs: 120 }
190
- });
191
- // Step timings have explicit presence, so a 0 must arrive as 0 and not as
192
- // an absent field, which would read as "this step never ran".
193
- const sent = sentTerminateRequest(mockAxios);
194
- expect(sent.stepTimings?.fetchSourceMs).toEqual(BigInt(0));
195
- expect(sent.stepTimings?.builtAssetScanMs).toBeUndefined();
196
- });
197
- test('reports a zero finding count as a real result', async () => {
198
- const mockAxios = jest.spyOn(axios_1.default, 'request');
199
- mockAxios.mockResolvedValue({ data: { scanId: 'anyScanId', status: sabs_types_1.ScanStatus.SUCCESS } });
200
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
201
- await sabs.scanTerminate({
202
- scanId: 'anyScanId',
203
- status: sabs_types_1.ScanStatus.SUCCESS,
204
- scanKey: anyScanKey,
205
- accessToken: anyAccessToken,
206
- summary: {
207
- totalFindings: 0,
208
- highSeverityFindings: 0,
209
- sourceFindings: 0,
210
- builtAssetFindings: 0,
211
- scannerVersion: '1.2.3'
212
- }
213
- });
214
- const sent = sentTerminateRequest(mockAxios);
215
- expect(sent.summary?.totalFindings).toEqual(BigInt(0));
216
- expect(sent.summary?.scannerVersion).toEqual('1.2.3');
217
- });
218
- test('reports a failure with its error message', async () => {
219
- const mockAxios = jest.spyOn(axios_1.default, 'request');
220
- mockAxios.mockResolvedValue({ data: { scanId: 'anyScanId', status: sabs_types_1.ScanStatus.FAILED } });
221
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
222
- await sabs.scanTerminate({
223
- scanId: 'anyScanId',
224
- status: sabs_types_1.ScanStatus.FAILED,
225
- scanKey: anyScanKey,
226
- accessToken: anyAccessToken,
227
- error: 'semgrep exploded'
228
- });
229
- expect(sentTerminateRequest(mockAxios).error).toEqual('semgrep exploded');
230
- });
231
- test.each([
232
- ['scan id', { scanId: '' }],
233
- ['scan key', { scanKey: '' }],
234
- ['access token', { accessToken: '' }]
235
- ])('rejects a missing %s before issuing a request', async (_name, override) => {
236
- const mockAxios = jest.spyOn(axios_1.default, 'request');
237
- const sabs = new sabs_1.SabsClient('http://localhost:3000');
238
- await expect(sabs.scanTerminate({
239
- scanId: 'anyScanId',
240
- status: sabs_types_1.ScanStatus.SUCCESS,
241
- scanKey: anyScanKey,
242
- accessToken: anyAccessToken,
243
- ...override
244
- })).rejects.toThrow(errors_1.BadRequestError);
245
- expect(mockAxios).not.toHaveBeenCalled();
246
- });
247
- });
248
- });
249
- //# sourceMappingURL=scan.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scan.test.js","sourceRoot":"","sources":["../src/scan.test.ts"],"names":[],"mappings":"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"}