@grnsft/if 0.0.2
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/.devcontainer/devcontainer.json +38 -0
- package/.editorconfig +8 -0
- package/.env.example +9 -0
- package/.eslintignore +4 -0
- package/.eslintrc.json +8 -0
- package/.github/ISSUE_TEMPLATE/agenda.md +36 -0
- package/.github/ISSUE_TEMPLATE/blank-issue.md +10 -0
- package/.github/ISSUE_TEMPLATE/feedback.md +42 -0
- package/.github/ISSUE_TEMPLATE/model-plugin.md +63 -0
- package/.github/ISSUE_TEMPLATE/user-story.md +10 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +21 -0
- package/.github/workflows/nodejs-ci.yml +34 -0
- package/.gitmodules +3 -0
- package/.prettierrc.js +3 -0
- package/CONTRIBUTING.md +194 -0
- package/LICENSE +21 -0
- package/Makefile +16 -0
- package/README.md +67 -0
- package/build/__mocks__/azure/index.d.ts +11 -0
- package/build/__mocks__/azure/index.js +132 -0
- package/build/__mocks__/boavizta/countries.json +138 -0
- package/build/__mocks__/boavizta/instance_types.json +625 -0
- package/build/__mocks__/boavizta/providers.json +1 -0
- package/build/__mocks__/fs/index.d.ts +3 -0
- package/build/__mocks__/fs/index.js +56 -0
- package/build/__mocks__/model-universe/index.d.ts +33 -0
- package/build/__mocks__/model-universe/index.js +68 -0
- package/build/__mocks__/watt-time/data.json +119 -0
- package/build/__tests__/integration/ompl/index.test.d.ts +1 -0
- package/build/__tests__/integration/ompl/index.test.js +61 -0
- package/build/__tests__/unit/lib/azure-importer/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/azure-importer/index.test.js +152 -0
- package/build/__tests__/unit/lib/boavizta/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/boavizta/index.test.js +579 -0
- package/build/__tests__/unit/lib/case-studies/aveva.test.d.ts +1 -0
- package/build/__tests__/unit/lib/case-studies/aveva.test.js +36 -0
- package/build/__tests__/unit/lib/case-studies/emem.test.d.ts +1 -0
- package/build/__tests__/unit/lib/case-studies/emem.test.js +108 -0
- package/build/__tests__/unit/lib/case-studies/eshoppen.test.d.ts +1 -0
- package/build/__tests__/unit/lib/case-studies/eshoppen.test.js +53 -0
- package/build/__tests__/unit/lib/case-studies/sci-accenture.test.d.ts +1 -0
- package/build/__tests__/unit/lib/case-studies/sci-accenture.test.js +23 -0
- package/build/__tests__/unit/lib/ccf/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/ccf/index.test.js +223 -0
- package/build/__tests__/unit/lib/cloud-instance-metadata/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/cloud-instance-metadata/index.test.js +73 -0
- package/build/__tests__/unit/lib/sci/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/sci/index.test.js +106 -0
- package/build/__tests__/unit/lib/sci-e/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/sci-e/index.test.js +30 -0
- package/build/__tests__/unit/lib/sci-m/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/sci-m/index.test.js +58 -0
- package/build/__tests__/unit/lib/sci-o/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/sci-o/index.test.js +42 -0
- package/build/__tests__/unit/lib/shell-imp/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/shell-imp/index.test.js +21 -0
- package/build/__tests__/unit/lib/tdp-finder/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/tdp-finder/index.test.js +62 -0
- package/build/__tests__/unit/lib/teads-aws/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/teads-aws/index.test.js +170 -0
- package/build/__tests__/unit/lib/teads-curve/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/teads-curve/index.test.js +146 -0
- package/build/__tests__/unit/lib/watt-time/index.test.d.ts +1 -0
- package/build/__tests__/unit/lib/watt-time/index.test.js +106 -0
- package/build/__tests__/unit/util/args.test.d.ts +1 -0
- package/build/__tests__/unit/util/args.test.js +92 -0
- package/build/__tests__/unit/util/models-universe.test.d.ts +1 -0
- package/build/__tests__/unit/util/models-universe.test.js +211 -0
- package/build/__tests__/unit/util/observatory.test.d.ts +1 -0
- package/build/__tests__/unit/util/observatory.test.js +91 -0
- package/build/__tests__/unit/util/supercomputer.test.d.ts +1 -0
- package/build/__tests__/unit/util/supercomputer.test.js +231 -0
- package/build/__tests__/unit/util/yaml.test.d.ts +1 -0
- package/build/__tests__/unit/util/yaml.test.js +59 -0
- package/build/config/config.d.ts +32 -0
- package/build/config/config.js +74 -0
- package/build/config/index.d.ts +2 -0
- package/build/config/index.js +8 -0
- package/build/config/strings.d.ts +14 -0
- package/build/config/strings.js +30 -0
- package/build/index.d.ts +1 -0
- package/build/index.js +46 -0
- package/build/lib/azure-importer/index.d.ts +55 -0
- package/build/lib/azure-importer/index.js +314 -0
- package/build/lib/boavizta/index.d.ts +53 -0
- package/build/lib/boavizta/index.js +254 -0
- package/build/lib/case-studies/aveva-model.d.ts +29 -0
- package/build/lib/case-studies/aveva-model.js +53 -0
- package/build/lib/case-studies/emem-model.d.ts +42 -0
- package/build/lib/case-studies/emem-model.js +93 -0
- package/build/lib/case-studies/eshoppen-model.d.ts +24 -0
- package/build/lib/case-studies/eshoppen-model.js +123 -0
- package/build/lib/case-studies/index.d.ts +4 -0
- package/build/lib/case-studies/index.js +21 -0
- package/build/lib/case-studies/sci-accenture-model.d.ts +10 -0
- package/build/lib/case-studies/sci-accenture-model.js +37 -0
- package/build/lib/ccf/aws-embodied.json +5591 -0
- package/build/lib/ccf/aws-instances.json +21116 -0
- package/build/lib/ccf/aws-use.json +79 -0
- package/build/lib/ccf/azure-embodied.json +6547 -0
- package/build/lib/ccf/azure-instances.json +8332 -0
- package/build/lib/ccf/azure-use.json +58 -0
- package/build/lib/ccf/gcp-embodied.json +3049 -0
- package/build/lib/ccf/gcp-instances.json +3880 -0
- package/build/lib/ccf/gcp-use.json +58 -0
- package/build/lib/ccf/index.d.ts +63 -0
- package/build/lib/ccf/index.js +338 -0
- package/build/lib/cloud-instance-metadata/aws-instances.json +1 -0
- package/build/lib/cloud-instance-metadata/azure-instances.json +1 -0
- package/build/lib/cloud-instance-metadata/index.d.ts +15 -0
- package/build/lib/cloud-instance-metadata/index.js +104 -0
- package/build/lib/index.d.ts +15 -0
- package/build/lib/index.js +32 -0
- package/build/lib/interfaces/ccf.d.ts +19 -0
- package/build/lib/interfaces/ccf.js +3 -0
- package/build/lib/interfaces/index.d.ts +7 -0
- package/build/lib/interfaces/index.js +18 -0
- package/build/lib/sci/index.d.ts +13 -0
- package/build/lib/sci/index.js +131 -0
- package/build/lib/sci-e/index.d.ts +38 -0
- package/build/lib/sci-e/index.js +85 -0
- package/build/lib/sci-m/index.d.ts +10 -0
- package/build/lib/sci-m/index.js +124 -0
- package/build/lib/sci-o/index.d.ts +17 -0
- package/build/lib/sci-o/index.js +52 -0
- package/build/lib/shell-imp/index.d.ts +32 -0
- package/build/lib/shell-imp/index.js +82 -0
- package/build/lib/tdp-finder/index.d.ts +19 -0
- package/build/lib/tdp-finder/index.js +98 -0
- package/build/lib/teads-aws/aws-embodied.json +1 -0
- package/build/lib/teads-aws/aws-instances.json +1 -0
- package/build/lib/teads-aws/index.d.ts +58 -0
- package/build/lib/teads-aws/index.js +208 -0
- package/build/lib/teads-curve/index.d.ts +52 -0
- package/build/lib/teads-curve/index.js +158 -0
- package/build/lib/watt-time/index.d.ts +18 -0
- package/build/lib/watt-time/index.js +204 -0
- package/build/types/azure-importer.d.ts +29 -0
- package/build/types/azure-importer.js +3 -0
- package/build/types/boavizta.d.ts +7 -0
- package/build/types/boavizta.js +3 -0
- package/build/types/common.d.ts +7 -0
- package/build/types/common.js +9 -0
- package/build/types/impl.d.ts +40 -0
- package/build/types/impl.js +3 -0
- package/build/types/models-universe.d.ts +24 -0
- package/build/types/models-universe.js +3 -0
- package/build/types/process-args.d.ts +7 -0
- package/build/types/process-args.js +3 -0
- package/build/types/supercomputer.d.ts +4 -0
- package/build/types/supercomputer.js +3 -0
- package/build/util/args.d.ts +8 -0
- package/build/util/args.js +48 -0
- package/build/util/errors.d.ts +6 -0
- package/build/util/errors.js +22 -0
- package/build/util/helpers.d.ts +4 -0
- package/build/util/helpers.js +18 -0
- package/build/util/models-universe.d.ts +28 -0
- package/build/util/models-universe.js +95 -0
- package/build/util/observatory.d.ts +20 -0
- package/build/util/observatory.js +31 -0
- package/build/util/supercomputer.d.ts +30 -0
- package/build/util/supercomputer.js +109 -0
- package/build/util/validations.d.ts +25 -0
- package/build/util/validations.js +52 -0
- package/build/util/yaml.d.ts +13 -0
- package/build/util/yaml.js +36 -0
- package/coverage/clover.xml +1172 -0
- package/coverage/coverage-final.json +27 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/config/config.ts.html +310 -0
- package/coverage/lcov-report/config/index.html +146 -0
- package/coverage/lcov-report/config/index.ts.html +91 -0
- package/coverage/lcov-report/config/strings.ts.html +118 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +341 -0
- package/coverage/lcov-report/lib/boavizta/index.html +116 -0
- package/coverage/lcov-report/lib/boavizta/index.ts.html +1171 -0
- package/coverage/lcov-report/lib/case-studies/aveva-model.ts.html +277 -0
- package/coverage/lcov-report/lib/case-studies/emem-model.ts.html +439 -0
- package/coverage/lcov-report/lib/case-studies/eshoppen-model.ts.html +550 -0
- package/coverage/lcov-report/lib/case-studies/index.html +176 -0
- package/coverage/lcov-report/lib/case-studies/index.ts.html +97 -0
- package/coverage/lcov-report/lib/case-studies/sci-accenture-model.ts.html +232 -0
- package/coverage/lcov-report/lib/ccf/index.html +116 -0
- package/coverage/lcov-report/lib/ccf/index.ts.html +1339 -0
- package/coverage/lcov-report/lib/cloud-instance-metadata/index.html +116 -0
- package/coverage/lcov-report/lib/cloud-instance-metadata/index.ts.html +370 -0
- package/coverage/lcov-report/lib/index.html +116 -0
- package/coverage/lcov-report/lib/index.ts.html +121 -0
- package/coverage/lcov-report/lib/sci/index.html +116 -0
- package/coverage/lcov-report/lib/sci/index.ts.html +571 -0
- package/coverage/lcov-report/lib/sci-e/index.html +116 -0
- package/coverage/lcov-report/lib/sci-e/index.ts.html +403 -0
- package/coverage/lcov-report/lib/sci-m/index.html +116 -0
- package/coverage/lcov-report/lib/sci-m/index.ts.html +487 -0
- package/coverage/lcov-report/lib/sci-o/index.html +116 -0
- package/coverage/lcov-report/lib/sci-o/index.ts.html +265 -0
- package/coverage/lcov-report/lib/shell-imp/index.html +116 -0
- package/coverage/lcov-report/lib/shell-imp/index.ts.html +376 -0
- package/coverage/lcov-report/lib/teads-aws/index.html +116 -0
- package/coverage/lcov-report/lib/teads-aws/index.ts.html +823 -0
- package/coverage/lcov-report/lib/teads-curve/index.html +116 -0
- package/coverage/lcov-report/lib/teads-curve/index.ts.html +625 -0
- package/coverage/lcov-report/lib/watt-time/index.html +116 -0
- package/coverage/lcov-report/lib/watt-time/index.ts.html +829 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +196 -0
- package/coverage/lcov-report/types/common.ts.html +109 -0
- package/coverage/lcov-report/types/index.html +116 -0
- package/coverage/lcov-report/util/args.ts.html +244 -0
- package/coverage/lcov-report/util/index.html +176 -0
- package/coverage/lcov-report/util/models-universe.ts.html +679 -0
- package/coverage/lcov-report/util/observatory.ts.html +229 -0
- package/coverage/lcov-report/util/supercomputer.ts.html +466 -0
- package/coverage/lcov-report/util/yaml.ts.html +193 -0
- package/coverage/lcov.info +2094 -0
- package/docs/implementations/tdp-finder.md +36 -0
- package/examples/impls/case-studies/accenture.yml +155 -0
- package/examples/impls/case-studies/aveva.yaml +48 -0
- package/examples/impls/case-studies/azure-yassine.yaml +67 -0
- package/examples/impls/case-studies/boavizta.yml +26 -0
- package/examples/impls/case-studies/dow_msft.yml +173 -0
- package/examples/impls/case-studies/farm-insights.yaml +35 -0
- package/examples/impls/case-studies/gsf-website.yaml +93 -0
- package/examples/impls/case-studies/msft-eshoppen.yaml +162 -0
- package/examples/impls/case-studies/msft-green-ai.yaml +58 -0
- package/examples/impls/case-studies/ntt-data-on-premise.yaml +201 -0
- package/examples/impls/tdp-finder-test.yml +19 -0
- package/examples/impls/test/azure.yml +26 -0
- package/examples/impls/test/ccf.yml +19 -0
- package/examples/impls/test/complex-pipeline.yml +67 -0
- package/examples/impls/test/if-demo.yml +51 -0
- package/examples/impls/test/metadata.yml +20 -0
- package/examples/impls/test/nesting.yml +65 -0
- package/examples/impls/test/sci-e.yml +21 -0
- package/examples/impls/test/sci-m.yml +24 -0
- package/examples/impls/test/sci-o.yml +28 -0
- package/examples/impls/test/sci.yml +27 -0
- package/examples/impls/test/shell.yml +18 -0
- package/examples/impls/test/toto.yaml +22 -0
- package/examples/ompls/azure.yml +145 -0
- package/examples/ompls/ccf.yml +27 -0
- package/examples/ompls/complex-pipeline.yml +105 -0
- package/examples/ompls/full-sci.yml +64 -0
- package/examples/ompls/if-demo.yml +493 -0
- package/examples/ompls/metadata.yml +29 -0
- package/examples/ompls/nesting.yml +107 -0
- package/examples/ompls/sci-e.yml +23 -0
- package/examples/ompls/sci-m.yml +33 -0
- package/examples/ompls/sci-o.yml +29 -0
- package/examples/ompls/sci.yml +36 -0
- package/examples/ompls/shell.yml +23 -0
- package/jest.config.js +14 -0
- package/package.json +71 -0
- package/scripts/impact-test.sh +12 -0
- package/src/__mocks__/boavizta/countries.json +138 -0
- package/src/__mocks__/boavizta/instance_types.json +625 -0
- package/src/__mocks__/boavizta/providers.json +1 -0
- package/src/__mocks__/watt-time/data.json +119 -0
- package/src/config/units.yaml +125 -0
- package/src/lib/ccf/aws-embodied.json +5591 -0
- package/src/lib/ccf/aws-instances.json +21116 -0
- package/src/lib/ccf/aws-use.json +79 -0
- package/src/lib/ccf/azure-embodied.json +6547 -0
- package/src/lib/ccf/azure-instances.json +8332 -0
- package/src/lib/ccf/azure-use.json +58 -0
- package/src/lib/ccf/gcp-embodied.json +3049 -0
- package/src/lib/ccf/gcp-instances.json +3880 -0
- package/src/lib/ccf/gcp-use.json +58 -0
- package/src/lib/cloud-instance-metadata/aws-instances.json +1 -0
- package/src/lib/cloud-instance-metadata/azure-instances.json +1 -0
- package/src/lib/shell-imp/sampler +30 -0
- package/src/lib/tdp-finder/README.md +7 -0
- package/src/lib/tdp-finder/boavizta_data.csv +1768 -0
- package/src/lib/tdp-finder/data.csv +4460 -0
- package/src/lib/tdp-finder/data2.csv +2162 -0
- package/src/lib/teads-aws/aws-embodied.json +1 -0
- package/src/lib/teads-aws/aws-instances.json +1 -0
- package/tsconfig.test.json +39 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/yarn-error.log +5854 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const index_1 = require("../../../../lib/sci/index");
|
|
5
|
+
globals_1.jest.setTimeout(30000);
|
|
6
|
+
(0, globals_1.describe)('sci:configure test', () => {
|
|
7
|
+
(0, globals_1.test)('initialize and test', async () => {
|
|
8
|
+
const model = await new index_1.SciModel().configure('name', {
|
|
9
|
+
'functional-unit-time': 'minutes',
|
|
10
|
+
'functional-unit': 'users',
|
|
11
|
+
'functional-unit-duration': 1,
|
|
12
|
+
});
|
|
13
|
+
(0, globals_1.expect)(model).toBeInstanceOf(index_1.SciModel);
|
|
14
|
+
await (0, globals_1.expect)(model.execute([
|
|
15
|
+
{
|
|
16
|
+
'operational-carbon': 0.02,
|
|
17
|
+
'embodied-carbon': 5,
|
|
18
|
+
users: 100,
|
|
19
|
+
duration: 1,
|
|
20
|
+
},
|
|
21
|
+
])).resolves.toStrictEqual([
|
|
22
|
+
{
|
|
23
|
+
'operational-carbon': 0.02,
|
|
24
|
+
'embodied-carbon': 5,
|
|
25
|
+
users: 100,
|
|
26
|
+
duration: 1,
|
|
27
|
+
sci: 3.012,
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
|
+
await (0, globals_1.expect)(model.execute([
|
|
31
|
+
{
|
|
32
|
+
'operational-carbon': 20,
|
|
33
|
+
'embodied-carbon': 0.005,
|
|
34
|
+
users: 1000,
|
|
35
|
+
duration: 1,
|
|
36
|
+
},
|
|
37
|
+
])).resolves.toStrictEqual([
|
|
38
|
+
{
|
|
39
|
+
'operational-carbon': 20,
|
|
40
|
+
'embodied-carbon': 0.005,
|
|
41
|
+
users: 1000,
|
|
42
|
+
duration: 1,
|
|
43
|
+
sci: 1.2003,
|
|
44
|
+
},
|
|
45
|
+
]);
|
|
46
|
+
});
|
|
47
|
+
(0, globals_1.test)('initialize and test: vary input duration ', async () => {
|
|
48
|
+
const model = await new index_1.SciModel().configure('name', {
|
|
49
|
+
'functional-unit-time': 'days',
|
|
50
|
+
'functional-unit': '',
|
|
51
|
+
'functional-unit-duration': 1,
|
|
52
|
+
});
|
|
53
|
+
(0, globals_1.expect)(model).toBeInstanceOf(index_1.SciModel);
|
|
54
|
+
await (0, globals_1.expect)(model.execute([
|
|
55
|
+
{
|
|
56
|
+
'operational-carbon': 0.2,
|
|
57
|
+
'embodied-carbon': 0.05,
|
|
58
|
+
duration: 100,
|
|
59
|
+
},
|
|
60
|
+
])).resolves.toStrictEqual([
|
|
61
|
+
{
|
|
62
|
+
'operational-carbon': 0.2,
|
|
63
|
+
'embodied-carbon': 0.05,
|
|
64
|
+
duration: 100,
|
|
65
|
+
sci: 216,
|
|
66
|
+
},
|
|
67
|
+
]);
|
|
68
|
+
await (0, globals_1.expect)(model.execute([
|
|
69
|
+
{
|
|
70
|
+
'operational-carbon': 0.002,
|
|
71
|
+
'embodied-carbon': 0.0005,
|
|
72
|
+
duration: 2,
|
|
73
|
+
},
|
|
74
|
+
])).resolves.toStrictEqual([
|
|
75
|
+
{
|
|
76
|
+
'operational-carbon': 0.002,
|
|
77
|
+
'embodied-carbon': 0.0005,
|
|
78
|
+
duration: 2,
|
|
79
|
+
sci: 108,
|
|
80
|
+
},
|
|
81
|
+
]);
|
|
82
|
+
});
|
|
83
|
+
(0, globals_1.test)('initialize and test: vary functional-unit-duration', async () => {
|
|
84
|
+
const model = await new index_1.SciModel().configure('name', {
|
|
85
|
+
'functional-unit-time': 'days',
|
|
86
|
+
'functional-unit': '',
|
|
87
|
+
'functional-unit-duration': 2,
|
|
88
|
+
});
|
|
89
|
+
(0, globals_1.expect)(model).toBeInstanceOf(index_1.SciModel);
|
|
90
|
+
await (0, globals_1.expect)(model.execute([
|
|
91
|
+
{
|
|
92
|
+
'operational-carbon': 0.002,
|
|
93
|
+
'embodied-carbon': 0.0005,
|
|
94
|
+
duration: 1,
|
|
95
|
+
},
|
|
96
|
+
])).resolves.toStrictEqual([
|
|
97
|
+
{
|
|
98
|
+
'operational-carbon': 0.002,
|
|
99
|
+
'embodied-carbon': 0.0005,
|
|
100
|
+
duration: 1,
|
|
101
|
+
sci: 432,
|
|
102
|
+
},
|
|
103
|
+
]);
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvc2NpL2luZGV4LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwyQ0FBMkQ7QUFDM0QscURBQW1EO0FBQ25ELGNBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7QUFFdkIsSUFBQSxrQkFBUSxFQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRTtJQUNsQyxJQUFBLGNBQUksRUFBQyxxQkFBcUIsRUFBRSxLQUFLLElBQUksRUFBRTtRQUNyQyxNQUFNLEtBQUssR0FBRyxNQUFNLElBQUksZ0JBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUU7WUFDbkQsc0JBQXNCLEVBQUUsU0FBUztZQUNqQyxpQkFBaUIsRUFBRSxPQUFPO1lBQzFCLDBCQUEwQixFQUFFLENBQUM7U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsSUFBQSxnQkFBTSxFQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyxnQkFBUSxDQUFDLENBQUM7UUFDdkMsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNaO2dCQUNFLG9CQUFvQixFQUFFLElBQUk7Z0JBQzFCLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3BCLEtBQUssRUFBRSxHQUFHO2dCQUNWLFFBQVEsRUFBRSxDQUFDO2FBQ1o7U0FDRixDQUFDLENBQ0gsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQ3ZCO2dCQUNFLG9CQUFvQixFQUFFLElBQUk7Z0JBQzFCLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3BCLEtBQUssRUFBRSxHQUFHO2dCQUNWLFFBQVEsRUFBRSxDQUFDO2dCQUNYLEdBQUcsRUFBRSxLQUFLO2FBQ1g7U0FDRixDQUFDLENBQUM7UUFDSCxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0Usb0JBQW9CLEVBQUUsRUFBRTtnQkFDeEIsaUJBQWlCLEVBQUUsS0FBSztnQkFDeEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsUUFBUSxFQUFFLENBQUM7YUFDWjtTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0Usb0JBQW9CLEVBQUUsRUFBRTtnQkFDeEIsaUJBQWlCLEVBQUUsS0FBSztnQkFDeEIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsUUFBUSxFQUFFLENBQUM7Z0JBQ1gsR0FBRyxFQUFFLE1BQU07YUFDWjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0gsSUFBQSxjQUFJLEVBQUMsMkNBQTJDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDM0QsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLGdCQUFRLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFO1lBQ25ELHNCQUFzQixFQUFFLE1BQU07WUFDOUIsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQiwwQkFBMEIsRUFBRSxDQUFDO1NBQzlCLENBQUMsQ0FBQztRQUNILElBQUEsZ0JBQU0sRUFBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsZ0JBQVEsQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sSUFBQSxnQkFBTSxFQUNWLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDWjtnQkFDRSxvQkFBb0IsRUFBRSxHQUFHO2dCQUN6QixpQkFBaUIsRUFBRSxJQUFJO2dCQUN2QixRQUFRLEVBQUUsR0FBRzthQUNkO1NBQ0YsQ0FBQyxDQUNILENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUN2QjtnQkFDRSxvQkFBb0IsRUFBRSxHQUFHO2dCQUN6QixpQkFBaUIsRUFBRSxJQUFJO2dCQUN2QixRQUFRLEVBQUUsR0FBRztnQkFDYixHQUFHLEVBQUUsR0FBRzthQUNUO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNaO2dCQUNFLG9CQUFvQixFQUFFLEtBQUs7Z0JBQzNCLGlCQUFpQixFQUFFLE1BQU07Z0JBQ3pCLFFBQVEsRUFBRSxDQUFDO2FBQ1o7U0FDRixDQUFDLENBQ0gsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQ3ZCO2dCQUNFLG9CQUFvQixFQUFFLEtBQUs7Z0JBQzNCLGlCQUFpQixFQUFFLE1BQU07Z0JBQ3pCLFFBQVEsRUFBRSxDQUFDO2dCQUNYLEdBQUcsRUFBRSxHQUFHO2FBQ1Q7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILElBQUEsY0FBSSxFQUFDLG9EQUFvRCxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3BFLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxnQkFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTtZQUNuRCxzQkFBc0IsRUFBRSxNQUFNO1lBQzlCLGlCQUFpQixFQUFFLEVBQUU7WUFDckIsMEJBQTBCLEVBQUUsQ0FBQztTQUM5QixDQUFDLENBQUM7UUFDSCxJQUFBLGdCQUFNLEVBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLGdCQUFRLENBQUMsQ0FBQztRQUN2QyxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0Usb0JBQW9CLEVBQUUsS0FBSztnQkFDM0IsaUJBQWlCLEVBQUUsTUFBTTtnQkFDekIsUUFBUSxFQUFFLENBQUM7YUFDWjtTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0Usb0JBQW9CLEVBQUUsS0FBSztnQkFDM0IsaUJBQWlCLEVBQUUsTUFBTTtnQkFDekIsUUFBUSxFQUFFLENBQUM7Z0JBQ1gsR0FBRyxFQUFFLEdBQUc7YUFDVDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2Rlc2NyaWJlLCBleHBlY3QsIGplc3QsIHRlc3R9IGZyb20gJ0BqZXN0L2dsb2JhbHMnO1xuaW1wb3J0IHtTY2lNb2RlbH0gZnJvbSAnLi4vLi4vLi4vLi4vbGliL3NjaS9pbmRleCc7XG5qZXN0LnNldFRpbWVvdXQoMzAwMDApO1xuXG5kZXNjcmliZSgnc2NpOmNvbmZpZ3VyZSB0ZXN0JywgKCkgPT4ge1xuICB0ZXN0KCdpbml0aWFsaXplIGFuZCB0ZXN0JywgYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IG1vZGVsID0gYXdhaXQgbmV3IFNjaU1vZGVsKCkuY29uZmlndXJlKCduYW1lJywge1xuICAgICAgJ2Z1bmN0aW9uYWwtdW5pdC10aW1lJzogJ21pbnV0ZXMnLFxuICAgICAgJ2Z1bmN0aW9uYWwtdW5pdCc6ICd1c2VycycsXG4gICAgICAnZnVuY3Rpb25hbC11bml0LWR1cmF0aW9uJzogMSxcbiAgICB9KTtcbiAgICBleHBlY3QobW9kZWwpLnRvQmVJbnN0YW5jZU9mKFNjaU1vZGVsKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdvcGVyYXRpb25hbC1jYXJib24nOiAwLjAyLFxuICAgICAgICAgICdlbWJvZGllZC1jYXJib24nOiA1LFxuICAgICAgICAgIHVzZXJzOiAxMDAsXG4gICAgICAgICAgZHVyYXRpb246IDEsXG4gICAgICAgIH0sXG4gICAgICBdKVxuICAgICkucmVzb2x2ZXMudG9TdHJpY3RFcXVhbChbXG4gICAgICB7XG4gICAgICAgICdvcGVyYXRpb25hbC1jYXJib24nOiAwLjAyLFxuICAgICAgICAnZW1ib2RpZWQtY2FyYm9uJzogNSxcbiAgICAgICAgdXNlcnM6IDEwMCxcbiAgICAgICAgZHVyYXRpb246IDEsXG4gICAgICAgIHNjaTogMy4wMTIsXG4gICAgICB9LFxuICAgIF0pO1xuICAgIGF3YWl0IGV4cGVjdChcbiAgICAgIG1vZGVsLmV4ZWN1dGUoW1xuICAgICAgICB7XG4gICAgICAgICAgJ29wZXJhdGlvbmFsLWNhcmJvbic6IDIwLFxuICAgICAgICAgICdlbWJvZGllZC1jYXJib24nOiAwLjAwNSxcbiAgICAgICAgICB1c2VyczogMTAwMCxcbiAgICAgICAgICBkdXJhdGlvbjogMSxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgJ29wZXJhdGlvbmFsLWNhcmJvbic6IDIwLFxuICAgICAgICAnZW1ib2RpZWQtY2FyYm9uJzogMC4wMDUsXG4gICAgICAgIHVzZXJzOiAxMDAwLFxuICAgICAgICBkdXJhdGlvbjogMSxcbiAgICAgICAgc2NpOiAxLjIwMDMsXG4gICAgICB9LFxuICAgIF0pO1xuICB9KTtcbiAgdGVzdCgnaW5pdGlhbGl6ZSBhbmQgdGVzdDogdmFyeSBpbnB1dCBkdXJhdGlvbiAnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgbW9kZWwgPSBhd2FpdCBuZXcgU2NpTW9kZWwoKS5jb25maWd1cmUoJ25hbWUnLCB7XG4gICAgICAnZnVuY3Rpb25hbC11bml0LXRpbWUnOiAnZGF5cycsXG4gICAgICAnZnVuY3Rpb25hbC11bml0JzogJycsXG4gICAgICAnZnVuY3Rpb25hbC11bml0LWR1cmF0aW9uJzogMSxcbiAgICB9KTtcbiAgICBleHBlY3QobW9kZWwpLnRvQmVJbnN0YW5jZU9mKFNjaU1vZGVsKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdvcGVyYXRpb25hbC1jYXJib24nOiAwLjIsXG4gICAgICAgICAgJ2VtYm9kaWVkLWNhcmJvbic6IDAuMDUsXG4gICAgICAgICAgZHVyYXRpb246IDEwMCxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgJ29wZXJhdGlvbmFsLWNhcmJvbic6IDAuMixcbiAgICAgICAgJ2VtYm9kaWVkLWNhcmJvbic6IDAuMDUsXG4gICAgICAgIGR1cmF0aW9uOiAxMDAsXG4gICAgICAgIHNjaTogMjE2LFxuICAgICAgfSxcbiAgICBdKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdvcGVyYXRpb25hbC1jYXJib24nOiAwLjAwMixcbiAgICAgICAgICAnZW1ib2RpZWQtY2FyYm9uJzogMC4wMDA1LFxuICAgICAgICAgIGR1cmF0aW9uOiAyLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAge1xuICAgICAgICAnb3BlcmF0aW9uYWwtY2FyYm9uJzogMC4wMDIsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiAwLjAwMDUsXG4gICAgICAgIGR1cmF0aW9uOiAyLFxuICAgICAgICBzY2k6IDEwOCxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xuICB0ZXN0KCdpbml0aWFsaXplIGFuZCB0ZXN0OiB2YXJ5IGZ1bmN0aW9uYWwtdW5pdC1kdXJhdGlvbicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBtb2RlbCA9IGF3YWl0IG5ldyBTY2lNb2RlbCgpLmNvbmZpZ3VyZSgnbmFtZScsIHtcbiAgICAgICdmdW5jdGlvbmFsLXVuaXQtdGltZSc6ICdkYXlzJyxcbiAgICAgICdmdW5jdGlvbmFsLXVuaXQnOiAnJyxcbiAgICAgICdmdW5jdGlvbmFsLXVuaXQtZHVyYXRpb24nOiAyLFxuICAgIH0pO1xuICAgIGV4cGVjdChtb2RlbCkudG9CZUluc3RhbmNlT2YoU2NpTW9kZWwpO1xuICAgIGF3YWl0IGV4cGVjdChcbiAgICAgIG1vZGVsLmV4ZWN1dGUoW1xuICAgICAgICB7XG4gICAgICAgICAgJ29wZXJhdGlvbmFsLWNhcmJvbic6IDAuMDAyLFxuICAgICAgICAgICdlbWJvZGllZC1jYXJib24nOiAwLjAwMDUsXG4gICAgICAgICAgZHVyYXRpb246IDEsXG4gICAgICAgIH0sXG4gICAgICBdKVxuICAgICkucmVzb2x2ZXMudG9TdHJpY3RFcXVhbChbXG4gICAgICB7XG4gICAgICAgICdvcGVyYXRpb25hbC1jYXJib24nOiAwLjAwMixcbiAgICAgICAgJ2VtYm9kaWVkLWNhcmJvbic6IDAuMDAwNSxcbiAgICAgICAgZHVyYXRpb246IDEsXG4gICAgICAgIHNjaTogNDMyLFxuICAgICAgfSxcbiAgICBdKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const index_1 = require("../../../../lib/sci-e/index");
|
|
5
|
+
globals_1.jest.setTimeout(30000);
|
|
6
|
+
(0, globals_1.describe)('sci-e:configure test', () => {
|
|
7
|
+
(0, globals_1.test)('initialize with params', async () => {
|
|
8
|
+
const outputModel = new index_1.SciEModel();
|
|
9
|
+
await outputModel.configure('test', {});
|
|
10
|
+
await (0, globals_1.expect)(outputModel.execute([
|
|
11
|
+
{
|
|
12
|
+
duration: 3600,
|
|
13
|
+
'energy-cpu': 1,
|
|
14
|
+
'energy-network': 1,
|
|
15
|
+
'energy-memory': 1,
|
|
16
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
17
|
+
},
|
|
18
|
+
])).resolves.toStrictEqual([
|
|
19
|
+
{
|
|
20
|
+
duration: 3600,
|
|
21
|
+
'energy-cpu': 1,
|
|
22
|
+
'energy-network': 1,
|
|
23
|
+
'energy-memory': 1,
|
|
24
|
+
energy: 3,
|
|
25
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
26
|
+
},
|
|
27
|
+
]);
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvc2NpLWUvaW5kZXgudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDJDQUEyRDtBQUMzRCx1REFBc0Q7QUFFdEQsY0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUV2QixJQUFBLGtCQUFRLEVBQUMsc0JBQXNCLEVBQUUsR0FBRyxFQUFFO0lBQ3BDLElBQUEsY0FBSSxFQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3hDLE1BQU0sV0FBVyxHQUFHLElBQUksaUJBQVMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEMsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUNsQjtnQkFDRSxRQUFRLEVBQUUsSUFBSTtnQkFDZCxZQUFZLEVBQUUsQ0FBQztnQkFDZixnQkFBZ0IsRUFBRSxDQUFDO2dCQUNuQixlQUFlLEVBQUUsQ0FBQztnQkFDbEIsU0FBUyxFQUFFLHNCQUFzQjthQUNsQztTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0UsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsWUFBWSxFQUFFLENBQUM7Z0JBQ2YsZ0JBQWdCLEVBQUUsQ0FBQztnQkFDbkIsZUFBZSxFQUFFLENBQUM7Z0JBQ2xCLE1BQU0sRUFBRSxDQUFDO2dCQUNULFNBQVMsRUFBRSxzQkFBc0I7YUFDbEM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtkZXNjcmliZSwgZXhwZWN0LCBqZXN0LCB0ZXN0fSBmcm9tICdAamVzdC9nbG9iYWxzJztcbmltcG9ydCB7U2NpRU1vZGVsfSBmcm9tICcuLi8uLi8uLi8uLi9saWIvc2NpLWUvaW5kZXgnO1xuXG5qZXN0LnNldFRpbWVvdXQoMzAwMDApO1xuXG5kZXNjcmliZSgnc2NpLWU6Y29uZmlndXJlIHRlc3QnLCAoKSA9PiB7XG4gIHRlc3QoJ2luaXRpYWxpemUgd2l0aCBwYXJhbXMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3V0cHV0TW9kZWwgPSBuZXcgU2NpRU1vZGVsKCk7XG4gICAgYXdhaXQgb3V0cHV0TW9kZWwuY29uZmlndXJlKCd0ZXN0Jywge30pO1xuICAgIGF3YWl0IGV4cGVjdChcbiAgICAgIG91dHB1dE1vZGVsLmV4ZWN1dGUoW1xuICAgICAgICB7XG4gICAgICAgICAgZHVyYXRpb246IDM2MDAsXG4gICAgICAgICAgJ2VuZXJneS1jcHUnOiAxLFxuICAgICAgICAgICdlbmVyZ3ktbmV0d29yayc6IDEsXG4gICAgICAgICAgJ2VuZXJneS1tZW1vcnknOiAxLFxuICAgICAgICAgIHRpbWVzdGFtcDogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJyxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgZHVyYXRpb246IDM2MDAsXG4gICAgICAgICdlbmVyZ3ktY3B1JzogMSxcbiAgICAgICAgJ2VuZXJneS1uZXR3b3JrJzogMSxcbiAgICAgICAgJ2VuZXJneS1tZW1vcnknOiAxLFxuICAgICAgICBlbmVyZ3k6IDMsXG4gICAgICAgIHRpbWVzdGFtcDogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJyxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const index_1 = require("../../../../lib/sci-m/index");
|
|
5
|
+
globals_1.jest.setTimeout(30000);
|
|
6
|
+
(0, globals_1.describe)('sci-o:configure test', () => {
|
|
7
|
+
(0, globals_1.test)('initialize and test', async () => {
|
|
8
|
+
const model = await new index_1.SciMModel().configure('sci-o', {});
|
|
9
|
+
(0, globals_1.expect)(model).toBeInstanceOf(index_1.SciMModel);
|
|
10
|
+
await (0, globals_1.expect)(model.execute([
|
|
11
|
+
{
|
|
12
|
+
'total-embodied-emissions': 200,
|
|
13
|
+
'time-reserved': 60 * 60 * 24 * 30,
|
|
14
|
+
'expected-lifespan': 60 * 60 * 24 * 365 * 4,
|
|
15
|
+
'resources-reserved': 1,
|
|
16
|
+
'total-resources': 1,
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
'total-embodied-emissions': 200,
|
|
20
|
+
duration: 60 * 60 * 24 * 30 * 2,
|
|
21
|
+
'time-reserved': 'duration',
|
|
22
|
+
'expected-lifespan': 60 * 60 * 24 * 365 * 4,
|
|
23
|
+
'resources-reserved': 1,
|
|
24
|
+
'total-resources': 1,
|
|
25
|
+
},
|
|
26
|
+
])).resolves.toStrictEqual([
|
|
27
|
+
{
|
|
28
|
+
'total-embodied-emissions': 200,
|
|
29
|
+
'time-reserved': 60 * 60 * 24 * 30,
|
|
30
|
+
'expected-lifespan': 60 * 60 * 24 * 365 * 4,
|
|
31
|
+
'resources-reserved': 1,
|
|
32
|
+
'total-resources': 1,
|
|
33
|
+
'embodied-carbon': 4.10958904109589,
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
'total-embodied-emissions': 200,
|
|
37
|
+
duration: 60 * 60 * 24 * 30 * 2,
|
|
38
|
+
'time-reserved': 'duration',
|
|
39
|
+
'expected-lifespan': 60 * 60 * 24 * 365 * 4,
|
|
40
|
+
'resources-reserved': 1,
|
|
41
|
+
'total-resources': 1,
|
|
42
|
+
'embodied-carbon': 4.10958904109589 * 2,
|
|
43
|
+
},
|
|
44
|
+
]);
|
|
45
|
+
await (0, globals_1.expect)(model.execute([
|
|
46
|
+
{
|
|
47
|
+
tee: 200,
|
|
48
|
+
duration: 60 * 60 * 24 * 30 * 2,
|
|
49
|
+
'time-reserved': 'duration',
|
|
50
|
+
'expected-lifespan': 60 * 60 * 24 * 365 * 4,
|
|
51
|
+
'resources-reserved': 1,
|
|
52
|
+
'total-resources': 1,
|
|
53
|
+
'embodied-carbon': 4.10958904109589 * 2,
|
|
54
|
+
},
|
|
55
|
+
])).rejects.toThrowError();
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvc2NpLW0vaW5kZXgudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDJDQUEyRDtBQUMzRCx1REFBc0Q7QUFDdEQsY0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUV2QixJQUFBLGtCQUFRLEVBQUMsc0JBQXNCLEVBQUUsR0FBRyxFQUFFO0lBQ3BDLElBQUEsY0FBSSxFQUFDLHFCQUFxQixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxpQkFBUyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUMzRCxJQUFBLGdCQUFNLEVBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLGlCQUFTLENBQUMsQ0FBQztRQUN4QyxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0UsMEJBQTBCLEVBQUUsR0FBRztnQkFDL0IsZUFBZSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUU7Z0JBQ2xDLG1CQUFtQixFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDO2dCQUMzQyxvQkFBb0IsRUFBRSxDQUFDO2dCQUN2QixpQkFBaUIsRUFBRSxDQUFDO2FBQ3JCO1lBQ0Q7Z0JBQ0UsMEJBQTBCLEVBQUUsR0FBRztnQkFDL0IsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO2dCQUMvQixlQUFlLEVBQUUsVUFBVTtnQkFDM0IsbUJBQW1CLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUM7Z0JBQzNDLG9CQUFvQixFQUFFLENBQUM7Z0JBQ3ZCLGlCQUFpQixFQUFFLENBQUM7YUFDckI7U0FDRixDQUFDLENBQ0gsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQ3ZCO2dCQUNFLDBCQUEwQixFQUFFLEdBQUc7Z0JBQy9CLGVBQWUsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUNsQyxtQkFBbUIsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQztnQkFDM0Msb0JBQW9CLEVBQUUsQ0FBQztnQkFDdkIsaUJBQWlCLEVBQUUsQ0FBQztnQkFDcEIsaUJBQWlCLEVBQUUsZ0JBQWdCO2FBQ3BDO1lBQ0Q7Z0JBQ0UsMEJBQTBCLEVBQUUsR0FBRztnQkFDL0IsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO2dCQUMvQixlQUFlLEVBQUUsVUFBVTtnQkFDM0IsbUJBQW1CLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUM7Z0JBQzNDLG9CQUFvQixFQUFFLENBQUM7Z0JBQ3ZCLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3BCLGlCQUFpQixFQUFFLGdCQUFnQixHQUFHLENBQUM7YUFDeEM7U0FDRixDQUFDLENBQUM7UUFDSCxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0UsR0FBRyxFQUFFLEdBQUc7Z0JBQ1IsUUFBUSxFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO2dCQUMvQixlQUFlLEVBQUUsVUFBVTtnQkFDM0IsbUJBQW1CLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUM7Z0JBQzNDLG9CQUFvQixFQUFFLENBQUM7Z0JBQ3ZCLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3BCLGlCQUFpQixFQUFFLGdCQUFnQixHQUFHLENBQUM7YUFDeEM7U0FDRixDQUFDLENBQ0gsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0IsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZGVzY3JpYmUsIGV4cGVjdCwgamVzdCwgdGVzdH0gZnJvbSAnQGplc3QvZ2xvYmFscyc7XG5pbXBvcnQge1NjaU1Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vLi4vbGliL3NjaS1tL2luZGV4Jztcbmplc3Quc2V0VGltZW91dCgzMDAwMCk7XG5cbmRlc2NyaWJlKCdzY2ktbzpjb25maWd1cmUgdGVzdCcsICgpID0+IHtcbiAgdGVzdCgnaW5pdGlhbGl6ZSBhbmQgdGVzdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBtb2RlbCA9IGF3YWl0IG5ldyBTY2lNTW9kZWwoKS5jb25maWd1cmUoJ3NjaS1vJywge30pO1xuICAgIGV4cGVjdChtb2RlbCkudG9CZUluc3RhbmNlT2YoU2NpTU1vZGVsKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICd0b3RhbC1lbWJvZGllZC1lbWlzc2lvbnMnOiAyMDAsXG4gICAgICAgICAgJ3RpbWUtcmVzZXJ2ZWQnOiA2MCAqIDYwICogMjQgKiAzMCxcbiAgICAgICAgICAnZXhwZWN0ZWQtbGlmZXNwYW4nOiA2MCAqIDYwICogMjQgKiAzNjUgKiA0LFxuICAgICAgICAgICdyZXNvdXJjZXMtcmVzZXJ2ZWQnOiAxLFxuICAgICAgICAgICd0b3RhbC1yZXNvdXJjZXMnOiAxLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgJ3RvdGFsLWVtYm9kaWVkLWVtaXNzaW9ucyc6IDIwMCxcbiAgICAgICAgICBkdXJhdGlvbjogNjAgKiA2MCAqIDI0ICogMzAgKiAyLFxuICAgICAgICAgICd0aW1lLXJlc2VydmVkJzogJ2R1cmF0aW9uJyxcbiAgICAgICAgICAnZXhwZWN0ZWQtbGlmZXNwYW4nOiA2MCAqIDYwICogMjQgKiAzNjUgKiA0LFxuICAgICAgICAgICdyZXNvdXJjZXMtcmVzZXJ2ZWQnOiAxLFxuICAgICAgICAgICd0b3RhbC1yZXNvdXJjZXMnOiAxLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAge1xuICAgICAgICAndG90YWwtZW1ib2RpZWQtZW1pc3Npb25zJzogMjAwLFxuICAgICAgICAndGltZS1yZXNlcnZlZCc6IDYwICogNjAgKiAyNCAqIDMwLFxuICAgICAgICAnZXhwZWN0ZWQtbGlmZXNwYW4nOiA2MCAqIDYwICogMjQgKiAzNjUgKiA0LFxuICAgICAgICAncmVzb3VyY2VzLXJlc2VydmVkJzogMSxcbiAgICAgICAgJ3RvdGFsLXJlc291cmNlcyc6IDEsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA0LjEwOTU4OTA0MTA5NTg5LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgJ3RvdGFsLWVtYm9kaWVkLWVtaXNzaW9ucyc6IDIwMCxcbiAgICAgICAgZHVyYXRpb246IDYwICogNjAgKiAyNCAqIDMwICogMixcbiAgICAgICAgJ3RpbWUtcmVzZXJ2ZWQnOiAnZHVyYXRpb24nLFxuICAgICAgICAnZXhwZWN0ZWQtbGlmZXNwYW4nOiA2MCAqIDYwICogMjQgKiAzNjUgKiA0LFxuICAgICAgICAncmVzb3VyY2VzLXJlc2VydmVkJzogMSxcbiAgICAgICAgJ3RvdGFsLXJlc291cmNlcyc6IDEsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA0LjEwOTU4OTA0MTA5NTg5ICogMixcbiAgICAgIH0sXG4gICAgXSk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgbW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICB0ZWU6IDIwMCxcbiAgICAgICAgICBkdXJhdGlvbjogNjAgKiA2MCAqIDI0ICogMzAgKiAyLFxuICAgICAgICAgICd0aW1lLXJlc2VydmVkJzogJ2R1cmF0aW9uJyxcbiAgICAgICAgICAnZXhwZWN0ZWQtbGlmZXNwYW4nOiA2MCAqIDYwICogMjQgKiAzNjUgKiA0LFxuICAgICAgICAgICdyZXNvdXJjZXMtcmVzZXJ2ZWQnOiAxLFxuICAgICAgICAgICd0b3RhbC1yZXNvdXJjZXMnOiAxLFxuICAgICAgICAgICdlbWJvZGllZC1jYXJib24nOiA0LjEwOTU4OTA0MTA5NTg5ICogMixcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZWplY3RzLnRvVGhyb3dFcnJvcigpO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const index_1 = require("../../../../lib/sci-o/index");
|
|
5
|
+
globals_1.jest.setTimeout(30000);
|
|
6
|
+
(0, globals_1.describe)('ccf:configure test', () => {
|
|
7
|
+
(0, globals_1.test)('initialize and test', async () => {
|
|
8
|
+
const model = await new index_1.SciOModel().configure('ccf', {});
|
|
9
|
+
(0, globals_1.expect)(model).toBeInstanceOf(index_1.SciOModel);
|
|
10
|
+
await (0, globals_1.expect)(model.execute([
|
|
11
|
+
{
|
|
12
|
+
'grid-carbon-intensity': 200.0,
|
|
13
|
+
energy: 100.0,
|
|
14
|
+
},
|
|
15
|
+
])).resolves.toStrictEqual([
|
|
16
|
+
{
|
|
17
|
+
'grid-carbon-intensity': 200.0,
|
|
18
|
+
energy: 100.0,
|
|
19
|
+
'operational-carbon': 100.0 * 200.0,
|
|
20
|
+
},
|
|
21
|
+
]);
|
|
22
|
+
await (0, globals_1.expect)(model.execute([
|
|
23
|
+
{
|
|
24
|
+
'grid-carbon-intensity': 212.1,
|
|
25
|
+
energy: 100.0,
|
|
26
|
+
},
|
|
27
|
+
])).resolves.toStrictEqual([
|
|
28
|
+
{
|
|
29
|
+
'grid-carbon-intensity': 212.1,
|
|
30
|
+
energy: 100.0,
|
|
31
|
+
'operational-carbon': 100.0 * 212.1,
|
|
32
|
+
},
|
|
33
|
+
]);
|
|
34
|
+
await (0, globals_1.expect)(model.execute([
|
|
35
|
+
{
|
|
36
|
+
'grid-carbon-intensityd': 212.1,
|
|
37
|
+
energy: 100.0,
|
|
38
|
+
},
|
|
39
|
+
])).rejects.toThrowError();
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvc2NpLW8vaW5kZXgudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDJDQUEyRDtBQUMzRCx1REFBc0Q7QUFDdEQsY0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUV2QixJQUFBLGtCQUFRLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO0lBQ2xDLElBQUEsY0FBSSxFQUFDLHFCQUFxQixFQUFFLEtBQUssSUFBSSxFQUFFO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxpQkFBUyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN6RCxJQUFBLGdCQUFNLEVBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLGlCQUFTLENBQUMsQ0FBQztRQUN4QyxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0UsdUJBQXVCLEVBQUUsS0FBSztnQkFDOUIsTUFBTSxFQUFFLEtBQUs7YUFDZDtTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0UsdUJBQXVCLEVBQUUsS0FBSztnQkFDOUIsTUFBTSxFQUFFLEtBQUs7Z0JBQ2Isb0JBQW9CLEVBQUUsS0FBSyxHQUFHLEtBQUs7YUFDcEM7U0FDRixDQUFDLENBQUM7UUFDSCxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0UsdUJBQXVCLEVBQUUsS0FBSztnQkFDOUIsTUFBTSxFQUFFLEtBQUs7YUFDZDtTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0UsdUJBQXVCLEVBQUUsS0FBSztnQkFDOUIsTUFBTSxFQUFFLEtBQUs7Z0JBQ2Isb0JBQW9CLEVBQUUsS0FBSyxHQUFHLEtBQUs7YUFDcEM7U0FDRixDQUFDLENBQUM7UUFDSCxNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0Usd0JBQXdCLEVBQUUsS0FBSztnQkFDL0IsTUFBTSxFQUFFLEtBQUs7YUFDZDtTQUNGLENBQUMsQ0FDSCxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtkZXNjcmliZSwgZXhwZWN0LCBqZXN0LCB0ZXN0fSBmcm9tICdAamVzdC9nbG9iYWxzJztcbmltcG9ydCB7U2NpT01vZGVsfSBmcm9tICcuLi8uLi8uLi8uLi9saWIvc2NpLW8vaW5kZXgnO1xuamVzdC5zZXRUaW1lb3V0KDMwMDAwKTtcblxuZGVzY3JpYmUoJ2NjZjpjb25maWd1cmUgdGVzdCcsICgpID0+IHtcbiAgdGVzdCgnaW5pdGlhbGl6ZSBhbmQgdGVzdCcsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBtb2RlbCA9IGF3YWl0IG5ldyBTY2lPTW9kZWwoKS5jb25maWd1cmUoJ2NjZicsIHt9KTtcbiAgICBleHBlY3QobW9kZWwpLnRvQmVJbnN0YW5jZU9mKFNjaU9Nb2RlbCk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgbW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICAnZ3JpZC1jYXJib24taW50ZW5zaXR5JzogMjAwLjAsXG4gICAgICAgICAgZW5lcmd5OiAxMDAuMCxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgJ2dyaWQtY2FyYm9uLWludGVuc2l0eSc6IDIwMC4wLFxuICAgICAgICBlbmVyZ3k6IDEwMC4wLFxuICAgICAgICAnb3BlcmF0aW9uYWwtY2FyYm9uJzogMTAwLjAgKiAyMDAuMCxcbiAgICAgIH0sXG4gICAgXSk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgbW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICAnZ3JpZC1jYXJib24taW50ZW5zaXR5JzogMjEyLjEsXG4gICAgICAgICAgZW5lcmd5OiAxMDAuMCxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgJ2dyaWQtY2FyYm9uLWludGVuc2l0eSc6IDIxMi4xLFxuICAgICAgICBlbmVyZ3k6IDEwMC4wLFxuICAgICAgICAnb3BlcmF0aW9uYWwtY2FyYm9uJzogMTAwLjAgKiAyMTIuMSxcbiAgICAgIH0sXG4gICAgXSk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgbW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICAnZ3JpZC1jYXJib24taW50ZW5zaXR5ZCc6IDIxMi4xLFxuICAgICAgICAgIGVuZXJneTogMTAwLjAsXG4gICAgICAgIH0sXG4gICAgICBdKVxuICAgICkucmVqZWN0cy50b1Rocm93RXJyb3IoKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const index_1 = require("../../../../lib/shell-imp/index");
|
|
5
|
+
globals_1.jest.setTimeout(30000);
|
|
6
|
+
(0, globals_1.describe)('lib/shell-imp: ', () => {
|
|
7
|
+
(0, globals_1.describe)('shell:configure', () => {
|
|
8
|
+
(0, globals_1.test)('initialize with params', async () => {
|
|
9
|
+
const outputModel = new index_1.ShellModel();
|
|
10
|
+
await outputModel.configure('test', {
|
|
11
|
+
executable: '/usr/local/bin/sampler',
|
|
12
|
+
});
|
|
13
|
+
await (0, globals_1.expect)(outputModel.execute([
|
|
14
|
+
{ duration: 3600, cpu: 0.5, datetime: '2021-01-01T00:00:00Z' },
|
|
15
|
+
])).resolves.toStrictEqual([
|
|
16
|
+
{ duration: 3600, cpu: 0.5, datetime: '2021-01-01T00:00:00Z', energy: 1 },
|
|
17
|
+
]);
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvc2hlbGwtaW1wL2luZGV4LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwyQ0FBMkQ7QUFDM0QsMkRBQTJEO0FBRTNELGNBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7QUFFdkIsSUFBQSxrQkFBUSxFQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRTtJQUMvQixJQUFBLGtCQUFRLEVBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO1FBQy9CLElBQUEsY0FBSSxFQUFDLHdCQUF3QixFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3hDLE1BQU0sV0FBVyxHQUFHLElBQUksa0JBQVUsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2xDLFVBQVUsRUFBRSx3QkFBd0I7YUFDckMsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsV0FBVyxDQUFDLE9BQU8sQ0FBQztnQkFDbEIsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFDO2FBQzdELENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7Z0JBQ3ZCLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFDO2FBQ3hFLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZGVzY3JpYmUsIGV4cGVjdCwgamVzdCwgdGVzdH0gZnJvbSAnQGplc3QvZ2xvYmFscyc7XG5pbXBvcnQge1NoZWxsTW9kZWx9IGZyb20gJy4uLy4uLy4uLy4uL2xpYi9zaGVsbC1pbXAvaW5kZXgnO1xuXG5qZXN0LnNldFRpbWVvdXQoMzAwMDApO1xuXG5kZXNjcmliZSgnbGliL3NoZWxsLWltcDogJywgKCkgPT4ge1xuICBkZXNjcmliZSgnc2hlbGw6Y29uZmlndXJlJywgKCkgPT4ge1xuICAgIHRlc3QoJ2luaXRpYWxpemUgd2l0aCBwYXJhbXMnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBvdXRwdXRNb2RlbCA9IG5ldyBTaGVsbE1vZGVsKCk7XG4gICAgICBhd2FpdCBvdXRwdXRNb2RlbC5jb25maWd1cmUoJ3Rlc3QnLCB7XG4gICAgICAgIGV4ZWN1dGFibGU6ICcvdXNyL2xvY2FsL2Jpbi9zYW1wbGVyJyxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgZXhwZWN0KFxuICAgICAgICBvdXRwdXRNb2RlbC5leGVjdXRlKFtcbiAgICAgICAgICB7ZHVyYXRpb246IDM2MDAsIGNwdTogMC41LCBkYXRldGltZTogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJ30sXG4gICAgICAgIF0pXG4gICAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAgICB7ZHVyYXRpb246IDM2MDAsIGNwdTogMC41LCBkYXRldGltZTogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJywgZW5lcmd5OiAxfSxcbiAgICAgIF0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const lib_1 = require("../../../../lib");
|
|
5
|
+
globals_1.jest.setTimeout(30000);
|
|
6
|
+
(0, globals_1.describe)('tdp-finder:configure test', () => {
|
|
7
|
+
(0, globals_1.test)('initialize and test', async () => {
|
|
8
|
+
const model = await new lib_1.TdpFinderModel().configure('tdp', {});
|
|
9
|
+
(0, globals_1.expect)(model).toBeInstanceOf(lib_1.TdpFinderModel);
|
|
10
|
+
await (0, globals_1.expect)(model.execute([
|
|
11
|
+
{
|
|
12
|
+
'physical-processor': 'AMD 3020e',
|
|
13
|
+
},
|
|
14
|
+
])).resolves.toStrictEqual([
|
|
15
|
+
{
|
|
16
|
+
'physical-processor': 'AMD 3020e',
|
|
17
|
+
'thermal-design-power': 6.0,
|
|
18
|
+
},
|
|
19
|
+
]);
|
|
20
|
+
await (0, globals_1.expect)(model.execute([
|
|
21
|
+
{
|
|
22
|
+
'physical-processor': 'Intel Xeon E5-2676 v3',
|
|
23
|
+
},
|
|
24
|
+
])).resolves.toStrictEqual([
|
|
25
|
+
{
|
|
26
|
+
'physical-processor': 'Intel Xeon E5-2676 v3',
|
|
27
|
+
'thermal-design-power': 120.0,
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
|
+
await (0, globals_1.expect)(model.execute([
|
|
31
|
+
{
|
|
32
|
+
'physical-processor': 'Intel Xeon Platinum 8175M,AMD A8-9600',
|
|
33
|
+
},
|
|
34
|
+
])).resolves.toStrictEqual([
|
|
35
|
+
{
|
|
36
|
+
'physical-processor': 'Intel Xeon Platinum 8175M,AMD A8-9600',
|
|
37
|
+
'thermal-design-power': 240.0,
|
|
38
|
+
},
|
|
39
|
+
]);
|
|
40
|
+
await (0, globals_1.expect)(model.execute([
|
|
41
|
+
{
|
|
42
|
+
'physical-processor': 'Intel Xeon Platinum 8175M,AMD A8-9600f',
|
|
43
|
+
},
|
|
44
|
+
])).rejects.toThrowError();
|
|
45
|
+
await (0, globals_1.expect)(model.execute([
|
|
46
|
+
{
|
|
47
|
+
'physical-processor': 'AMD A8-9600',
|
|
48
|
+
},
|
|
49
|
+
])).resolves.toStrictEqual([
|
|
50
|
+
{
|
|
51
|
+
'physical-processor': 'AMD A8-9600',
|
|
52
|
+
'thermal-design-power': 65,
|
|
53
|
+
},
|
|
54
|
+
]);
|
|
55
|
+
await (0, globals_1.expect)(model.execute([
|
|
56
|
+
{
|
|
57
|
+
'physical-processor': 'AMD 3020ef',
|
|
58
|
+
},
|
|
59
|
+
])).rejects.toThrowError();
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvdGRwLWZpbmRlci9pbmRleC50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsMkNBQTJEO0FBQzNELHlDQUErQztBQUUvQyxjQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBRXZCLElBQUEsa0JBQVEsRUFBQywyQkFBMkIsRUFBRSxHQUFHLEVBQUU7SUFDekMsSUFBQSxjQUFJLEVBQUMscUJBQXFCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDckMsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLG9CQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzlELElBQUEsZ0JBQU0sRUFBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLENBQUMsb0JBQWMsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sSUFBQSxnQkFBTSxFQUNWLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDWjtnQkFDRSxvQkFBb0IsRUFBRSxXQUFXO2FBQ2xDO1NBQ0YsQ0FBQyxDQUNILENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUN2QjtnQkFDRSxvQkFBb0IsRUFBRSxXQUFXO2dCQUNqQyxzQkFBc0IsRUFBRSxHQUFHO2FBQzVCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNaO2dCQUNFLG9CQUFvQixFQUFFLHVCQUF1QjthQUM5QztTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0Usb0JBQW9CLEVBQUUsdUJBQXVCO2dCQUM3QyxzQkFBc0IsRUFBRSxLQUFLO2FBQzlCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNaO2dCQUNFLG9CQUFvQixFQUFFLHVDQUF1QzthQUM5RDtTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0Usb0JBQW9CLEVBQUUsdUNBQXVDO2dCQUM3RCxzQkFBc0IsRUFBRSxLQUFLO2FBQzlCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxJQUFBLGdCQUFNLEVBQ1YsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNaO2dCQUNFLG9CQUFvQixFQUFFLHdDQUF3QzthQUMvRDtTQUNGLENBQUMsQ0FDSCxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN6QixNQUFNLElBQUEsZ0JBQU0sRUFDVixLQUFLLENBQUMsT0FBTyxDQUFDO1lBQ1o7Z0JBQ0Usb0JBQW9CLEVBQUUsYUFBYTthQUNwQztTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0Usb0JBQW9CLEVBQUUsYUFBYTtnQkFDbkMsc0JBQXNCLEVBQUUsRUFBRTthQUMzQjtTQUNGLENBQUMsQ0FBQztRQUNILE1BQU0sSUFBQSxnQkFBTSxFQUNWLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDWjtnQkFDRSxvQkFBb0IsRUFBRSxZQUFZO2FBQ25DO1NBQ0YsQ0FBQyxDQUNILENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2Rlc2NyaWJlLCBleHBlY3QsIGplc3QsIHRlc3R9IGZyb20gJ0BqZXN0L2dsb2JhbHMnO1xuaW1wb3J0IHtUZHBGaW5kZXJNb2RlbH0gZnJvbSAnLi4vLi4vLi4vLi4vbGliJztcblxuamVzdC5zZXRUaW1lb3V0KDMwMDAwKTtcblxuZGVzY3JpYmUoJ3RkcC1maW5kZXI6Y29uZmlndXJlIHRlc3QnLCAoKSA9PiB7XG4gIHRlc3QoJ2luaXRpYWxpemUgYW5kIHRlc3QnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgbW9kZWwgPSBhd2FpdCBuZXcgVGRwRmluZGVyTW9kZWwoKS5jb25maWd1cmUoJ3RkcCcsIHt9KTtcbiAgICBleHBlY3QobW9kZWwpLnRvQmVJbnN0YW5jZU9mKFRkcEZpbmRlck1vZGVsKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdwaHlzaWNhbC1wcm9jZXNzb3InOiAnQU1EIDMwMjBlJyxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgJ3BoeXNpY2FsLXByb2Nlc3Nvcic6ICdBTUQgMzAyMGUnLFxuICAgICAgICAndGhlcm1hbC1kZXNpZ24tcG93ZXInOiA2LjAsXG4gICAgICB9LFxuICAgIF0pO1xuICAgIGF3YWl0IGV4cGVjdChcbiAgICAgIG1vZGVsLmV4ZWN1dGUoW1xuICAgICAgICB7XG4gICAgICAgICAgJ3BoeXNpY2FsLXByb2Nlc3Nvcic6ICdJbnRlbCBYZW9uIEU1LTI2NzYgdjMnLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAge1xuICAgICAgICAncGh5c2ljYWwtcHJvY2Vzc29yJzogJ0ludGVsIFhlb24gRTUtMjY3NiB2MycsXG4gICAgICAgICd0aGVybWFsLWRlc2lnbi1wb3dlcic6IDEyMC4wLFxuICAgICAgfSxcbiAgICBdKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdwaHlzaWNhbC1wcm9jZXNzb3InOiAnSW50ZWwgWGVvbiBQbGF0aW51bSA4MTc1TSxBTUQgQTgtOTYwMCcsXG4gICAgICAgIH0sXG4gICAgICBdKVxuICAgICkucmVzb2x2ZXMudG9TdHJpY3RFcXVhbChbXG4gICAgICB7XG4gICAgICAgICdwaHlzaWNhbC1wcm9jZXNzb3InOiAnSW50ZWwgWGVvbiBQbGF0aW51bSA4MTc1TSxBTUQgQTgtOTYwMCcsXG4gICAgICAgICd0aGVybWFsLWRlc2lnbi1wb3dlcic6IDI0MC4wLFxuICAgICAgfSxcbiAgICBdKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdwaHlzaWNhbC1wcm9jZXNzb3InOiAnSW50ZWwgWGVvbiBQbGF0aW51bSA4MTc1TSxBTUQgQTgtOTYwMGYnLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlamVjdHMudG9UaHJvd0Vycm9yKCk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgbW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICAncGh5c2ljYWwtcHJvY2Vzc29yJzogJ0FNRCBBOC05NjAwJyxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgJ3BoeXNpY2FsLXByb2Nlc3Nvcic6ICdBTUQgQTgtOTYwMCcsXG4gICAgICAgICd0aGVybWFsLWRlc2lnbi1wb3dlcic6IDY1LFxuICAgICAgfSxcbiAgICBdKTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBtb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgICdwaHlzaWNhbC1wcm9jZXNzb3InOiAnQU1EIDMwMjBlZicsXG4gICAgICAgIH0sXG4gICAgICBdKVxuICAgICkucmVqZWN0cy50b1Rocm93RXJyb3IoKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const globals_1 = require("@jest/globals");
|
|
4
|
+
const index_1 = require("../../../../lib/teads-aws/index");
|
|
5
|
+
const common_1 = require("../../../../types/common");
|
|
6
|
+
globals_1.jest.setTimeout(30000);
|
|
7
|
+
(0, globals_1.describe)('teads:configure test', () => {
|
|
8
|
+
(0, globals_1.test)('initialize with params', async () => {
|
|
9
|
+
const outputModel = new index_1.TeadsAWS();
|
|
10
|
+
await outputModel.configure('test', {
|
|
11
|
+
interpolation: common_1.Interpolation.LINEAR,
|
|
12
|
+
'instance-type': 't2.micro',
|
|
13
|
+
});
|
|
14
|
+
await (0, globals_1.expect)(outputModel.execute([
|
|
15
|
+
{
|
|
16
|
+
duration: 3600,
|
|
17
|
+
'cpu-util': 50,
|
|
18
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
19
|
+
},
|
|
20
|
+
])).resolves.toStrictEqual([
|
|
21
|
+
{
|
|
22
|
+
duration: 3600,
|
|
23
|
+
'cpu-util': 50,
|
|
24
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
25
|
+
energy: 0.004900000000000001,
|
|
26
|
+
'embodied-carbon': 0.04216723744292237 * 1000,
|
|
27
|
+
},
|
|
28
|
+
]);
|
|
29
|
+
});
|
|
30
|
+
(0, globals_1.test)('teads:initialize with params: spline', async () => {
|
|
31
|
+
const outputModel = new index_1.TeadsAWS();
|
|
32
|
+
await outputModel.configure('test', {
|
|
33
|
+
'instance-type': 'm5n.large',
|
|
34
|
+
interpolation: common_1.Interpolation.SPLINE,
|
|
35
|
+
});
|
|
36
|
+
await (0, globals_1.expect)(outputModel.execute([
|
|
37
|
+
{
|
|
38
|
+
duration: 3600,
|
|
39
|
+
'cpu-util': 10,
|
|
40
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
duration: 3600,
|
|
44
|
+
'cpu-util': 50,
|
|
45
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
duration: 3600,
|
|
49
|
+
'cpu-util': 100,
|
|
50
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
51
|
+
},
|
|
52
|
+
])).resolves.toStrictEqual([
|
|
53
|
+
{
|
|
54
|
+
duration: 3600,
|
|
55
|
+
'cpu-util': 10,
|
|
56
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
57
|
+
energy: 0.0067,
|
|
58
|
+
'embodied-carbon': 91.94006849315068,
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
duration: 3600,
|
|
62
|
+
'cpu-util': 50,
|
|
63
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
64
|
+
energy: 0.011800000000000001,
|
|
65
|
+
'embodied-carbon': 91.94006849315068,
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
duration: 3600,
|
|
69
|
+
'cpu-util': 100,
|
|
70
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
71
|
+
energy: 0.016300000000000002,
|
|
72
|
+
'embodied-carbon': 91.94006849315068,
|
|
73
|
+
},
|
|
74
|
+
]);
|
|
75
|
+
});
|
|
76
|
+
(0, globals_1.test)('teads:initialize with params: linear', async () => {
|
|
77
|
+
const outputModel = new index_1.TeadsAWS();
|
|
78
|
+
await outputModel.configure('test', {
|
|
79
|
+
'instance-type': 'm5n.large',
|
|
80
|
+
interpolation: common_1.Interpolation.LINEAR,
|
|
81
|
+
});
|
|
82
|
+
await (0, globals_1.expect)(outputModel.execute([
|
|
83
|
+
{
|
|
84
|
+
duration: 3600,
|
|
85
|
+
'cpu-util': 10,
|
|
86
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
duration: 3600,
|
|
90
|
+
'cpu-util': 50,
|
|
91
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
duration: 3600,
|
|
95
|
+
'cpu-util': 100,
|
|
96
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
97
|
+
},
|
|
98
|
+
])).resolves.toStrictEqual([
|
|
99
|
+
{
|
|
100
|
+
duration: 3600,
|
|
101
|
+
'cpu-util': 10,
|
|
102
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
103
|
+
energy: 0.0067,
|
|
104
|
+
'embodied-carbon': 91.94006849315068,
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
duration: 3600,
|
|
108
|
+
'cpu-util': 50,
|
|
109
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
110
|
+
energy: 0.011800000000000001,
|
|
111
|
+
'embodied-carbon': 91.94006849315068,
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
duration: 3600,
|
|
115
|
+
'cpu-util': 100,
|
|
116
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
117
|
+
energy: 0.016300000000000002,
|
|
118
|
+
'embodied-carbon': 91.94006849315068,
|
|
119
|
+
},
|
|
120
|
+
]);
|
|
121
|
+
});
|
|
122
|
+
(0, globals_1.test)('teads:initialize with params: linear 2', async () => {
|
|
123
|
+
const outputModel = new index_1.TeadsAWS();
|
|
124
|
+
await outputModel.configure('test', {
|
|
125
|
+
'instance-type': 'm5n.large',
|
|
126
|
+
interpolation: common_1.Interpolation.LINEAR,
|
|
127
|
+
'expected-lifespan': 8 * 365 * 24 * 3600,
|
|
128
|
+
});
|
|
129
|
+
await (0, globals_1.expect)(outputModel.execute([
|
|
130
|
+
{
|
|
131
|
+
duration: 3600,
|
|
132
|
+
'cpu-util': 10,
|
|
133
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
duration: 3600,
|
|
137
|
+
'cpu-util': 50,
|
|
138
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
duration: 3600,
|
|
142
|
+
'cpu-util': 100,
|
|
143
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
144
|
+
},
|
|
145
|
+
])).resolves.toStrictEqual([
|
|
146
|
+
{
|
|
147
|
+
duration: 3600,
|
|
148
|
+
'cpu-util': 10,
|
|
149
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
150
|
+
energy: 0.0067,
|
|
151
|
+
'embodied-carbon': 45.97003424657534,
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
duration: 3600,
|
|
155
|
+
'cpu-util': 50,
|
|
156
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
157
|
+
energy: 0.011800000000000001,
|
|
158
|
+
'embodied-carbon': 45.97003424657534,
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
duration: 3600,
|
|
162
|
+
'cpu-util': 100,
|
|
163
|
+
timestamp: '2021-01-01T00:00:00Z',
|
|
164
|
+
energy: 0.016300000000000002,
|
|
165
|
+
'embodied-carbon': 45.97003424657534,
|
|
166
|
+
},
|
|
167
|
+
]);
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9fX3Rlc3RzX18vdW5pdC9saWIvdGVhZHMtYXdzL2luZGV4LnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwyQ0FBMkQ7QUFDM0QsMkRBQXlEO0FBRXpELHFEQUF1RDtBQUV2RCxjQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBRXZCLElBQUEsa0JBQVEsRUFBQyxzQkFBc0IsRUFBRSxHQUFHLEVBQUU7SUFDcEMsSUFBQSxjQUFJLEVBQUMsd0JBQXdCLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDeEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBUSxFQUFFLENBQUM7UUFDbkMsTUFBTSxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRTtZQUNsQyxhQUFhLEVBQUUsc0JBQWEsQ0FBQyxNQUFNO1lBQ25DLGVBQWUsRUFBRSxVQUFVO1NBQzVCLENBQUMsQ0FBQztRQUNILE1BQU0sSUFBQSxnQkFBTSxFQUNWLFdBQVcsQ0FBQyxPQUFPLENBQUM7WUFDbEI7Z0JBQ0UsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsVUFBVSxFQUFFLEVBQUU7Z0JBQ2QsU0FBUyxFQUFFLHNCQUFzQjthQUNsQztTQUNGLENBQUMsQ0FDSCxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDdkI7Z0JBQ0UsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsVUFBVSxFQUFFLEVBQUU7Z0JBQ2QsU0FBUyxFQUFFLHNCQUFzQjtnQkFDakMsTUFBTSxFQUFFLG9CQUFvQjtnQkFDNUIsaUJBQWlCLEVBQUUsbUJBQW1CLEdBQUcsSUFBSTthQUM5QztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0gsSUFBQSxjQUFJLEVBQUMsc0NBQXNDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDdEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxnQkFBUSxFQUFFLENBQUM7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Q3JDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZGVzY3JpYmUsIGV4cGVjdCwgamVzdCwgdGVzdH0gZnJvbSAnQGplc3QvZ2xvYmFscyc7XG5pbXBvcnQge1RlYWRzQVdTfSBmcm9tICcuLi8uLi8uLi8uLi9saWIvdGVhZHMtYXdzL2luZGV4JztcblxuaW1wb3J0IHtJbnRlcnBvbGF0aW9ufSBmcm9tICcuLi8uLi8uLi8uLi90eXBlcy9jb21tb24nO1xuXG5qZXN0LnNldFRpbWVvdXQoMzAwMDApO1xuXG5kZXNjcmliZSgndGVhZHM6Y29uZmlndXJlIHRlc3QnLCAoKSA9PiB7XG4gIHRlc3QoJ2luaXRpYWxpemUgd2l0aCBwYXJhbXMnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3V0cHV0TW9kZWwgPSBuZXcgVGVhZHNBV1MoKTtcbiAgICBhd2FpdCBvdXRwdXRNb2RlbC5jb25maWd1cmUoJ3Rlc3QnLCB7XG4gICAgICBpbnRlcnBvbGF0aW9uOiBJbnRlcnBvbGF0aW9uLkxJTkVBUixcbiAgICAgICdpbnN0YW5jZS10eXBlJzogJ3QyLm1pY3JvJyxcbiAgICB9KTtcbiAgICBhd2FpdCBleHBlY3QoXG4gICAgICBvdXRwdXRNb2RlbC5leGVjdXRlKFtcbiAgICAgICAge1xuICAgICAgICAgIGR1cmF0aW9uOiAzNjAwLFxuICAgICAgICAgICdjcHUtdXRpbCc6IDUwLFxuICAgICAgICAgIHRpbWVzdGFtcDogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJyxcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgKS5yZXNvbHZlcy50b1N0cmljdEVxdWFsKFtcbiAgICAgIHtcbiAgICAgICAgZHVyYXRpb246IDM2MDAsXG4gICAgICAgICdjcHUtdXRpbCc6IDUwLFxuICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIGVuZXJneTogMC4wMDQ5MDAwMDAwMDAwMDAwMDEsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiAwLjA0MjE2NzIzNzQ0MjkyMjM3ICogMTAwMCxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xuICB0ZXN0KCd0ZWFkczppbml0aWFsaXplIHdpdGggcGFyYW1zOiBzcGxpbmUnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3V0cHV0TW9kZWwgPSBuZXcgVGVhZHNBV1MoKTtcbiAgICBhd2FpdCBvdXRwdXRNb2RlbC5jb25maWd1cmUoJ3Rlc3QnLCB7XG4gICAgICAnaW5zdGFuY2UtdHlwZSc6ICdtNW4ubGFyZ2UnLFxuICAgICAgaW50ZXJwb2xhdGlvbjogSW50ZXJwb2xhdGlvbi5TUExJTkUsXG4gICAgfSk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgb3V0cHV0TW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiAxMCxcbiAgICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiA1MCxcbiAgICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiAxMDAsXG4gICAgICAgICAgdGltZXN0YW1wOiAnMjAyMS0wMS0wMVQwMDowMDowMFonLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgJ2NwdS11dGlsJzogMTAsXG4gICAgICAgIHRpbWVzdGFtcDogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJyxcbiAgICAgICAgZW5lcmd5OiAwLjAwNjcsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA5MS45NDAwNjg0OTMxNTA2OCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGR1cmF0aW9uOiAzNjAwLFxuICAgICAgICAnY3B1LXV0aWwnOiA1MCxcbiAgICAgICAgdGltZXN0YW1wOiAnMjAyMS0wMS0wMVQwMDowMDowMFonLFxuICAgICAgICBlbmVyZ3k6IDAuMDExODAwMDAwMDAwMDAwMDAxLFxuICAgICAgICAnZW1ib2RpZWQtY2FyYm9uJzogOTEuOTQwMDY4NDkzMTUwNjgsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgJ2NwdS11dGlsJzogMTAwLFxuICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIGVuZXJneTogMC4wMTYzMDAwMDAwMDAwMDAwMDIsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA5MS45NDAwNjg0OTMxNTA2OCxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xuICB0ZXN0KCd0ZWFkczppbml0aWFsaXplIHdpdGggcGFyYW1zOiBsaW5lYXInLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgb3V0cHV0TW9kZWwgPSBuZXcgVGVhZHNBV1MoKTtcbiAgICBhd2FpdCBvdXRwdXRNb2RlbC5jb25maWd1cmUoJ3Rlc3QnLCB7XG4gICAgICAnaW5zdGFuY2UtdHlwZSc6ICdtNW4ubGFyZ2UnLFxuICAgICAgaW50ZXJwb2xhdGlvbjogSW50ZXJwb2xhdGlvbi5MSU5FQVIsXG4gICAgfSk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgb3V0cHV0TW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiAxMCxcbiAgICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiA1MCxcbiAgICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiAxMDAsXG4gICAgICAgICAgdGltZXN0YW1wOiAnMjAyMS0wMS0wMVQwMDowMDowMFonLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgJ2NwdS11dGlsJzogMTAsXG4gICAgICAgIHRpbWVzdGFtcDogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJyxcbiAgICAgICAgZW5lcmd5OiAwLjAwNjcsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA5MS45NDAwNjg0OTMxNTA2OCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGR1cmF0aW9uOiAzNjAwLFxuICAgICAgICAnY3B1LXV0aWwnOiA1MCxcbiAgICAgICAgdGltZXN0YW1wOiAnMjAyMS0wMS0wMVQwMDowMDowMFonLFxuICAgICAgICBlbmVyZ3k6IDAuMDExODAwMDAwMDAwMDAwMDAxLFxuICAgICAgICAnZW1ib2RpZWQtY2FyYm9uJzogOTEuOTQwMDY4NDkzMTUwNjgsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgJ2NwdS11dGlsJzogMTAwLFxuICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIGVuZXJneTogMC4wMTYzMDAwMDAwMDAwMDAwMDIsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA5MS45NDAwNjg0OTMxNTA2OCxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xuICB0ZXN0KCd0ZWFkczppbml0aWFsaXplIHdpdGggcGFyYW1zOiBsaW5lYXIgMicsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBvdXRwdXRNb2RlbCA9IG5ldyBUZWFkc0FXUygpO1xuICAgIGF3YWl0IG91dHB1dE1vZGVsLmNvbmZpZ3VyZSgndGVzdCcsIHtcbiAgICAgICdpbnN0YW5jZS10eXBlJzogJ201bi5sYXJnZScsXG4gICAgICBpbnRlcnBvbGF0aW9uOiBJbnRlcnBvbGF0aW9uLkxJTkVBUixcbiAgICAgICdleHBlY3RlZC1saWZlc3Bhbic6IDggKiAzNjUgKiAyNCAqIDM2MDAsXG4gICAgfSk7XG4gICAgYXdhaXQgZXhwZWN0KFxuICAgICAgb3V0cHV0TW9kZWwuZXhlY3V0ZShbXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiAxMCxcbiAgICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiA1MCxcbiAgICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgICAnY3B1LXV0aWwnOiAxMDAsXG4gICAgICAgICAgdGltZXN0YW1wOiAnMjAyMS0wMS0wMVQwMDowMDowMFonLFxuICAgICAgICB9LFxuICAgICAgXSlcbiAgICApLnJlc29sdmVzLnRvU3RyaWN0RXF1YWwoW1xuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgJ2NwdS11dGlsJzogMTAsXG4gICAgICAgIHRpbWVzdGFtcDogJzIwMjEtMDEtMDFUMDA6MDA6MDBaJyxcbiAgICAgICAgZW5lcmd5OiAwLjAwNjcsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA0NS45NzAwMzQyNDY1NzUzNCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGR1cmF0aW9uOiAzNjAwLFxuICAgICAgICAnY3B1LXV0aWwnOiA1MCxcbiAgICAgICAgdGltZXN0YW1wOiAnMjAyMS0wMS0wMVQwMDowMDowMFonLFxuICAgICAgICBlbmVyZ3k6IDAuMDExODAwMDAwMDAwMDAwMDAxLFxuICAgICAgICAnZW1ib2RpZWQtY2FyYm9uJzogNDUuOTcwMDM0MjQ2NTc1MzQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMzYwMCxcbiAgICAgICAgJ2NwdS11dGlsJzogMTAwLFxuICAgICAgICB0aW1lc3RhbXA6ICcyMDIxLTAxLTAxVDAwOjAwOjAwWicsXG4gICAgICAgIGVuZXJneTogMC4wMTYzMDAwMDAwMDAwMDAwMDIsXG4gICAgICAgICdlbWJvZGllZC1jYXJib24nOiA0NS45NzAwMzQyNDY1NzUzNCxcbiAgICAgIH0sXG4gICAgXSk7XG4gIH0pO1xufSk7XG4iXX0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|