jest-audio-reporter 2.2.2 → 2.2.3

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.
@@ -0,0 +1,26 @@
1
+ /// <reference types="node" />
2
+ import type { ReporterOnStartOptions } from '@jest/reporters';
3
+ import type { AggregatedResult } from '@jest/test-result';
4
+ import type { Config } from '@jest/types';
5
+ import { Options, RuntimeOptions } from './options';
6
+ export declare class AudioReporter {
7
+ globalConfig: Config.GlobalConfig;
8
+ log: {
9
+ enabled: boolean;
10
+ writer: Console;
11
+ debug(...args: any[]): void;
12
+ };
13
+ player: any;
14
+ disable: boolean;
15
+ options: RuntimeOptions;
16
+ volume: number | undefined;
17
+ onStartVolume: number;
18
+ onCompleteVolume: number | undefined;
19
+ constructor(globalConfig: Config.GlobalConfig, jestOptions: Partial<Options>);
20
+ onRunStart(results: AggregatedResult, options: ReporterOnStartOptions): void;
21
+ onRunComplete(_contexts: any, results: AggregatedResult): Promise<unknown> | undefined;
22
+ private playComplete;
23
+ private getEffectiveOnStartVolume;
24
+ private getEffectiveOnCompleteVolume;
25
+ private getPlayOption;
26
+ }
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AudioReporter = void 0;
7
+ const play_sound_1 = __importDefault(require("play-sound"));
8
+ const rc_1 = __importDefault(require("rc"));
9
+ const log_1 = require("./log");
10
+ const options_1 = require("./options");
11
+ const store_1 = require("./store");
12
+ class AudioReporter {
13
+ constructor(globalConfig, jestOptions) {
14
+ this.globalConfig = globalConfig;
15
+ this.log = (0, log_1.createLog)();
16
+ if (jestOptions.debug) {
17
+ this.log.enabled = true;
18
+ }
19
+ this.player = (0, play_sound_1.default)({});
20
+ this.disable = !!jestOptions.disable;
21
+ this.volume = jestOptions.volume;
22
+ this.onStartVolume = jestOptions.onStartVolume || 0.5;
23
+ this.onCompleteVolume = jestOptions.onCompleteVolume;
24
+ const rawRCOptions = (0, rc_1.default)('jest-audio-reporter');
25
+ const rcOptions = (0, options_1.processOptions)(rawRCOptions);
26
+ (0, log_1.logOptions)({ log: this.log }, rawRCOptions, rcOptions);
27
+ this.options = rcOptions;
28
+ }
29
+ onRunStart(results, options) {
30
+ if (this.disable)
31
+ return;
32
+ if (store_1.store.completeAudio) {
33
+ store_1.store.completeAudio.kill();
34
+ store_1.store.completeAudio = undefined;
35
+ }
36
+ if (results.numTotalTestSuites === 0 ||
37
+ options.estimatedTime > 0 &&
38
+ options.estimatedTime <= this.options.onStartThreshold)
39
+ return;
40
+ const file = pickOne(this.options.onStart);
41
+ const volume = this.getEffectiveOnStartVolume();
42
+ store_1.store.startAudio = this.player.play(file, this.getPlayOption({ volume }));
43
+ }
44
+ onRunComplete(_contexts, results) {
45
+ if (this.disable)
46
+ return;
47
+ if (store_1.store.startAudio) {
48
+ store_1.store.startAudio.kill();
49
+ store_1.store.startAudio = undefined;
50
+ }
51
+ if (results.numTotalTestSuites === 0)
52
+ return;
53
+ if (results.wasInterrupted)
54
+ return;
55
+ if (results.numFailedTestSuites === 0) {
56
+ if (isWatch(this.globalConfig) && store_1.store.doesLastRunPass)
57
+ return;
58
+ store_1.store.doesLastRunPass = true;
59
+ return this.playComplete(pickOne(this.options.onSuitePass));
60
+ }
61
+ else {
62
+ store_1.store.doesLastRunPass = false;
63
+ return this.playComplete(pickOne(this.options.onSuiteFailure));
64
+ }
65
+ }
66
+ playComplete(file) {
67
+ if (!file)
68
+ return;
69
+ const volume = this.getEffectiveOnCompleteVolume();
70
+ if (isWatch(this.globalConfig)) {
71
+ store_1.store.completeAudio = this.player.play(file, this.getPlayOption({ volume }));
72
+ }
73
+ else {
74
+ return new Promise(a => {
75
+ store_1.store.completeAudio = this.player.play(file, this.getPlayOption({ volume }), a);
76
+ });
77
+ }
78
+ }
79
+ getEffectiveOnStartVolume() {
80
+ return Math.min(this.volume || 1, this.onStartVolume);
81
+ }
82
+ getEffectiveOnCompleteVolume() {
83
+ return Math.min(this.volume || 1, this.onCompleteVolume || 1);
84
+ }
85
+ getPlayOption(option) {
86
+ switch (this.player.player) {
87
+ case 'afplay':
88
+ return getAfPlayOption(option);
89
+ case 'mplayer':
90
+ return getMplayerOption(option);
91
+ default:
92
+ return {};
93
+ }
94
+ }
95
+ }
96
+ exports.AudioReporter = AudioReporter;
97
+ function pickOne(arr) {
98
+ if (arr.length === 0)
99
+ return undefined;
100
+ return arr[Math.floor(Math.random() * arr.length)];
101
+ }
102
+ function isWatch(globalConfig) {
103
+ return globalConfig.watch || globalConfig.watchAll;
104
+ }
105
+ function getAfPlayOption({ volume }) {
106
+ // https://ss64.com/osx/afplay.html
107
+ // According to the link, the volume is logarithmic,
108
+ // but I'm not sure what does it mean, as:
109
+ // log(1) = 0
110
+ // log(0.1) = -1
111
+ // log(0) = -infinity
112
+ // So for now, I treat [0, 1] as linear
113
+ return { afplay: ['-v', 1 / (Math.pow(10, Math.log2(1 / volume)))] };
114
+ }
115
+ function getMplayerOption({ volume }) {
116
+ // http://www.mplayerhq.hu/DOCS/man/en/mplayer.1.html search for "-volume"
117
+ return { mplayer: ['-volume', volume * 100] };
118
+ }
119
+ //# sourceMappingURL=AudioReporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AudioReporter.js","sourceRoot":"","sources":["../ts/AudioReporter.ts"],"names":[],"mappings":"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"}
package/cjs/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { AudioReporter } from './AudioReporter';
2
+ export default AudioReporter;
package/cjs/index.js ADDED
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const store_1 = require("./store");
4
+ // istanbul ignore next
5
+ process.on('exit', () => {
6
+ if (store_1.store.startAudio)
7
+ store_1.store.startAudio.kill();
8
+ if (store_1.store.completeAudio)
9
+ store_1.store.completeAudio.kill();
10
+ });
11
+ const AudioReporter_1 = require("./AudioReporter");
12
+ exports.default = AudioReporter_1.AudioReporter;
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":";;AAAA,mCAA+B;AAE/B,uBAAuB;AACvB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;IACtB,IAAI,aAAK,CAAC,UAAU;QAAE,aAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAA;IAC7C,IAAI,aAAK,CAAC,aAAa;QAAE,aAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAA;AACrD,CAAC,CAAC,CAAA;AAEF,mDAA+C;AAE/C,kBAAe,6BAAa,CAAA"}
package/cjs/log.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ /// <reference types="node" />
2
+ export declare function createLog(): {
3
+ enabled: boolean;
4
+ writer: Console;
5
+ debug(...args: any[]): void;
6
+ };
7
+ export declare function logOptions({ log }: {
8
+ log: any;
9
+ }, raw: any, options: any): void;
package/cjs/log.js ADDED
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.logOptions = exports.createLog = void 0;
4
+ const store_1 = require("./store");
5
+ function createLog() {
6
+ return {
7
+ enabled: false,
8
+ writer: console,
9
+ debug(...args) {
10
+ if (store_1.store.devel)
11
+ return;
12
+ if (this.enabled) {
13
+ // istanbul ignore next
14
+ this.writer.info(...args);
15
+ }
16
+ }
17
+ };
18
+ }
19
+ exports.createLog = createLog;
20
+ function logOptions({ log }, raw, options) {
21
+ if (!raw.configs) {
22
+ log.debug('no config detected');
23
+ }
24
+ else {
25
+ log.debug(`configs location:
26
+ ${raw.configs.map(c => ` ${c}`).join('\n')}
27
+
28
+ options:
29
+ ${JSON.stringify(options, undefined, 2)}
30
+ `);
31
+ }
32
+ }
33
+ exports.logOptions = logOptions;
34
+ //# sourceMappingURL=log.js.map
package/cjs/log.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../ts/log.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAE/B,SAAgB,SAAS;IACvB,OAAO;QACL,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,OAAO;QACf,KAAK,CAAC,GAAG,IAAI;YACX,IAAI,aAAK,CAAC,KAAK;gBAAE,OAAM;YACvB,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,uBAAuB;gBACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAA;aAC1B;QACH,CAAC;KACF,CAAA;AACH,CAAC;AAZD,8BAYC;AAED,SAAgB,UAAU,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,OAAO;IAC9C,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;QAChB,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;KAChC;SACI;QACH,GAAG,CAAC,KAAK,CAAC;EACZ,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAGzC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;CACtC,CAAC,CAAA;KACC;AACH,CAAC;AAZD,gCAYC"}
@@ -0,0 +1,33 @@
1
+ export interface Options {
2
+ /**
3
+ * Enable debug mode.
4
+ */
5
+ debug: boolean;
6
+ /**
7
+ * Master volume. 0 (silent) - 1 (normal).
8
+ */
9
+ volume: number;
10
+ /**
11
+ * Volume for onStart. 0 (silent) - 1 (normal).
12
+ * Value higher than Master volume is ignored.
13
+ */
14
+ onStartVolume: number;
15
+ /**
16
+ * Volume for onPass and onFailure. 0 (silent) - 1 (normal).
17
+ * Value higher than Master volume is ignored.
18
+ */
19
+ onCompleteVolume: number;
20
+ disable: boolean;
21
+ }
22
+ export interface RuntimeOptions {
23
+ onStart: string[];
24
+ onStartThreshold: number;
25
+ onSuitePass: string[];
26
+ onSuiteFailure: string[];
27
+ }
28
+ export declare function processOptions(rawRCOptions: any): {
29
+ onStartThreshold: number;
30
+ onStart: string[];
31
+ onSuitePass: string[];
32
+ onSuiteFailure: string[];
33
+ };
package/cjs/options.js ADDED
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.processOptions = void 0;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const path_1 = __importDefault(require("path"));
9
+ function processOptions(rawRCOptions) {
10
+ // reversing the config so the first one is the closest.
11
+ const dirs = rawRCOptions.configs ? rawRCOptions.configs.map(path_1.default.dirname) : [];
12
+ const onStart = processRCFileEntry(rawRCOptions.onStart, dirs);
13
+ const onSuitePass = processRCFileEntry(rawRCOptions.onSuitePass, dirs);
14
+ const onSuiteFailure = processRCFileEntry(rawRCOptions.onSuiteFailure, dirs);
15
+ const onStartThreshold = rawRCOptions.onStartThreshold !== undefined ? parseInt(rawRCOptions.onStartThreshold, 10) : 10;
16
+ return {
17
+ onStartThreshold,
18
+ onStart,
19
+ onSuitePass,
20
+ onSuiteFailure
21
+ };
22
+ }
23
+ exports.processOptions = processOptions;
24
+ function processRCFileEntry(files, dirs) {
25
+ if (!files)
26
+ return [];
27
+ const entries = typeof files === 'string' ? [files] : files;
28
+ const validFiles = [];
29
+ entries.forEach(e => {
30
+ if (path_1.default.isAbsolute(e)) {
31
+ validFiles.push(e);
32
+ }
33
+ else {
34
+ const file = dirs.map(dir => path_1.default.resolve(dir, e)).find(p => fs_1.default.existsSync(p));
35
+ if (file) {
36
+ validFiles.push(file);
37
+ }
38
+ }
39
+ });
40
+ return validFiles;
41
+ }
42
+ //# sourceMappingURL=options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sourceRoot":"","sources":["../ts/options.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAmB;AACnB,gDAAuB;AAgCvB,SAAgB,cAAc,CAAC,YAAY;IACzC,wDAAwD;IACxD,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,cAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/E,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC9D,MAAM,WAAW,GAAG,kBAAkB,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;IACtE,MAAM,cAAc,GAAG,kBAAkB,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;IAE5E,MAAM,gBAAgB,GAAG,YAAY,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEvH,OAAO;QACL,gBAAgB;QAChB,OAAO;QACP,WAAW;QACX,cAAc;KACf,CAAA;AACH,CAAC;AAfD,wCAeC;AAED,SAAS,kBAAkB,CAAC,KAAoC,EAAE,IAAc;IAC9E,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAA;IACrB,MAAM,OAAO,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAC3D,MAAM,UAAU,GAAa,EAAE,CAAA;IAC/B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAClB,IAAI,cAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;YACtB,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;SACnB;aACI;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,cAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9E,IAAI,IAAI,EAAE;gBACR,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;aACtB;SACF;IACH,CAAC,CAAC,CAAA;IACF,OAAO,UAAU,CAAA;AACnB,CAAC"}
package/cjs/store.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export interface Store {
2
+ devel: boolean;
3
+ startAudio?: any;
4
+ completeAudio?: any;
5
+ doesLastRunPass: boolean;
6
+ reset(): void;
7
+ }
8
+ export declare const store: Store;
package/cjs/store.js ADDED
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.store = void 0;
4
+ exports.store = {
5
+ devel: false,
6
+ doesLastRunPass: false,
7
+ reset() {
8
+ exports.store.completeAudio = undefined,
9
+ exports.store.doesLastRunPass = false,
10
+ exports.store.startAudio = undefined;
11
+ }
12
+ };
13
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../ts/store.ts"],"names":[],"mappings":";;;AAQa,QAAA,KAAK,GAAU;IAC1B,KAAK,EAAE,KAAK;IACZ,eAAe,EAAE,KAAK;IACtB,KAAK;QACH,aAAK,CAAC,aAAa,GAAG,SAAS;YAC/B,aAAK,CAAC,eAAe,GAAG,KAAK;YAC7B,aAAK,CAAC,UAAU,GAAG,SAAS,CAAA;IAC9B,CAAC;CACF,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jest-audio-reporter",
3
- "version": "2.2.2",
3
+ "version": "2.2.3",
4
4
  "description": "Plays audio on jest events",
5
5
  "keywords": [
6
6
  "jest",
@@ -16,15 +16,15 @@
16
16
  "url": "https://github.com/unional/jest-audio-reporter.git"
17
17
  },
18
18
  "license": "MIT",
19
- "main": "dist/index.js",
20
- "typings": "dist/index.d.ts",
19
+ "main": "cjs/index.js",
20
+ "typings": "cjs/index.d.ts",
21
21
  "files": [
22
- "dist",
22
+ "cjs",
23
23
  "ts"
24
24
  ],
25
25
  "scripts": {
26
26
  "build": "tsc -p tsconfig.base.json",
27
- "clean": "rimraf dist",
27
+ "clean": "rimraf cjs dist",
28
28
  "coverage": "jest --coverage",
29
29
  "depscheck": "run-p dependency-check:unused dependency-check:missing",
30
30
  "dependency-check": "run-p dependency-check:unused dependency-check:missing",