@squiz/render-runtime-lib 1.73.0 → 1.75.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/lib/PreviewComponentService.js +43 -0
- package/lib/PreviewComponentService.js.map +1 -0
- package/lib/PreviewComponentService.spec.js +64 -0
- package/lib/PreviewComponentService.spec.js.map +1 -0
- package/lib/RenderInputService.js +286 -0
- package/lib/RenderInputService.js.map +1 -0
- package/lib/RenderInputService.spec.js +645 -0
- package/lib/RenderInputService.spec.js.map +1 -0
- package/lib/component-runner/ComponentRootUrlResolver.js +3 -0
- package/lib/component-runner/ComponentRootUrlResolver.js.map +1 -0
- package/lib/component-runner/ComponentRunnerServiceWithWorkers.js +91 -0
- package/lib/component-runner/ComponentRunnerServiceWithWorkers.js.map +1 -0
- package/lib/component-runner/ComponentRunnerServiceWithWorkers.spec.js +104 -0
- package/lib/component-runner/ComponentRunnerServiceWithWorkers.spec.js.map +1 -0
- package/lib/component-runner/ComponentRuntimeContext.d.ts +1 -8
- package/lib/component-runner/ComponentRuntimeContext.js +3 -0
- package/lib/component-runner/ComponentRuntimeContext.js.map +1 -0
- package/lib/component-runner/ContentRuntimeService.d.ts +1 -1
- package/lib/component-runner/ContentRuntimeService.js +31 -0
- package/lib/component-runner/ContentRuntimeService.js.map +1 -0
- package/lib/component-runner/ExecuteComponentTask.d.ts +1 -9
- package/lib/component-runner/ExecuteComponentTask.js +8 -0
- package/lib/component-runner/ExecuteComponentTask.js.map +1 -0
- package/lib/component-runner/FunctionReturnTypes.js +3 -0
- package/lib/component-runner/FunctionReturnTypes.js.map +1 -0
- package/lib/component-runner/index.js +23 -0
- package/lib/component-runner/index.js.map +1 -0
- package/lib/component-runner/worker/component-bootstrapper.js +63 -0
- package/lib/component-runner/worker/component-bootstrapper.js.map +1 -0
- package/lib/health-check-service.js +3 -0
- package/lib/health-check-service.js.map +1 -0
- package/lib/index.d.ts +0 -16
- package/lib/index.js +23 -4590
- package/lib/index.js.map +1 -7
- package/lib/ioc.js +37 -0
- package/lib/ioc.js.map +1 -0
- package/lib/test/helpers/fixtures.js +152 -0
- package/lib/test/helpers/fixtures.js.map +1 -0
- package/lib/test/helpers/stack.js +121 -0
- package/lib/test/helpers/stack.js.map +1 -0
- package/lib/test/index.js +21 -0
- package/lib/test/index.js.map +1 -0
- package/lib/test/mock-services/MockedComponentSetService.js +413 -0
- package/lib/test/mock-services/MockedComponentSetService.js.map +1 -0
- package/lib/test/mock-services/MockedContentItemService.js +37 -0
- package/lib/test/mock-services/MockedContentItemService.js.map +1 -0
- package/lib/test-helpers.d.ts +16 -0
- package/lib/test-helpers.js +44 -0
- package/lib/test-helpers.js.map +1 -0
- package/lib/utils/getContentItemIdFromInput.js +13 -0
- package/lib/utils/getContentItemIdFromInput.js.map +1 -0
- package/lib/utils/getContentItemIdFromInput.spec.js +18 -0
- package/lib/utils/getContentItemIdFromInput.spec.js.map +1 -0
- package/lib/utils/resolvePreviewOutput.js +71 -0
- package/lib/utils/resolvePreviewOutput.js.map +1 -0
- package/lib/utils/resolvePreviewOutput.spec.js +168 -0
- package/lib/utils/resolvePreviewOutput.spec.js.map +1 -0
- package/lib/utils/setHeadersOnExpressResponse.js +15 -0
- package/lib/utils/setHeadersOnExpressResponse.js.map +1 -0
- package/lib/utils/setHeadersOnExpressResponse.sepc.js +21 -0
- package/lib/utils/setHeadersOnExpressResponse.sepc.js.map +1 -0
- package/lib/webserver/app.js +78 -0
- package/lib/webserver/app.js.map +1 -0
- package/lib/webserver/controllers/CoreController.js +116 -0
- package/lib/webserver/controllers/CoreController.js.map +1 -0
- package/lib/webserver/controllers/CoreController.spec.js +132 -0
- package/lib/webserver/controllers/CoreController.spec.js.map +1 -0
- package/lib/webserver/controllers/DefinitionController.js +162 -0
- package/lib/webserver/controllers/DefinitionController.js.map +1 -0
- package/lib/webserver/controllers/DefinitionController.spec.js +16 -0
- package/lib/webserver/controllers/DefinitionController.spec.js.map +1 -0
- package/lib/webserver/controllers/DevelopmentController.js +149 -0
- package/lib/webserver/controllers/DevelopmentController.js.map +1 -0
- package/lib/webserver/controllers/DevelopmentController.spec.js +29 -0
- package/lib/webserver/controllers/DevelopmentController.spec.js.map +1 -0
- package/lib/webserver/controllers/PreviewController.spec.js +124 -0
- package/lib/webserver/controllers/PreviewController.spec.js.map +1 -0
- package/lib/webserver/controllers/RenderController.d.ts +3 -2
- package/lib/webserver/controllers/RenderController.js +221 -0
- package/lib/webserver/controllers/RenderController.js.map +1 -0
- package/lib/webserver/controllers/RenderController.spec.js +441 -0
- package/lib/webserver/controllers/RenderController.spec.js.map +1 -0
- package/lib/webserver/controllers/StaticController.js +149 -0
- package/lib/webserver/controllers/StaticController.js.map +1 -0
- package/lib/webserver/controllers/StaticController.spec.js +28 -0
- package/lib/webserver/controllers/StaticController.spec.js.map +1 -0
- package/lib/webserver/controllers/test/definition-route-tests.js +627 -0
- package/lib/webserver/controllers/test/definition-route-tests.js.map +1 -0
- package/lib/webserver/controllers/test/development-route-tests.js +110 -0
- package/lib/webserver/controllers/test/development-route-tests.js.map +1 -0
- package/lib/webserver/controllers/test/preview-route-tests.js +122 -0
- package/lib/webserver/controllers/test/preview-route-tests.js.map +1 -0
- package/lib/webserver/controllers/test/render-route-sandbox-tests.js +194 -0
- package/lib/webserver/controllers/test/render-route-sandbox-tests.js.map +1 -0
- package/lib/webserver/controllers/test/render-route-tests.js +422 -0
- package/lib/webserver/controllers/test/render-route-tests.js.map +1 -0
- package/lib/webserver/controllers/test/static-route-tests.js +96 -0
- package/lib/webserver/controllers/test/static-route-tests.js.map +1 -0
- package/lib/webserver/index.js +6 -0
- package/lib/webserver/index.js.map +1 -0
- package/lib/webserver/routes/routes.js +902 -0
- package/lib/webserver/routes/routes.js.map +1 -0
- package/package.json +13 -6
- package/lib/migrations/20220704054051_initial.sql +0 -19
- package/lib/migrations/20220718172237_adding_component_sets.sql +0 -23
- package/lib/migrations/20220728113941_add_env_vars_field.sql +0 -1
- package/lib/migrations/20220817113300_removing_null_props_from_jsonb.sql +0 -41
- package/lib/migrations/20221027151225_dummy.sql +0 -2
- package/lib/migrations/20221117151200_add_detail_columns_to_component_version.js +0 -40
- package/lib/migrations/20221220151200_add_required_to_manifests.js +0 -7794
- package/lib/migrations/20221222151200_add_required_to_manifests.js +0 -7856
- package/lib/migrations/20223525103556_component_set_rule.sql +0 -19
- package/lib/migrations/20230111095522_update_environment_property.js +0 -7802
- package/lib/migrations/20230203084900_ensure_static_root_exists.js +0 -47
- package/lib/migrations/20230210143300_lowercase_all_uri_names.js +0 -88
- package/lib/migrations/20230217151212_component_set_component_version_updates.sql +0 -38
- package/lib/migrations/20230218121212_add_component_set_rules.js +0 -24
- package/lib/migrations/202406061447_edge_component_type.sql +0 -1
- package/lib/migrations/202407111308_component_version_type.sql +0 -1
- package/lib/migrations/202408061132_update_type_to_server.sql +0 -1
- package/lib/public/docs.json +0 -5509
- package/lib/worker/component-bootstrapper.js +0 -185979
- package/lib/worker/component-bootstrapper.js.map +0 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definition-route-tests.js","sourceRoot":"","sources":["../../../../src/webserver/controllers/test/definition-route-tests.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.developmentRouteTests = void 0;
|
|
4
|
+
function developmentRouteTests(request, devModeEnabled) {
|
|
5
|
+
describe(`development routes`, () => {
|
|
6
|
+
if (devModeEnabled) {
|
|
7
|
+
describe('all route (dev mode enabled)', () => {
|
|
8
|
+
it('should return an array of all component manifests', async () => {
|
|
9
|
+
const response = await request().get('/dev/all');
|
|
10
|
+
expect(response.statusCode).toEqual(200);
|
|
11
|
+
expect(response.type).toEqual('application/json');
|
|
12
|
+
expect(response.body).toEqual(expect.arrayContaining([
|
|
13
|
+
expect.objectContaining({
|
|
14
|
+
$schema: 'http://localhost:3000/schemas/v1.json#',
|
|
15
|
+
name: 'test-preview-component',
|
|
16
|
+
version: '1.0.1',
|
|
17
|
+
mainFunction: 'main',
|
|
18
|
+
displayName: 'some-display-name',
|
|
19
|
+
namespace: 'unit-test-components',
|
|
20
|
+
description: 'some-description',
|
|
21
|
+
functions: expect.any(Array),
|
|
22
|
+
staticFiles: expect.any(Object),
|
|
23
|
+
previews: expect.any(Object),
|
|
24
|
+
}),
|
|
25
|
+
]));
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
describe('manifest route (dev mode enabled)', () => {
|
|
29
|
+
it('should return the manifest of the requested component', async () => {
|
|
30
|
+
const response = await request().get('/dev/manifest/unit-test-components/test-preview-component/1.0.1');
|
|
31
|
+
expect(response.statusCode).toEqual(200);
|
|
32
|
+
expect(response.type).toEqual('application/json');
|
|
33
|
+
expect(response.body).toEqual(expect.objectContaining({
|
|
34
|
+
$schema: 'http://localhost:3000/schemas/v1.json#',
|
|
35
|
+
name: 'test-preview-component',
|
|
36
|
+
version: '1.0.1',
|
|
37
|
+
mainFunction: 'main',
|
|
38
|
+
displayName: 'some-display-name',
|
|
39
|
+
namespace: 'unit-test-components',
|
|
40
|
+
description: 'some-description',
|
|
41
|
+
functions: expect.any(Array),
|
|
42
|
+
staticFiles: expect.any(Object),
|
|
43
|
+
previews: expect.any(Object),
|
|
44
|
+
}));
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
describe('schemas route (dev mode enabled)', () => {
|
|
48
|
+
it('should return the schemas of the requested component', async () => {
|
|
49
|
+
const response = await request().get('/dev/schemas/unit-test-components/test-preview-component/1.0.1');
|
|
50
|
+
expect(response.statusCode).toEqual(200);
|
|
51
|
+
expect(response.type).toEqual('application/json');
|
|
52
|
+
expect(response.body).toEqual([
|
|
53
|
+
{
|
|
54
|
+
name: 'main',
|
|
55
|
+
schema: {
|
|
56
|
+
type: 'object',
|
|
57
|
+
properties: {
|
|
58
|
+
something: {
|
|
59
|
+
type: 'string',
|
|
60
|
+
},
|
|
61
|
+
},
|
|
62
|
+
required: [],
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: 'promise-func',
|
|
67
|
+
schema: {
|
|
68
|
+
type: 'object',
|
|
69
|
+
properties: {
|
|
70
|
+
something: {
|
|
71
|
+
type: 'string',
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
required: ['something'],
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
]);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
describe('all route (dev mode disabled)', () => {
|
|
83
|
+
it('all return a 404 error', async () => {
|
|
84
|
+
const response = await request().get('/dev/all');
|
|
85
|
+
expect(response.statusCode).toEqual(404);
|
|
86
|
+
expect(response.type).toEqual('application/json');
|
|
87
|
+
expect(response.body).toEqual({ message: 'Route does not exist.' });
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
describe('manifest route (dev mode disabled)', () => {
|
|
91
|
+
it('should return a 404 error', async () => {
|
|
92
|
+
const response = await request().get('/dev/manifest/unit-test-components/test-preview-component/1.0.1');
|
|
93
|
+
expect(response.statusCode).toEqual(404);
|
|
94
|
+
expect(response.type).toEqual('application/json');
|
|
95
|
+
expect(response.body).toEqual({ message: 'Route does not exist.' });
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
describe('schemas route (dev mode disabled)', () => {
|
|
99
|
+
it('should return a 404 error', async () => {
|
|
100
|
+
const response = await request().get('/dev/schemas/unit-test-components/test-preview-component/1.0.1');
|
|
101
|
+
expect(response.statusCode).toEqual(404);
|
|
102
|
+
expect(response.type).toEqual('application/json');
|
|
103
|
+
expect(response.body).toEqual({ message: 'Route does not exist.' });
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
exports.developmentRouteTests = developmentRouteTests;
|
|
110
|
+
//# sourceMappingURL=development-route-tests.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"development-route-tests.js","sourceRoot":"","sources":["../../../../src/webserver/controllers/test/development-route-tests.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.previewRouteTests = void 0;
|
|
4
|
+
function previewRouteTests(request, rootUrl = '${rootUrl}') {
|
|
5
|
+
describe('preview routes', () => {
|
|
6
|
+
it('should render a preview of a component with no wrapper file', async () => {
|
|
7
|
+
await request()
|
|
8
|
+
.get('/r/unit-test-components/test-preview-component/1.2.4?_previewKey=test-preview')
|
|
9
|
+
.expect(200)
|
|
10
|
+
.expect('content-type', 'text/html; charset=utf-8')
|
|
11
|
+
.expect('800 | this is nested content');
|
|
12
|
+
});
|
|
13
|
+
it('should render a preview of a component with a different preset', async () => {
|
|
14
|
+
await request()
|
|
15
|
+
.get('/r/unit-test-components/test-preview-component/1.2.4?_previewKey=another-preview')
|
|
16
|
+
.expect(200)
|
|
17
|
+
.expect('content-type', 'text/html; charset=utf-8')
|
|
18
|
+
.expect('12300 | this is also nested content');
|
|
19
|
+
});
|
|
20
|
+
it('should render a preview of a component non-main function with a wrapper html file', async () => {
|
|
21
|
+
await request()
|
|
22
|
+
.get('/r/unit-test-components/test-preview-component/1.2.4/other?_previewKey=another-preview')
|
|
23
|
+
.expect(200)
|
|
24
|
+
.expect('content-type', 'text/html; charset=utf-8')
|
|
25
|
+
.expect((a) => {
|
|
26
|
+
expect(a.text).toMatchInlineSnapshot(`
|
|
27
|
+
"<!DOCTYPE html>
|
|
28
|
+
<html lang="en">
|
|
29
|
+
<head>
|
|
30
|
+
<meta charset="UTF-8" />
|
|
31
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
32
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
33
|
+
<title>This is the preview</title>
|
|
34
|
+
</head>
|
|
35
|
+
<body>
|
|
36
|
+
<code>{"random":"test-random-input","something":{"nested":123}}</code>
|
|
37
|
+
</body>
|
|
38
|
+
</html>
|
|
39
|
+
"
|
|
40
|
+
`);
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
it('should render a preview of a component function with static files, those static files are accessible', async () => {
|
|
44
|
+
const expectedCssPath = '/s/unit-test-components/test-preview-component/1.0.1/css-file.css?_previewKey=test-preview';
|
|
45
|
+
const expectedJsPath = '/s/unit-test-components/test-preview-component/1.0.1/js-file.js?_previewKey=test-preview';
|
|
46
|
+
await request()
|
|
47
|
+
.get('/r/unit-test-components/test-preview-component/1.0.1/?_previewKey=test-preview')
|
|
48
|
+
.expect(200)
|
|
49
|
+
.expect('content-type', 'text/html; charset=utf-8')
|
|
50
|
+
.expect((a) => {
|
|
51
|
+
expect(a.text.replace(new RegExp(rootUrl, 'g'), '')).toMatchInlineSnapshot(`
|
|
52
|
+
"<html>
|
|
53
|
+
<head>
|
|
54
|
+
<link rel="stylesheet" href="/s/unit-test-components/test-preview-component/1.0.1/css-file.css?_previewKey=test-preview">
|
|
55
|
+
</head>
|
|
56
|
+
<body>
|
|
57
|
+
<h1>hello</h1><p class="main">This has coloured background via CSS</p><p>Static URL - /s/unit-test-components/test-preview-component/1.0.1/js-file.js?_previewKey=test-preview</p> <script src="/s/unit-test-components/test-preview-component/1.0.1/js-file.js?_previewKey=test-preview"></script>
|
|
58
|
+
</body>
|
|
59
|
+
</html>
|
|
60
|
+
"
|
|
61
|
+
`);
|
|
62
|
+
});
|
|
63
|
+
await request()
|
|
64
|
+
.get(expectedCssPath)
|
|
65
|
+
.expect(200)
|
|
66
|
+
.expect('content-type', 'text/css; charset=UTF-8')
|
|
67
|
+
.expect((a) => {
|
|
68
|
+
expect(a.text).toMatchInlineSnapshot(`
|
|
69
|
+
".main,
|
|
70
|
+
p {
|
|
71
|
+
display: block;
|
|
72
|
+
background-color: rebeccapurple;
|
|
73
|
+
}
|
|
74
|
+
"
|
|
75
|
+
`);
|
|
76
|
+
});
|
|
77
|
+
await request()
|
|
78
|
+
.get(expectedJsPath)
|
|
79
|
+
.expect(200)
|
|
80
|
+
.expect('content-type', 'application/javascript; charset=UTF-8')
|
|
81
|
+
.expect((a) => {
|
|
82
|
+
expect(a.text).toMatchInlineSnapshot(`
|
|
83
|
+
"function clientFunc(input) {
|
|
84
|
+
console.log('hello');
|
|
85
|
+
}
|
|
86
|
+
clientFunc();
|
|
87
|
+
"
|
|
88
|
+
`);
|
|
89
|
+
});
|
|
90
|
+
}, 50000);
|
|
91
|
+
it('should load the defined preview for a given preview key', async () => {
|
|
92
|
+
const response = await request().get('/r/unit-test-components/test-preview-component/1.0.3?_previewKey=second-preview');
|
|
93
|
+
expect(response.text).toContain(`<p>Second Preview</p>`);
|
|
94
|
+
expect(response.statusCode).toEqual(200);
|
|
95
|
+
});
|
|
96
|
+
it('should give meaningful error when preview key is invalid', async () => {
|
|
97
|
+
const response = await request().get('/r/unit-test-components/test-preview-component/1.0.3?_previewKey=invalid');
|
|
98
|
+
expect(response.text).toEqual(`{"message":"Component has not defined preview with key \\"invalid\\", the defined preview keys for this component are \\"first-preview, second-preview, test-preview\\""}`);
|
|
99
|
+
expect(response.statusCode).toEqual(404);
|
|
100
|
+
});
|
|
101
|
+
it('should render inline preview data through to component', async () => {
|
|
102
|
+
const response = await request().get('/r/unit-test-components/test-preview-component/1.0.4?_previewKey=test-preview');
|
|
103
|
+
expect(response.text).toContain(`this is a result | 123`);
|
|
104
|
+
expect(response.statusCode).toEqual(200);
|
|
105
|
+
}, 10000);
|
|
106
|
+
it('should resolve URIs to mocked URI object in preview route', async () => {
|
|
107
|
+
await request()
|
|
108
|
+
.get('/r/unit-test-components/test-preview-component/1.1.1?_previewKey=test-preview')
|
|
109
|
+
.expect(200)
|
|
110
|
+
.expect((a) => {
|
|
111
|
+
expect(a.text).toMatchInlineSnapshot(`
|
|
112
|
+
"
|
|
113
|
+
inline:{"id":"id-inline","type":"root_folder","type_name":"Root Folder","version":"0.0.1","name":"Root Folder","short_name":"/","status":{"id":2,"code":"under_construction"},"created":{"date":"2020-02-27T09:47:27+11:00","user_id":null},"updated":{"date":"2020-02-27T09:47:27+11:00","user_id":""},"published":{"date":"2020-02-27T09:47:27+11:00","user_id":"null"},"status_changed":{"date":"2020-02-27T09:47:27+11:00","user_id":"null"},"url":"xxx","urls":[],"attributes":{"test":"test"},"additional":{}}
|
|
114
|
+
file:{"id":"id-file","type":"root_folder","type_name":"Root Folder","version":"0.0.1","name":"Root Folder","short_name":"/","status":{"id":2,"code":"under_construction"},"created":{"date":"2020-02-27T09:47:27+11:00","user_id":null},"updated":{"date":"2020-02-27T09:47:27+11:00","user_id":""},"published":{"date":"2020-02-27T09:47:27+11:00","user_id":"null"},"status_changed":{"date":"2020-02-27T09:47:27+11:00","user_id":"null"},"url":"xxx","urls":[],"attributes":{"test":"test"}}
|
|
115
|
+
"
|
|
116
|
+
`);
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
exports.previewRouteTests = previewRouteTests;
|
|
122
|
+
//# sourceMappingURL=preview-route-tests.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview-route-tests.js","sourceRoot":"","sources":["../../../../src/webserver/controllers/test/preview-route-tests.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderRouteSandboxTests = void 0;
|
|
4
|
+
function renderRouteSandboxTests(request) {
|
|
5
|
+
describe('GET /r/unit-test-components/test-malicious-code/...', () => {
|
|
6
|
+
it('should timeout infinite running code', async () => {
|
|
7
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.0.0/?_componentSet=set&something=hello');
|
|
8
|
+
expect(response.statusCode).toEqual(500);
|
|
9
|
+
expect(response.headers['content-type']).toEqual('text/html; charset=utf-8');
|
|
10
|
+
expect(response.text).toEqual('<!-- function while-true of component unit-test-components/test-malicious-code 1.0.0 could not complete with in the allotted time -->');
|
|
11
|
+
}, 30000);
|
|
12
|
+
it('should timeout non terminating code', async () => {
|
|
13
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.3.0/executing-after-return?_componentSet=set');
|
|
14
|
+
expect(response.statusCode).toEqual(500);
|
|
15
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
16
|
+
expect(response.body).toEqual({
|
|
17
|
+
message: 'function executing-after-return of component unit-test-components/test-malicious-code 1.3.0 could not complete with in the allotted time',
|
|
18
|
+
});
|
|
19
|
+
}, 30000);
|
|
20
|
+
it.skip('should not allow starting your own services', async () => {
|
|
21
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.3.0/reverse-shell?_componentSet=set');
|
|
22
|
+
expect(response.body).toEqual({
|
|
23
|
+
message: 'function executing-after-return of component unit-test-components/test-malicious-code 1.3.0 could not complete with in the allotted time',
|
|
24
|
+
});
|
|
25
|
+
expect(response.statusCode).toEqual(500);
|
|
26
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
27
|
+
}, 10000);
|
|
28
|
+
it.skip('should deny access to fs', async () => {
|
|
29
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.1.0/?_componentSet=set&something=hello');
|
|
30
|
+
expect(response.statusCode).toEqual(500);
|
|
31
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
32
|
+
expect(response.body).toEqual({
|
|
33
|
+
message: "Cannot find module 'fs'",
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
it('should allow access to a subset of node provided modules', async () => {
|
|
37
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.1.0/allowed-modules?_componentSet=set');
|
|
38
|
+
expect(response.statusCode).toEqual(200);
|
|
39
|
+
expect(response.headers['content-type']).toContain('application/json');
|
|
40
|
+
expect(response.body.sort()).toEqual([
|
|
41
|
+
'_http_agent',
|
|
42
|
+
'_http_client',
|
|
43
|
+
'_http_common',
|
|
44
|
+
'_http_incoming',
|
|
45
|
+
'_http_outgoing',
|
|
46
|
+
'_http_server',
|
|
47
|
+
'_stream_duplex',
|
|
48
|
+
'_stream_passthrough',
|
|
49
|
+
'_stream_readable',
|
|
50
|
+
'_stream_transform',
|
|
51
|
+
'_stream_wrap',
|
|
52
|
+
'_stream_writable',
|
|
53
|
+
'_tls_common',
|
|
54
|
+
'_tls_wrap',
|
|
55
|
+
'assert',
|
|
56
|
+
'assert/strict',
|
|
57
|
+
'async_hooks',
|
|
58
|
+
'buffer',
|
|
59
|
+
'child_process',
|
|
60
|
+
'cluster',
|
|
61
|
+
'console',
|
|
62
|
+
'constants',
|
|
63
|
+
'crypto',
|
|
64
|
+
'dgram',
|
|
65
|
+
'diagnostics_channel',
|
|
66
|
+
'dns',
|
|
67
|
+
'dns/promises',
|
|
68
|
+
'domain',
|
|
69
|
+
'events',
|
|
70
|
+
'fs',
|
|
71
|
+
'fs/promises',
|
|
72
|
+
'http',
|
|
73
|
+
'http2',
|
|
74
|
+
'https',
|
|
75
|
+
'inspector',
|
|
76
|
+
'inspector/promises',
|
|
77
|
+
'module',
|
|
78
|
+
'net',
|
|
79
|
+
'os',
|
|
80
|
+
'path',
|
|
81
|
+
'path/posix',
|
|
82
|
+
'path/win32',
|
|
83
|
+
'perf_hooks',
|
|
84
|
+
'process',
|
|
85
|
+
'punycode',
|
|
86
|
+
'querystring',
|
|
87
|
+
'readline',
|
|
88
|
+
'readline/promises',
|
|
89
|
+
'repl',
|
|
90
|
+
'stream',
|
|
91
|
+
'stream/consumers',
|
|
92
|
+
'stream/promises',
|
|
93
|
+
'stream/web',
|
|
94
|
+
'string_decoder',
|
|
95
|
+
'sys',
|
|
96
|
+
'timers',
|
|
97
|
+
'timers/promises',
|
|
98
|
+
'tls',
|
|
99
|
+
'trace_events',
|
|
100
|
+
'tty',
|
|
101
|
+
'url',
|
|
102
|
+
'util',
|
|
103
|
+
'util/types',
|
|
104
|
+
'v8',
|
|
105
|
+
'vm',
|
|
106
|
+
'wasi',
|
|
107
|
+
'worker_threads',
|
|
108
|
+
'zlib',
|
|
109
|
+
].sort());
|
|
110
|
+
});
|
|
111
|
+
it('should not allow process.exit calls', async () => {
|
|
112
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/process-exit?_componentSet=set');
|
|
113
|
+
expect(response.statusCode).toEqual(500);
|
|
114
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
115
|
+
expect(response.body).toEqual({
|
|
116
|
+
message: 'process.exit is not a function',
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
it('should not allow process.binding calls', async () => {
|
|
120
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/process-binding?_componentSet=set');
|
|
121
|
+
expect(response.statusCode).toEqual(500);
|
|
122
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
123
|
+
expect(response.body).toEqual({
|
|
124
|
+
message: "Cannot read properties of undefined (reading 'process')",
|
|
125
|
+
});
|
|
126
|
+
});
|
|
127
|
+
it('should not allow process.kill calls', async () => {
|
|
128
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/process-kill?_componentSet=set');
|
|
129
|
+
expect(response.statusCode).toEqual(500);
|
|
130
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
131
|
+
expect(response.body).toEqual({
|
|
132
|
+
message: 'process.kill is not a function',
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
it('should not allow process.abort calls', async () => {
|
|
136
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/process-abort?_componentSet=set');
|
|
137
|
+
expect(response.statusCode).toEqual(500);
|
|
138
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
139
|
+
expect(response.body).toEqual({
|
|
140
|
+
message: 'process.abort is not a function',
|
|
141
|
+
});
|
|
142
|
+
});
|
|
143
|
+
it.skip('should not allow access to parentPort', async () => {
|
|
144
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.3.0/accessing-parent-port?_componentSet=set');
|
|
145
|
+
expect(response.statusCode).toEqual(500);
|
|
146
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
147
|
+
expect(response.body).toEqual({
|
|
148
|
+
message: "Cannot find module 'worker_threads'",
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
it('should not allow escaping the sandbox through the constructor', async () => {
|
|
152
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/constructor-escape?_componentSet=set');
|
|
153
|
+
expect(response.statusCode).toEqual(500);
|
|
154
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
155
|
+
expect(response.body).toEqual({
|
|
156
|
+
message: "Cannot read properties of undefined (reading 'constructor')",
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
it('should not allow escaping the sandbox through the constructor and calling exit', async () => {
|
|
160
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/constructor-escape?_componentSet=set');
|
|
161
|
+
expect(response.statusCode).toEqual(500);
|
|
162
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
163
|
+
expect(response.body).toEqual({
|
|
164
|
+
message: "Cannot read properties of undefined (reading 'constructor')",
|
|
165
|
+
});
|
|
166
|
+
});
|
|
167
|
+
it('should not allow escaping the sandbox through the constructor and loading restricted modules', async () => {
|
|
168
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/constructor-fs?_componentSet=set');
|
|
169
|
+
expect(response.body).toEqual({
|
|
170
|
+
message: "Cannot read properties of undefined (reading 'constructor')",
|
|
171
|
+
});
|
|
172
|
+
expect(response.statusCode).toEqual(500);
|
|
173
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
174
|
+
});
|
|
175
|
+
it('should not allow circumvention of module restrictions', async () => {
|
|
176
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/circumventing-module-restriction?_componentSet=set');
|
|
177
|
+
expect(response.statusCode).toEqual(500);
|
|
178
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
179
|
+
expect(response.body).toEqual({
|
|
180
|
+
message: "Cannot read properties of undefined (reading 'constructor')",
|
|
181
|
+
});
|
|
182
|
+
});
|
|
183
|
+
it('should not allow circumvention of module restrictions with mainmodule', async () => {
|
|
184
|
+
const response = await request().get('/r/unit-test-components/test-malicious-code/1.2.0/circumventing-module-restriction-mainmodule?_componentSet=set');
|
|
185
|
+
expect(response.statusCode).toEqual(500);
|
|
186
|
+
expect(response.headers['content-type']).toEqual('application/json; charset=utf-8');
|
|
187
|
+
expect(response.body).toEqual({
|
|
188
|
+
message: "Cannot read properties of undefined (reading 'require')",
|
|
189
|
+
});
|
|
190
|
+
});
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
exports.renderRouteSandboxTests = renderRouteSandboxTests;
|
|
194
|
+
//# sourceMappingURL=render-route-sandbox-tests.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-route-sandbox-tests.js","sourceRoot":"","sources":["../../../../src/webserver/controllers/test/render-route-sandbox-tests.ts"],"names":[],"mappings":"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"}
|