@usebruno/js 0.46.1 → 0.48.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/package.json +9 -7
- package/src/bru.js +173 -75
- package/src/bruno-request.js +15 -7
- package/src/bruno-response.js +4 -0
- package/src/cookie-list.js +272 -0
- package/src/header-list.js +497 -0
- package/src/index.js +27 -2
- package/src/property-list.js +184 -0
- package/src/readonly-property-list.js +227 -0
- package/src/runtime/assert-runtime.js +164 -10
- package/src/runtime/script-runtime.js +55 -6
- package/src/runtime/test-runtime.js +19 -1
- package/src/runtime/vars-runtime.js +20 -3
- package/src/sandbox/bundle-browser-rollup.js +72 -66
- package/src/sandbox/bundle-libraries.js +10 -2
- package/src/sandbox/quickjs/index.js +8 -41
- package/src/sandbox/quickjs/shims/bru.js +31 -1
- package/src/sandbox/quickjs/shims/bruno-request.js +24 -3
- package/src/sandbox/quickjs/shims/bruno-response.js +57 -5
- package/src/sandbox/quickjs/shims/bruno-response.spec.js +91 -0
- package/src/sandbox/quickjs/shims/lib/uuid.spec.js +166 -0
- package/src/sandbox/quickjs/shims/require.js +56 -0
- package/src/sandbox/quickjs/shims/require.spec.js +154 -0
- package/src/sandbox/quickjs/shims/test.js +175 -2
- package/src/sandbox/quickjs/utils/property-list-bridge.js +190 -0
- package/src/sandbox/quickjs/utils/test-helpers.js +31 -0
- package/src/utils/error-formatter.js +345 -20
- package/src/utils/error-formatter.spec.js +683 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const chai = require('chai');
|
|
2
2
|
const Bru = require('../bru');
|
|
3
|
+
const { VISUALIZATION_CLEAR } = require('../bru');
|
|
3
4
|
const BrunoRequest = require('../bruno-request');
|
|
4
5
|
const BrunoResponse = require('../bruno-response');
|
|
5
6
|
const { cleanJson } = require('../utils');
|
|
@@ -31,7 +32,11 @@ class ScriptRuntime {
|
|
|
31
32
|
) {
|
|
32
33
|
let visualizations = [];
|
|
33
34
|
let setVisualizations = (data) => {
|
|
34
|
-
|
|
35
|
+
if (data.type === VISUALIZATION_CLEAR) {
|
|
36
|
+
visualizations = [];
|
|
37
|
+
} else {
|
|
38
|
+
visualizations.push(data);
|
|
39
|
+
}
|
|
35
40
|
};
|
|
36
41
|
const globalEnvironmentVariables = request?.globalEnvironmentVariables || {};
|
|
37
42
|
const oauth2CredentialVariables = request?.oauth2CredentialVariables || {};
|
|
@@ -43,8 +48,28 @@ class ScriptRuntime {
|
|
|
43
48
|
const assertionResults = request?.assertionResults || [];
|
|
44
49
|
const certsAndProxyConfig = request?.certsAndProxyConfig;
|
|
45
50
|
const scriptPath = request?.pathname;
|
|
46
|
-
const bru = new Bru(
|
|
47
|
-
|
|
51
|
+
const bru = new Bru({
|
|
52
|
+
runtime: this.runtime,
|
|
53
|
+
envVariables,
|
|
54
|
+
runtimeVariables,
|
|
55
|
+
processEnvVars,
|
|
56
|
+
collectionPath,
|
|
57
|
+
historyLogger,
|
|
58
|
+
setVisualizations,
|
|
59
|
+
secretVariables,
|
|
60
|
+
collectionVariables,
|
|
61
|
+
folderVariables,
|
|
62
|
+
requestVariables,
|
|
63
|
+
globalEnvironmentVariables,
|
|
64
|
+
oauth2CredentialVariables,
|
|
65
|
+
iterationDetails,
|
|
66
|
+
collectionName,
|
|
67
|
+
promptVariables,
|
|
68
|
+
certsAndProxyConfig,
|
|
69
|
+
requestUrl: request?.url,
|
|
70
|
+
onConsoleLog
|
|
71
|
+
});
|
|
72
|
+
const req = new BrunoRequest(request, historyLogger);
|
|
48
73
|
|
|
49
74
|
// extend bru with result getter methods
|
|
50
75
|
const { __brunoTestResults, test } = createBruTestResultMethods(bru, assertionResults, chai);
|
|
@@ -158,7 +183,11 @@ class ScriptRuntime {
|
|
|
158
183
|
) {
|
|
159
184
|
let visualizations = [];
|
|
160
185
|
let setVisualizations = (data) => {
|
|
161
|
-
|
|
186
|
+
if (data.type === VISUALIZATION_CLEAR) {
|
|
187
|
+
visualizations = [];
|
|
188
|
+
} else {
|
|
189
|
+
visualizations.push(data);
|
|
190
|
+
}
|
|
162
191
|
};
|
|
163
192
|
const globalEnvironmentVariables = request?.globalEnvironmentVariables || {};
|
|
164
193
|
const oauth2CredentialVariables = request?.oauth2CredentialVariables || {};
|
|
@@ -170,8 +199,28 @@ class ScriptRuntime {
|
|
|
170
199
|
const assertionResults = request?.assertionResults || [];
|
|
171
200
|
const certsAndProxyConfig = request?.certsAndProxyConfig;
|
|
172
201
|
const scriptPath = request?.pathname;
|
|
173
|
-
const bru = new Bru(
|
|
174
|
-
|
|
202
|
+
const bru = new Bru({
|
|
203
|
+
runtime: this.runtime,
|
|
204
|
+
envVariables,
|
|
205
|
+
runtimeVariables,
|
|
206
|
+
processEnvVars,
|
|
207
|
+
collectionPath,
|
|
208
|
+
historyLogger,
|
|
209
|
+
setVisualizations,
|
|
210
|
+
secretVariables,
|
|
211
|
+
collectionVariables,
|
|
212
|
+
folderVariables,
|
|
213
|
+
requestVariables,
|
|
214
|
+
globalEnvironmentVariables,
|
|
215
|
+
oauth2CredentialVariables,
|
|
216
|
+
iterationDetails,
|
|
217
|
+
collectionName,
|
|
218
|
+
promptVariables,
|
|
219
|
+
certsAndProxyConfig,
|
|
220
|
+
requestUrl: request?.url,
|
|
221
|
+
onConsoleLog
|
|
222
|
+
});
|
|
223
|
+
const req = new BrunoRequest(request, historyLogger);
|
|
175
224
|
const res = new BrunoResponse(response);
|
|
176
225
|
|
|
177
226
|
// extend bru with result getter methods
|
|
@@ -40,7 +40,25 @@ class TestRuntime {
|
|
|
40
40
|
const assertionResults = request?.assertionResults || [];
|
|
41
41
|
const certsAndProxyConfig = request?.certsAndProxyConfig;
|
|
42
42
|
const scriptPath = request?.pathname;
|
|
43
|
-
const bru = new Bru(
|
|
43
|
+
const bru = new Bru({
|
|
44
|
+
runtime: this.runtime,
|
|
45
|
+
envVariables,
|
|
46
|
+
runtimeVariables,
|
|
47
|
+
processEnvVars,
|
|
48
|
+
collectionPath,
|
|
49
|
+
historyLogger,
|
|
50
|
+
secretVariables,
|
|
51
|
+
collectionVariables,
|
|
52
|
+
folderVariables,
|
|
53
|
+
requestVariables,
|
|
54
|
+
globalEnvironmentVariables,
|
|
55
|
+
oauth2CredentialVariables,
|
|
56
|
+
iterationDetails,
|
|
57
|
+
collectionName,
|
|
58
|
+
promptVariables,
|
|
59
|
+
certsAndProxyConfig,
|
|
60
|
+
requestUrl: request?.url
|
|
61
|
+
});
|
|
44
62
|
const req = new BrunoRequest(request, historyLogger);
|
|
45
63
|
const res = new BrunoResponse(response);
|
|
46
64
|
|
|
@@ -24,7 +24,7 @@ class VarsRuntime {
|
|
|
24
24
|
this.mode = props?.mode || 'developer';
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
runPostResponseVars(vars, request, response, envVariables, runtimeVariables, collectionPath, processEnvVars, historyLogger,
|
|
27
|
+
runPostResponseVars(vars, request, response, envVariables, runtimeVariables, collectionPath, processEnvVars, historyLogger, secretVariables = {}) {
|
|
28
28
|
const requestVariables = request?.requestVariables || {};
|
|
29
29
|
const globalEnvironmentVariables = request?.globalEnvironmentVariables || {};
|
|
30
30
|
const oauth2CredentialVariables = request?.oauth2CredentialVariables || {};
|
|
@@ -38,7 +38,24 @@ class VarsRuntime {
|
|
|
38
38
|
|
|
39
39
|
const promptVariables = request?.promptVariables || {};
|
|
40
40
|
const certsAndProxyConfig = request?.certsAndProxyConfig;
|
|
41
|
-
const bru = new Bru(
|
|
41
|
+
const bru = new Bru({
|
|
42
|
+
runtime: this.runtime,
|
|
43
|
+
envVariables,
|
|
44
|
+
runtimeVariables,
|
|
45
|
+
processEnvVars,
|
|
46
|
+
collectionPath,
|
|
47
|
+
historyLogger,
|
|
48
|
+
secretVariables,
|
|
49
|
+
collectionVariables,
|
|
50
|
+
folderVariables,
|
|
51
|
+
requestVariables,
|
|
52
|
+
globalEnvironmentVariables,
|
|
53
|
+
oauth2CredentialVariables,
|
|
54
|
+
iterationDetails,
|
|
55
|
+
promptVariables,
|
|
56
|
+
certsAndProxyConfig,
|
|
57
|
+
requestUrl: request?.url
|
|
58
|
+
});
|
|
42
59
|
const req = new BrunoRequest(request, historyLogger);
|
|
43
60
|
const res = createResponseParser(response);
|
|
44
61
|
|
|
@@ -51,7 +68,7 @@ class VarsRuntime {
|
|
|
51
68
|
const context = {
|
|
52
69
|
...envVariables,
|
|
53
70
|
...runtimeVariables,
|
|
54
|
-
...
|
|
71
|
+
...secretVariables,
|
|
55
72
|
...bruContext
|
|
56
73
|
};
|
|
57
74
|
|