@signageos/cli 0.9.1 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +31 -0
  3. package/config/parameters.d.ts +10 -0
  4. package/config/parameters.js +22 -0
  5. package/dist/Applet/Generate/appletGenerateCommand.js +2 -2
  6. package/dist/Applet/Generate/appletGenerateCommand.js.map +1 -1
  7. package/dist/Applet/Test/Upload/appletTestRunCommand.d.ts +2 -0
  8. package/dist/Applet/Test/Upload/appletTestRunCommand.js +212 -0
  9. package/dist/Applet/Test/Upload/appletTestRunCommand.js.map +1 -0
  10. package/dist/Applet/Test/Upload/appletTestRunFacade.d.ts +2 -0
  11. package/dist/Applet/Test/Upload/appletTestRunFacade.js +34 -0
  12. package/dist/Applet/Test/Upload/appletTestRunFacade.js.map +1 -0
  13. package/dist/Applet/Test/Upload/appletTestUploadCommand.d.ts +2 -0
  14. package/dist/Applet/Test/Upload/appletTestUploadCommand.js +264 -0
  15. package/dist/Applet/Test/Upload/appletTestUploadCommand.js.map +1 -0
  16. package/dist/Applet/Test/Upload/appletTestUploadFacade.d.ts +4 -0
  17. package/dist/Applet/Test/Upload/appletTestUploadFacade.js +122 -0
  18. package/dist/Applet/Test/Upload/appletTestUploadFacade.js.map +1 -0
  19. package/dist/Applet/Test/appletTestCommand.d.ts +2 -0
  20. package/dist/Applet/Test/appletTestCommand.js +57 -0
  21. package/dist/Applet/Test/appletTestCommand.js.map +1 -0
  22. package/dist/Applet/Upload/appletUploadCommand.js +11 -2
  23. package/dist/Applet/Upload/appletUploadCommand.js.map +1 -1
  24. package/dist/Applet/Upload/appletUploadCommandHelper.d.ts +0 -1
  25. package/dist/Applet/Upload/appletUploadCommandHelper.js +0 -39
  26. package/dist/Applet/Upload/appletUploadCommandHelper.js.map +1 -1
  27. package/dist/Applet/appletCommand.js +2 -0
  28. package/dist/Applet/appletCommand.js.map +1 -1
  29. package/dist/Applet/appletFacade.js +29 -25
  30. package/dist/Applet/appletFacade.js.map +1 -1
  31. package/dist/Device/Connect/connectHelper.js +2 -1
  32. package/dist/Device/Connect/connectHelper.js.map +1 -1
  33. package/dist/FileSystem/helper.js +29 -37
  34. package/dist/FileSystem/helper.js.map +1 -1
  35. package/dist/FileSystem/packageConfig.d.ts +13 -0
  36. package/dist/FileSystem/packageConfig.js +85 -0
  37. package/dist/FileSystem/packageConfig.js.map +1 -0
  38. package/dist/Firmware/Upload/firmwareUploadCommand.js +104 -48
  39. package/dist/Firmware/Upload/firmwareUploadCommand.js.map +1 -1
  40. package/dist/Firmware/Upload/firmwareUploadFacade.d.ts +1 -0
  41. package/dist/Firmware/Upload/firmwareUploadFacade.js +1 -1
  42. package/dist/Firmware/Upload/firmwareUploadFacade.js.map +1 -1
  43. package/dist/Firmware/firmwareCommand.js +1 -0
  44. package/dist/Firmware/firmwareCommand.js.map +1 -1
  45. package/dist/RunControl/runControlHelper.js +16 -4
  46. package/dist/RunControl/runControlHelper.js.map +1 -1
  47. package/dist/Timer/wait.d.ts +1 -0
  48. package/dist/Timer/wait.js +7 -0
  49. package/dist/Timer/wait.js.map +1 -0
  50. package/package-lock.json +238 -447
  51. package/package.json +6 -4
package/CHANGELOG.md CHANGED
@@ -4,6 +4,30 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.10.1] - 2021-12-12
8
+ ### Fixed
9
+ - Bug showing error `Invalid ecmascript version` when building generated applet
10
+
11
+ ## [0.10.0] - 2021-11-05
12
+ ### Added
13
+ - Applet uid & version can be specified as environment variables `SOS_APPLET_UID` & `SOS_APPLET_VERSION`.
14
+ - Command `sos applet upload` optionally accepts `--no-update-package-config` argument which prevents updating package.json config.
15
+ - Allow parametrize credentials using environment variables `SOS_API_IDENTIFICATION` & `SOS_API_SECURITY_TOKEN`.
16
+ - Allow parametrize default organization using environment variable `SOS_ORGANIZATION_UID`.
17
+ - Uploading applet tests command
18
+ - Running applet tests command
19
+
20
+ ### Fixed
21
+ - When uploading new applet, package.json sos is merged recursively.
22
+
23
+ ## [0.9.3] - 2021-10-20
24
+ ### Fixed
25
+ - Command `sos applet upload` works stably even on win32 platform
26
+
27
+ ## [0.9.2] - 2021-03-11
28
+ ### Fixed
29
+ - Uploading firmware specifying type (`android` & `linux` accepts firmware type. E.g.: `rpi`, `rpi4`, `benq_sl550`)
30
+
7
31
  ## [0.9.1] - 2021-02-17
8
32
  ### Fixed
9
33
  - `sos applet start` works properly even for remote machine using IP address (not just for localhost)
package/README.md CHANGED
@@ -24,6 +24,7 @@ sos login
24
24
  ```
25
25
  - Login account to allow use REST API commands
26
26
  - Logged account credentials are stored in `~/.sosrc` file.
27
+ - You override login credentials using environment variables `SOS_API_IDENTIFICATION` & `SOS_API_SECURITY_TOKEN`. Go to https://box.signageos.io/settings to generate the token.
27
28
 
28
29
  | Argument | Description | Default value |
29
30
  |----------------------------|---------------------------------|----------------|
@@ -73,6 +74,8 @@ sos applet upload --applet-path=dist/index.html
73
74
  - If applet is not created yet, it will create it
74
75
  - The applet version is used from `package.json`
75
76
  - Applet UID will be stored in `package.json` sos.appletUid
77
+ - You can use SOS_APPLET_UID as environment variable to specify appletUid to upload to (sos.appletUid of package.json will be overlooked).
78
+ - You can use SOS_APPLET_VERSION as environment variable to specify applet version to upload to (version of package.json will be overlooked).
76
79
  - Ignore files priority (from top to bottom) `.sosignore` > `.npmignore` > `.gitignore`
77
80
  - Only one ignore file is used or non
78
81
 
@@ -96,6 +99,31 @@ sos applet start
96
99
  | --project-dir *(optional)* | Root path of applet project directory | ${PWD} |
97
100
  | --entry-file-path *(optional)* | Path of built applet entry file | ${PWD}/dist/index.html |
98
101
 
102
+ #### Applet Tests Upload
103
+ ```bash
104
+ sos applet test upload
105
+ ```
106
+
107
+ - Upload all test files specified in package.json in sos.tests. The property is array of strings (relative paths to test files). E.g.: `["tests/sample.spec.js", "tests/sample2.spec.js"]`
108
+ - It removes files which are extra on server already
109
+
110
+ | Argument | Description | Default value |
111
+ |--------------------------------|-----------------------------------------------|------------------------|
112
+ | --yes *(optional)* | Skip interactive mode before it's uploaded | false |
113
+ | --verbose *(optional)* | Show detailed info about changed files | false |
114
+
115
+ #### Applet Tests Run
116
+ ```bash
117
+ sos applet test run
118
+ ```
119
+
120
+ - Run test files uploaded to server remotely.
121
+
122
+ | Argument | Description | Default value |
123
+ |--------------------------------|--------------------------------------------------------------|------------------------|
124
+ | --yes *(optional)* | Skip interactive mode before it's uploaded | false |
125
+ | --test *(optional)* | Test files which should be run. If omitted, all test are run | {all tests} |
126
+
99
127
  ### Organization
100
128
  ```bash
101
129
  sos organization --help
@@ -121,6 +149,8 @@ sos organization get
121
149
  ```bash
122
150
  sos organization set-default
123
151
  ```
152
+ - You override default organization using environment variable `SOS_ORGANIZATION_UID`. Go to https://box.signageos.io/organizations to git the organizationUid.
153
+
124
154
  | Argument | Description | Default value |
125
155
  |---------------------------------|------------------------------|----------------|
126
156
  | --organization-uid *(required)* | Organization UID | STDIN |
@@ -190,6 +220,7 @@ sos device connect
190
220
  | --ip *(required)* | Ip address of computer in local network | Automatically get from networkInterface|
191
221
  | --device-uid *(required)* | Uid of device from box' | STDIN |
192
222
  | --applet-dir *(required)* | Directory of the applet project | ${PWD}|
223
+ | --no-update-package-config *(optional)* | Prevents updating package.json config when applet doesn't exists | false |
193
224
 
194
225
  ## Contribution
195
226
  Clone the repository and install dev dependencies
@@ -11,6 +11,16 @@ declare const parameters: {
11
11
  },
12
12
  apiUrl: string;
13
13
  boxHost: string;
14
+ applet: {
15
+ uid: string | undefined;
16
+ version: string | undefined;
17
+ name: string | undefined;
18
+ };
19
+ accountAuth: {
20
+ tokenId: string | undefined;
21
+ token: string | undefined;
22
+ };
23
+ defaultOrganizationUid: string | undefined;
14
24
  };
15
25
 
16
26
  export = parameters;
@@ -9,6 +9,18 @@ const distPath = rootPath + '/dist';
9
9
 
10
10
  dotenv.config({ path: path.join(rootPath, '.env') });
11
11
 
12
+ if (process.env.SOS_API_IDENTIFICATION) {
13
+ console.warn(`Environment variable SOS_API_IDENTIFICATION found. Will override default credentials from ~/.sosrc`);
14
+ }
15
+
16
+ if (process.env.SOS_API_SECURITY_TOKEN) {
17
+ console.warn(`Environment variable SOS_API_SECURITY_TOKEN found. Will override default credentials from ~/.sosrc`);
18
+ }
19
+
20
+ if (process.env.SOS_ORGANIZATION_UID) {
21
+ console.warn(`Environment variable SOS_ORGANIZATION_UID found. Will override default credentials from ~/.sosrc`);
22
+ }
23
+
12
24
  module.exports = {
13
25
  environment,
14
26
  name: packageConfig.name,
@@ -21,4 +33,14 @@ module.exports = {
21
33
  },
22
34
  apiUrl: process.env.SOS_API_URL,
23
35
  boxHost: process.env.SOS_BOX_HOST,
36
+ applet: {
37
+ uid: process.env.SOS_APPLET_UID,
38
+ version: process.env.SOS_APPLET_VERSION,
39
+ name: process.env.SOS_APPLET_NAME,
40
+ },
41
+ accountAuth: {
42
+ tokenId: process.env.SOS_API_IDENTIFICATION,
43
+ token: process.env.SOS_API_SECURITY_TOKEN,
44
+ },
45
+ defaultOrganizationUid: process.env.SOS_ORGANIZATION_UID,
24
46
  };
@@ -247,7 +247,7 @@ function createPackageConfig(name, version) {
247
247
  prepare: "npm run clean && npm run build",
248
248
  upload: "sos applet upload",
249
249
  clean: "npx rimraf dist",
250
- escheck: "npx es-check --module es5 dist/*.js",
250
+ escheck: "npx es-check --module=false es5 dist/*.js",
251
251
  build: "webpack --mode production",
252
252
  postbuild: "npm run escheck",
253
253
  connect: "webpack --watch",
@@ -259,7 +259,7 @@ function createPackageConfig(name, version) {
259
259
  }
260
260
  var createWebpackConfig = function (entryFileName, fileExtensions, imports, rules, plugins) { return "\n" + imports.join(';\n') + "\n\nexports = module.exports = {\n\tentry: " + JSON.stringify('./src/' + entryFileName) + ",\n\toutput: {\n\t\tfilename: 'index.js',\n\t},\n\tresolve: {\n\t\textensions: " + JSON.stringify(fileExtensions) + ",\n\t},\n\tmodule: {\n\t\trules: [\n" + rules.join(',\n') + "\n\t\t],\n\t},\n\tplugins: [\n" + plugins.join(',\n') + "\n\t],\n};\n"; };
261
261
  var createIndexHtml = function (title) { return "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n\t<meta charset=\"utf-8\" />\n\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\" />\n\t<meta name=\"theme-color\" content=\"#000000\" />\n\t<title>" + title + "</title>\n</head>\n<body>\n\t<h1>Hello " + title + "</h1>\n\t<div id=\"root\"></div>\n</body>\n</html>\n"; };
262
- var createIndexJs = function () { return "\nrequire('./index.css');\n\nimport sos from '@signageos/front-applet';\n\n// Wait on sos data are ready (https://docs.signageos.io/api/sos-applet-api/#onReady)\nsos.onReady().then(async function () {\n\tconst contentElement = document.getElementById('root');\n\tconsole.log('sOS is ready');\n\tcontentElement.innerHTML = 'sOS is ready';\n});\n"; };
262
+ var createIndexJs = function () { return "\nrequire('./index.css');\n\nimport sos from '@signageos/front-applet';\n\n// Wait on sos data are ready (https://docs.signageos.io/api/js/content/latest/js-applet-basics#onready)\nsos.onReady().then(async function () {\n\tconst contentElement = document.getElementById('root');\n\tconsole.log('sOS is ready');\n\tcontentElement.innerHTML = 'sOS is ready';\n});\n"; };
263
263
  var createIndexCss = function () { return "\nbody {\n\tbackground-color: wheat;\n\ttext-align: center;\n}\n"; };
264
264
  var createNpmRunControl = function (registryUrl) { return "\nregistry=" + registryUrl + "\nalways-auth=true\n"; };
265
265
  //# sourceMappingURL=appletGenerateCommand.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"appletGenerateCommand.js","sourceRoot":"","sources":["../../../src/Applet/Generate/appletGenerateCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"appletGenerateCommand.js","sourceRoot":"","sources":["../../../src/Applet/Generate/appletGenerateCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import ICommand from '../../../Command/ICommand';
2
+ export declare const appletTestRun: ICommand;
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __read = (this && this.__read) || function (o, n) {
39
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
40
+ if (!m) return o;
41
+ var i = m.call(o), r, ar = [], e;
42
+ try {
43
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
44
+ }
45
+ catch (error) { e = { error: error }; }
46
+ finally {
47
+ try {
48
+ if (r && !r.done && (m = i["return"])) m.call(i);
49
+ }
50
+ finally { if (e) throw e.error; }
51
+ }
52
+ return ar;
53
+ };
54
+ var __spread = (this && this.__spread) || function () {
55
+ for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
56
+ return ar;
57
+ };
58
+ Object.defineProperty(exports, "__esModule", { value: true });
59
+ var chalk_1 = require("chalk");
60
+ var prompts = require("prompts");
61
+ var helper_1 = require("../../../helper");
62
+ var organizationFacade_1 = require("../../../Organization/organizationFacade");
63
+ var appletFacade_1 = require("../../appletFacade");
64
+ var appletUploadCommandHelper_1 = require("../../Upload/appletUploadCommandHelper");
65
+ var progressBarFactory_1 = require("../../../CommandLine/progressBarFactory");
66
+ var deviceFacade_1 = require("../../../Device/deviceFacade");
67
+ var appletTestRunFacade_1 = require("./appletTestRunFacade");
68
+ var wait_1 = require("../../../Timer/wait");
69
+ exports.appletTestRun = {
70
+ name: 'run',
71
+ description: 'Runs applet tests',
72
+ optionList: [
73
+ deviceFacade_1.DEVICE_UID_OPTION,
74
+ organizationFacade_1.ORGANIZATION_UID_OPTION,
75
+ {
76
+ name: 'test',
77
+ type: String,
78
+ multiple: true,
79
+ description: "Specify the test identifiers/files to be run. If not specified, all will be run.",
80
+ },
81
+ {
82
+ name: 'yes',
83
+ type: Boolean,
84
+ description: "Allow to run applet test without confirmation step",
85
+ },
86
+ ],
87
+ commands: [],
88
+ run: function (options) {
89
+ var _a, _b, _c, _d;
90
+ return __awaiter(this, void 0, void 0, function () {
91
+ var skipConfirmation, tests, currentDirectory, organizationUid, organization, restApi, deviceUid, device, version, appletUid, applet, appletVersion, testSuites, response, RUNNING_TEST_TITLE, progressBar, deviceAppletTest, lastCountFinished, nextCountFinished, progressName;
92
+ return __generator(this, function (_e) {
93
+ switch (_e.label) {
94
+ case 0:
95
+ skipConfirmation = !!options.yes;
96
+ tests = options.test;
97
+ currentDirectory = process.cwd();
98
+ return [4 /*yield*/, appletUploadCommandHelper_1.getOrganizationUidAndUpdateConfig(options)];
99
+ case 1:
100
+ organizationUid = _e.sent();
101
+ return [4 /*yield*/, organizationFacade_1.getOrganization(organizationUid)];
102
+ case 2:
103
+ organization = _e.sent();
104
+ restApi = helper_1.createOrganizationRestApi(organization);
105
+ return [4 /*yield*/, deviceFacade_1.getDeviceUid(restApi, options)];
106
+ case 3:
107
+ deviceUid = _e.sent();
108
+ return [4 /*yield*/, restApi.device.get(deviceUid)];
109
+ case 4:
110
+ device = _e.sent();
111
+ return [4 /*yield*/, appletFacade_1.getAppletVersion(currentDirectory)];
112
+ case 5:
113
+ version = _e.sent();
114
+ return [4 /*yield*/, appletFacade_1.tryGetAppletUid(currentDirectory)];
115
+ case 6:
116
+ appletUid = _e.sent();
117
+ if (!appletUid) {
118
+ throw new Error("applet uid is not present in package file.");
119
+ }
120
+ return [4 /*yield*/, restApi.applet.get(appletUid)];
121
+ case 7:
122
+ applet = _e.sent();
123
+ return [4 /*yield*/, restApi.applet.version.get(appletUid, version)];
124
+ case 8:
125
+ appletVersion = _e.sent();
126
+ return [4 /*yield*/, restApi.applet.tests.list(applet.uid, appletVersion.version)];
127
+ case 9:
128
+ testSuites = _e.sent();
129
+ if (!tests || tests.length === 0) {
130
+ tests = testSuites.map(function (testSuite) { return testSuite.identifier; });
131
+ }
132
+ appletTestRunFacade_1.validateTestIdentifiers(tests, testSuites);
133
+ printRunTests(tests);
134
+ if (!!skipConfirmation) return [3 /*break*/, 11];
135
+ return [4 /*yield*/, prompts({
136
+ type: 'confirm',
137
+ name: 'continue',
138
+ message: "Do you want to start testing " + chalk_1.default.green(applet.name) + " "
139
+ + ("and version " + chalk_1.default.green(version) + " on device " + device.name + "?"),
140
+ })];
141
+ case 10:
142
+ response = _e.sent();
143
+ if (!response.continue) {
144
+ throw new Error("Applet tests canceled");
145
+ }
146
+ _e.label = 11;
147
+ case 11:
148
+ RUNNING_TEST_TITLE = "Running applet tests";
149
+ progressBar = progressBarFactory_1.createProgressBar();
150
+ _e.label = 12;
151
+ case 12:
152
+ _e.trys.push([12, , 19, 20]);
153
+ progressBar.init({
154
+ size: tests.length,
155
+ name: RUNNING_TEST_TITLE,
156
+ });
157
+ return [4 /*yield*/, restApi.device.appletTest.run(device.uid, applet.uid, appletVersion.version, tests)];
158
+ case 13:
159
+ _e.sent();
160
+ deviceAppletTest = void 0;
161
+ _e.label = 14;
162
+ case 14: return [4 /*yield*/, wait_1.default(1e3)];
163
+ case 15:
164
+ _e.sent();
165
+ lastCountFinished = ((_a = deviceAppletTest === null || deviceAppletTest === void 0 ? void 0 : deviceAppletTest.successfulTests.length) !== null && _a !== void 0 ? _a : 0) + ((_b = deviceAppletTest === null || deviceAppletTest === void 0 ? void 0 : deviceAppletTest.failedTests.length) !== null && _b !== void 0 ? _b : 0);
166
+ return [4 /*yield*/, restApi.device.appletTest.get(device.uid, applet.uid, appletVersion.version)];
167
+ case 16:
168
+ deviceAppletTest = _e.sent();
169
+ nextCountFinished = ((_c = deviceAppletTest === null || deviceAppletTest === void 0 ? void 0 : deviceAppletTest.successfulTests.length) !== null && _c !== void 0 ? _c : 0) + ((_d = deviceAppletTest === null || deviceAppletTest === void 0 ? void 0 : deviceAppletTest.failedTests.length) !== null && _d !== void 0 ? _d : 0);
170
+ progressName = RUNNING_TEST_TITLE + ' ' + __spread(deviceAppletTest.failedTests.map(function (t) { return chalk_1.default.red(t); }), deviceAppletTest.successfulTests.map(function (t) { return chalk_1.default.green(t); }), deviceAppletTest.pendingTests.map(function (t) { return chalk_1.default.gray(t); })).join(',');
171
+ progressBar.update({
172
+ add: nextCountFinished - lastCountFinished,
173
+ name: progressName,
174
+ });
175
+ _e.label = 17;
176
+ case 17:
177
+ if (!(deviceAppletTest === null || deviceAppletTest === void 0 ? void 0 : deviceAppletTest.finishedAt)) return [3 /*break*/, 14];
178
+ _e.label = 18;
179
+ case 18:
180
+ if (deviceAppletTest.failedTests.length > 0) {
181
+ displayFailureMessage(applet.name, appletVersion.version, deviceAppletTest);
182
+ throw new Error("Tests run failed");
183
+ }
184
+ else {
185
+ displaySuccessMessage(applet.name, appletVersion.version, deviceAppletTest);
186
+ }
187
+ return [3 /*break*/, 20];
188
+ case 19:
189
+ progressBar.end();
190
+ return [7 /*endfinally*/];
191
+ case 20: return [2 /*return*/];
192
+ }
193
+ });
194
+ });
195
+ },
196
+ };
197
+ function displaySuccessMessage(appletName, appletVersion, deviceAppletTest) {
198
+ console.log("Applet " + chalk_1.default.green(appletName) + " version " + chalk_1.default.green(appletVersion) + " tests " + chalk_1.default.green('succeeded') + ".");
199
+ deviceAppletTest.successfulTests.forEach(function (file) { return console.log(chalk_1.default.green('✓ ' + file)); });
200
+ }
201
+ function displayFailureMessage(appletName, appletVersion, deviceAppletTest) {
202
+ console.log("Applet " + chalk_1.default.green(appletName) + " version " + chalk_1.default.green(appletVersion) + " tests " + chalk_1.default.red('failed') + ".");
203
+ deviceAppletTest.failedTests.forEach(function (file) { return console.log(chalk_1.default.red('× ' + file)); });
204
+ deviceAppletTest.successfulTests.forEach(function (file) { return console.log(chalk_1.default.green('✓ ' + file)); });
205
+ }
206
+ function printRunTests(identifiers) {
207
+ if (identifiers.length > 0) {
208
+ console.log(chalk_1.default.yellow("Next test files are going to be run..."));
209
+ }
210
+ identifiers.forEach(function (file) { return console.log(file); });
211
+ }
212
+ //# sourceMappingURL=appletTestRunCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appletTestRunCommand.js","sourceRoot":"","sources":["../../../../src/Applet/Test/Upload/appletTestRunCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import IAppletTestSuite from "@signageos/sdk/dist/RestApi/Applet/Version/IAppletTestSuite";
2
+ export declare function validateTestIdentifiers(identifiers: string[], suites: IAppletTestSuite[]): void;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ function validateTestIdentifiers(identifiers, suites) {
15
+ var e_1, _a;
16
+ var existingIdentifiers = suites.map(function (suite) { return suite.identifier; });
17
+ try {
18
+ for (var identifiers_1 = __values(identifiers), identifiers_1_1 = identifiers_1.next(); !identifiers_1_1.done; identifiers_1_1 = identifiers_1.next()) {
19
+ var identifier = identifiers_1_1.value;
20
+ if (!existingIdentifiers.includes(identifier)) {
21
+ throw new Error("Test " + identifier + " is not in currently uploaded test suites.");
22
+ }
23
+ }
24
+ }
25
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
26
+ finally {
27
+ try {
28
+ if (identifiers_1_1 && !identifiers_1_1.done && (_a = identifiers_1.return)) _a.call(identifiers_1);
29
+ }
30
+ finally { if (e_1) throw e_1.error; }
31
+ }
32
+ }
33
+ exports.validateTestIdentifiers = validateTestIdentifiers;
34
+ //# sourceMappingURL=appletTestRunFacade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appletTestRunFacade.js","sourceRoot":"","sources":["../../../../src/Applet/Test/Upload/appletTestRunFacade.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAEA,SAAgB,uBAAuB,CAAC,WAAqB,EAAE,MAA0B;;IACxF,IAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC;;QACpE,KAAyB,IAAA,gBAAA,SAAA,WAAW,CAAA,wCAAA,iEAAE;YAAjC,IAAM,UAAU,wBAAA;YACpB,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;gBAC9C,MAAM,IAAI,KAAK,CAAC,UAAQ,UAAU,+CAA4C,CAAC,CAAC;aAChF;SACD;;;;;;;;;AACF,CAAC;AAPD,0DAOC"}
@@ -0,0 +1,2 @@
1
+ import ICommand from '../../../Command/ICommand';
2
+ export declare const appletTestUpload: ICommand;