wdio-rerun-service 1.7.0 → 1.7.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.
@@ -5,16 +5,16 @@ name: wdio-rerun-service CI
5
5
 
6
6
  on:
7
7
  push:
8
- branches: [ master ]
8
+ branches: [ master, main ]
9
9
  pull_request:
10
- branches: [ master ]
10
+ branches: [ master, main ]
11
11
 
12
12
  jobs:
13
13
  build:
14
14
  runs-on: ubuntu-latest
15
15
  strategy:
16
16
  matrix:
17
- node-version: [12.x]
17
+ node-version: [12.x, 13.x, 14.x]
18
18
  # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
19
19
  steps:
20
20
  - uses: actions/checkout@v2
@@ -25,6 +25,7 @@ jobs:
25
25
  - run: npm ci
26
26
  - run: npm install -g eslint
27
27
  - run: npm run build --if-present
28
+ - run: npm run test
28
29
 
29
30
  build-windows:
30
31
  runs-on: windows-latest
@@ -41,3 +42,4 @@ jobs:
41
42
  - run: npm ci
42
43
  - run: npm install -g eslint
43
44
  - run: npm run build --if-present
45
+ - run: npm run test
package/CHANGELOG.md CHANGED
@@ -12,6 +12,37 @@
12
12
  _Note: Gaps between patch versions are faulty, broken or test releases._
13
13
 
14
14
  ---
15
+ ## v1.7.3 (2022-04-19)
16
+ #### :bug: Bug Fix
17
+ * [[#31]](https://github.com/jwplayer/wdio-rerun-service/pull/31) Fixing WDIO v7 status code usage ([@ccristobal-skillz](https://github.com/ccristobal-skillz))
18
+ * [[#26]](https://github.com/jwplayer/wdio-rerun-service/pull/26) Ensure element contains scenario inside filter function ([@yopasa94](https://github.com/yopasa94))
19
+
20
+ #### :nail_care: Polish
21
+ * [[#32]](https://github.com/jwplayer/wdio-rerun-service/pull/32) Update dependencies, move to fixed static versions ([@esaari](https://github.com/esaari))
22
+
23
+ #### Committers: 3
24
+ - [@ccristobal-skillz](https://github.com/ccristobal-skillz)
25
+ - [@yopasa94](https://github.com/yopasa94)
26
+ - [@esaari](https://github.com/esaari)
27
+
28
+
29
+ ## v1.7.2 (2021-06-24)
30
+
31
+ #### :nail_care: Polish
32
+ * Service release; no new features or fixes
33
+
34
+ #### Committers: 1
35
+ - [@esaari](https://github.com/esaari)
36
+
37
+ ## v1.7.1 (2021-06-24)
38
+
39
+ #### :nail_care: Polish
40
+ * [[#20]](https://github.com/jwplayer/wdio-rerun-service/pull/20) Use lockfileVersion:2 ([@esaari](https://github.com/esaari))
41
+ * [[#20]](https://github.com/jwplayer/wdio-rerun-service/pull/20) Update `package.json` URLs to reflect webdriverio-community location ([@esaari](https://github.com/esaari))
42
+ * [[#20]](https://github.com/jwplayer/wdio-rerun-service/pull/20) Dependency bumps ([@esaari](https://github.com/esaari))
43
+
44
+ #### Committers: 1
45
+ - [@esaari](https://github.com/esaari)
15
46
 
16
47
  ## v1.7.0 (2021-03-01)
17
48
 
package/LICENSE-MIT ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2021 by JW Player DBA Longtail Ad Solutions
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,9 +1,14 @@
1
1
  WebdriverIO Re-run Service
2
2
  ==========================
3
3
 
4
+ [![wdio-rerun-service CI](https://github.com/webdriverio-community/wdio-rerun-service/actions/workflows/node.js.yml/badge.svg)](https://github.com/webdriverio-community/wdio-rerun-service/actions/workflows/node.js.yml)
5
+ ![npm](https://img.shields.io/npm/dm/wdio-rerun-service)
6
+ ![npm bundle size](https://img.shields.io/bundlephobia/min/wdio-rerun-service)
7
+ ![GitHub issues](https://img.shields.io/github/issues/webdriverio-community/wdio-rerun-service)
8
+
4
9
  This service tracks failing Mocha or Jasmine tests and Cucumber scenarios executed within the [WebdriverIO](https://webdriver.io) test framework. It will allow failing or unstable tests or scenarios to be re-run.
5
10
 
6
- _NOTE_: Cucumber Framework users running WebdriverIO versions `5.x` and `6.x` should use version `1.6.0`. If you are on the latest major version of `7.x`, use the latest version of this service.
11
+ _NOTE_: Cucumber Framework users running WebdriverIO versions `5.x` and `6.x` should use version `1.6.x`. If you are on the latest major version of `7.x`, use the latest `1.7.x` version of this service.
7
12
 
8
13
  ## Re-run vs. Retry
9
14
 
@@ -27,7 +32,7 @@ The easiest way is to add `wdio-rerun-service` to `devDependencies` in your `pac
27
32
  ```json
28
33
  {
29
34
  "devDependencies": {
30
- "wdio-rerun-service": "^1.7.0"
35
+ "wdio-rerun-service": "^1.7.3"
31
36
  }
32
37
  }
33
38
  ```
@@ -45,8 +50,9 @@ After package installation is complete, add it to `services` array in `wdio.conf
45
50
  const RerunService = require('wdio-rerun-service');
46
51
  export.config = {
47
52
  // ...
48
- services: [RerunService],
49
- // ...
53
+ services: [RerunService, {
54
+ // ...
55
+ }]
50
56
  };
51
57
  ```
52
58
 
@@ -62,7 +68,7 @@ const RerunService = require('wdio-rerun-service');
62
68
  export.config = {
63
69
  // ...
64
70
  services: [
65
- [RerunService], {
71
+ [RerunService, {
66
72
  // Re-run service options here...
67
73
  }]
68
74
  ],
@@ -83,7 +89,7 @@ const RerunService = require('wdio-rerun-service');
83
89
  export.config = {
84
90
  // ...
85
91
  services: [
86
- [RerunService], {
92
+ [RerunService, {
87
93
  rerunDataDir: './custom-rerun-directory'
88
94
  }]
89
95
  ],
@@ -104,7 +110,7 @@ const RerunService = require('wdio-rerun-service');
104
110
  export.config = {
105
111
  // ...
106
112
  services: [
107
- [RerunService], {
113
+ [RerunService, {
108
114
  rerunScriptPath: './custom-path-for-rerun.sh'
109
115
  }]
110
116
  ],
@@ -125,7 +131,7 @@ const RerunService = require('wdio-rerun-service');
125
131
  export.config = {
126
132
  // ...
127
133
  services: [
128
- [RerunService], {
134
+ [RerunService, {
129
135
  ignoredTags: ['@known_bug']
130
136
  }]
131
137
  ],
@@ -146,7 +152,7 @@ const RerunService = require('wdio-rerun-service');
146
152
  export.config = {
147
153
  // ...
148
154
  services: [
149
- [RerunService], {
155
+ [RerunService, {
150
156
  commandPrefix: "VARIABLE=true"
151
157
  }]
152
158
  ],
package/babel.config.js CHANGED
@@ -1,10 +1,10 @@
1
1
  module.exports = {
2
2
  presets: [
3
- ['@babel/preset-env', {
4
- targets: {
5
- node: 8
6
- }
7
- }]
3
+ [
4
+ '@babel/preset-env',
5
+ {targets: {node: 'current'}},
6
+ "@babel/preset-typescript"
7
+ ]
8
8
  ],
9
9
  plugins: [
10
10
  '@babel/plugin-proposal-function-bind',
package/build/index.js CHANGED
@@ -1,101 +1,117 @@
1
+ "use strict";
2
+
3
+ require("source-map-support/register");
4
+
1
5
  const fs = require('fs');
6
+
2
7
  const path = require('path');
3
- const { v5: uuidv5 } = require('uuid');
8
+
9
+ const {
10
+ v5: uuidv5
11
+ } = require('uuid');
12
+
4
13
  const argv = require('minimist')(process.argv.slice(2));
5
14
 
6
15
  class RerunService {
16
+ constructor({
17
+ ignoredTags,
18
+ rerunDataDir,
19
+ rerunScriptPath,
20
+ commandPrefix
21
+ } = {}) {
22
+ this.nonPassingItems = [];
23
+ this.serviceWorkerId;
24
+ this.ignoredTags = ignoredTags ? ignoredTags : [];
25
+ this.rerunDataDir = rerunDataDir ? rerunDataDir : "./results/rerun";
26
+ this.rerunScriptPath = rerunScriptPath ? rerunScriptPath : "./rerun.sh";
27
+ this.commandPrefix = commandPrefix ? commandPrefix : "";
28
+ this.specFile = "";
29
+ }
7
30
 
8
- constructor({ ignoredTags, rerunDataDir, rerunScriptPath, commandPrefix }) {
9
- this.nonPassingItems = [];
10
- this.serviceWorkerId;
11
- this.ignoredTags = ignoredTags ? ignoredTags : [];
12
- this.rerunDataDir = rerunDataDir ? rerunDataDir : "./results/rerun";
13
- this.rerunScriptPath = rerunScriptPath ? rerunScriptPath : "./rerun.sh";
14
- this.commandPrefix = commandPrefix ? commandPrefix : "";
15
- this.specFile = "";
16
- }
31
+ before(capabilities, specs) {
32
+ this.specFile = specs[0];
33
+ fs.mkdirSync(this.rerunDataDir, {
34
+ recursive: true
35
+ });
36
+ this.serviceWorkerId = uuidv5(`${Date.now()}`, '6ba7b810-9dad-11d1-80b4-00c04fd430c8');
37
+ }
17
38
 
18
- before(capabilities, specs, browser) {
19
- this.specFile = specs[0];
20
- // console.log(`Re-run service is activated. Data directory: ${this.rerunDataDir}`);
21
- fs.mkdir(this.rerunDataDir, { recursive: true }, err => {
22
- if (err) throw err;
39
+ afterTest(test, context, {
40
+ error,
41
+ result,
42
+ duration,
43
+ passed,
44
+ retries
45
+ }) {
46
+ if (browser.config.framework !== 'cucumber' && !passed) {
47
+ if (error && error.message) {
48
+ this.nonPassingItems.push({
49
+ location: this.specFile,
50
+ failure: error.message
23
51
  });
24
- // INFO: `namespace` below copied from: https://github.com/kelektiv/node-uuid/blob/master//lib/v35.js#L54:16
25
- this.serviceWorkerId = uuidv5(`${Date.now()}`, '6ba7b810-9dad-11d1-80b4-00c04fd430c8');
52
+ } else {}
26
53
  }
54
+ }
27
55
 
28
- // Executed after a test (in Mocha/Jasmine) ends.
29
- afterTest(test, context, { error, result, duration, passed, retries }) {
30
- if (browser.config.framework !== 'cucumber' && !passed) {
31
- console.log(`Re-run service is inspecting non-passing test.`);
32
- console.log(`Test location: ${this.specFile}`);
33
- if (error && error.message) {
34
- this.nonPassingItems.push({ location: this.specFile, failure: error.message });
35
- } else {
36
- // console.log("The non-passing test did not contain any error message, it could not be added for re-run.")
37
- }
38
- }
39
- }
56
+ afterScenario(world) {
57
+ const status = world.result.status;
58
+ const scenarioLineNumber = world.gherkinDocument.feature.children.filter(child => {
59
+ if (child.scenario) {
60
+ return child.scenario && world.pickle.astNodeIds.includes(child.scenario.id.toString());
61
+ }
62
+ })[0].scenario.location.line;
40
63
 
41
- // Executed after a Cucumber scenario ends.
42
- afterScenario(world) {
43
- const CUCUMBER_STATUS_MAP = ['unknown', 'passed', 'skipped', 'pending', 'undefined', 'ambiguous', 'failed'];
44
- const status = CUCUMBER_STATUS_MAP[world.result.status || 0];
45
- const scenarioLineNumber = world.gherkinDocument.feature.children.filter(child => {
46
- return world.pickle.astNodeIds.includes(child.scenario.id);
47
- })[0].scenario.location.line;
48
-
49
- if (browser.config.framework === 'cucumber' && status !== 'passed' && status !== 'skipped') {
50
- // console.log(`Re-run service is inspecting non-passing scenario.`);
51
- const scenarioLocation = `${world.pickle.uri}:${scenarioLineNumber}`;
52
- // console.log(`Scenario location: ${scenarioLocation}`);
53
- const tagsList = world.pickle.tags.map(tag => tag.name);
54
- // console.log(`Scenario tags: ${tagsList}`);
55
- const service = this;
56
- if (this.ignoredTags && tagsList.some(ignoredTag => service.ignoredTags.includes(ignoredTag))) {
57
- // console.log(`Re-run service will ignore the current scenario since it includes one of the ignored tags: ${this.ignoredTags}`);
58
- } else {
59
- this.nonPassingItems.push({ location: scenarioLocation, failure: world.result.message });
60
- }
61
- }
62
- }
64
+ if (browser.config.framework === 'cucumber' && status !== 'PASSED' && status !== 'SKIPPED') {
65
+ const scenarioLocation = `${world.pickle.uri}:${scenarioLineNumber}`;
66
+ const tagsList = world.pickle.tags.map(tag => tag.name);
67
+ const service = this;
63
68
 
64
- after(result, capabilities, specs) {
65
- if (this.nonPassingItems.length > 0) {
66
- fs.writeFileSync(`${this.rerunDataDir}/rerun-${this.serviceWorkerId}.json`, JSON.stringify(this.nonPassingItems));
67
- } else {
68
- // console.log('Re-run service did not detect any non-passing scenarios or tests.');
69
- }
69
+ if (this.ignoredTags && tagsList.some(ignoredTag => service.ignoredTags.includes(ignoredTag))) {} else {
70
+ this.nonPassingItems.push({
71
+ location: scenarioLocation,
72
+ failure: world.result.message
73
+ });
74
+ }
70
75
  }
76
+ }
77
+
78
+ after(result, capabilities, specs) {
79
+ if (this.nonPassingItems.length > 0) {
80
+ fs.writeFileSync(`${this.rerunDataDir}/rerun-${this.serviceWorkerId}.json`, JSON.stringify(this.nonPassingItems));
81
+ } else {}
82
+ }
83
+
84
+ onComplete(exitCode, config, capabilities, results) {
85
+ const directoryPath = path.join(process.cwd(), `${this.rerunDataDir}`);
86
+
87
+ if (fs.existsSync(directoryPath)) {
88
+ const rerunFiles = fs.readdirSync(directoryPath);
71
89
 
72
- onComplete(exitCode, config, capabilities, results) {
73
- const directoryPath = path.join(process.cwd(), `${this.rerunDataDir}`);
74
- if (fs.existsSync(directoryPath)) {
75
- const rerunFiles = fs.readdirSync(directoryPath);
76
- if (rerunFiles.length > 0) {
77
- let rerunCommand = `DISABLE_RERUN=true node_modules/.bin/wdio ${argv._[0]} `;
78
- if (this.commandPrefix) {
79
- rerunCommand = `${this.commandPrefix} ${rerunCommand}`;
80
- }
81
- let failureLocations = [];
82
- rerunFiles.forEach(file => {
83
- const json = JSON.parse(fs.readFileSync(`${this.rerunDataDir}/${file}`));
84
- json.forEach(failure => {
85
- failureLocations.push(failure.location.replace(/\\/g, "/"));
86
- });
87
- });
88
- const failureLocationsUnique = [...new Set(failureLocations)];
89
- failureLocationsUnique.forEach(failureLocation => {
90
- rerunCommand += ` --spec=${failureLocation}`;
91
- });
92
- fs.writeFileSync(this.rerunScriptPath, rerunCommand);
93
- console.log(`Re-run script has been generated @ ${this.rerunScriptPath}`);
94
- }
95
- } else {
96
- console.log('Re-run service did not detect any failing tests during the entire test execution.');
90
+ if (rerunFiles.length > 0) {
91
+ let rerunCommand = `DISABLE_RERUN=true node_modules/.bin/wdio ${argv._[0]} `;
92
+
93
+ if (this.commandPrefix) {
94
+ rerunCommand = `${this.commandPrefix} ${rerunCommand}`;
97
95
  }
96
+
97
+ let failureLocations = [];
98
+ rerunFiles.forEach(file => {
99
+ const json = JSON.parse(fs.readFileSync(`${this.rerunDataDir}/${file}`));
100
+ json.forEach(failure => {
101
+ failureLocations.push(failure.location.replace(/\\/g, "/"));
102
+ });
103
+ });
104
+ const failureLocationsUnique = [...new Set(failureLocations)];
105
+ failureLocationsUnique.forEach(failureLocation => {
106
+ rerunCommand += ` --spec=${failureLocation}`;
107
+ });
108
+ fs.writeFileSync(this.rerunScriptPath, rerunCommand);
109
+ }
98
110
  }
111
+ }
112
+
99
113
  }
100
114
 
101
- module.exports = RerunService;
115
+ ;
116
+ module.exports = RerunService;
117
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJmcyIsInJlcXVpcmUiLCJwYXRoIiwidjUiLCJ1dWlkdjUiLCJhcmd2IiwicHJvY2VzcyIsInNsaWNlIiwiUmVydW5TZXJ2aWNlIiwiY29uc3RydWN0b3IiLCJpZ25vcmVkVGFncyIsInJlcnVuRGF0YURpciIsInJlcnVuU2NyaXB0UGF0aCIsImNvbW1hbmRQcmVmaXgiLCJub25QYXNzaW5nSXRlbXMiLCJzZXJ2aWNlV29ya2VySWQiLCJzcGVjRmlsZSIsImJlZm9yZSIsImNhcGFiaWxpdGllcyIsInNwZWNzIiwibWtkaXJTeW5jIiwicmVjdXJzaXZlIiwiRGF0ZSIsIm5vdyIsImFmdGVyVGVzdCIsInRlc3QiLCJjb250ZXh0IiwiZXJyb3IiLCJyZXN1bHQiLCJkdXJhdGlvbiIsInBhc3NlZCIsInJldHJpZXMiLCJicm93c2VyIiwiY29uZmlnIiwiZnJhbWV3b3JrIiwibWVzc2FnZSIsInB1c2giLCJsb2NhdGlvbiIsImZhaWx1cmUiLCJhZnRlclNjZW5hcmlvIiwid29ybGQiLCJzdGF0dXMiLCJzY2VuYXJpb0xpbmVOdW1iZXIiLCJnaGVya2luRG9jdW1lbnQiLCJmZWF0dXJlIiwiY2hpbGRyZW4iLCJmaWx0ZXIiLCJjaGlsZCIsInNjZW5hcmlvIiwicGlja2xlIiwiYXN0Tm9kZUlkcyIsImluY2x1ZGVzIiwiaWQiLCJ0b1N0cmluZyIsImxpbmUiLCJzY2VuYXJpb0xvY2F0aW9uIiwidXJpIiwidGFnc0xpc3QiLCJ0YWdzIiwibWFwIiwidGFnIiwibmFtZSIsInNlcnZpY2UiLCJzb21lIiwiaWdub3JlZFRhZyIsImFmdGVyIiwibGVuZ3RoIiwid3JpdGVGaWxlU3luYyIsIkpTT04iLCJzdHJpbmdpZnkiLCJvbkNvbXBsZXRlIiwiZXhpdENvZGUiLCJyZXN1bHRzIiwiZGlyZWN0b3J5UGF0aCIsImpvaW4iLCJjd2QiLCJleGlzdHNTeW5jIiwicmVydW5GaWxlcyIsInJlYWRkaXJTeW5jIiwicmVydW5Db21tYW5kIiwiXyIsImZhaWx1cmVMb2NhdGlvbnMiLCJmb3JFYWNoIiwiZmlsZSIsImpzb24iLCJwYXJzZSIsInJlYWRGaWxlU3luYyIsInJlcGxhY2UiLCJmYWlsdXJlTG9jYXRpb25zVW5pcXVlIiwiU2V0IiwiZmFpbHVyZUxvY2F0aW9uIiwibW9kdWxlIiwiZXhwb3J0cyJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE1BQU1BLEVBQUUsR0FBR0MsT0FBTyxDQUFDLElBQUQsQ0FBbEI7O0FBQ0EsTUFBTUMsSUFBSSxHQUFHRCxPQUFPLENBQUMsTUFBRCxDQUFwQjs7QUFDQSxNQUFNO0FBQUVFLEVBQUFBLEVBQUUsRUFBRUM7QUFBTixJQUFpQkgsT0FBTyxDQUFDLE1BQUQsQ0FBOUI7O0FBRUEsTUFBTUksSUFBSSxHQUFHSixPQUFPLENBQUMsVUFBRCxDQUFQLENBQW9CSyxPQUFPLENBQUNELElBQVIsQ0FBYUUsS0FBYixDQUFtQixDQUFuQixDQUFwQixDQUFiOztBQUVBLE1BQU1DLFlBQU4sQ0FBbUI7QUFFZkMsRUFBQUEsV0FBVyxDQUFDO0FBQUVDLElBQUFBLFdBQUY7QUFBZUMsSUFBQUEsWUFBZjtBQUE2QkMsSUFBQUEsZUFBN0I7QUFBOENDLElBQUFBO0FBQTlDLE1BQWdFLEVBQWpFLEVBQXFFO0FBQzVFLFNBQUtDLGVBQUwsR0FBdUIsRUFBdkI7QUFDQSxTQUFLQyxlQUFMO0FBQ0EsU0FBS0wsV0FBTCxHQUFtQkEsV0FBVyxHQUFHQSxXQUFILEdBQWlCLEVBQS9DO0FBQ0EsU0FBS0MsWUFBTCxHQUFvQkEsWUFBWSxHQUFHQSxZQUFILEdBQWtCLGlCQUFsRDtBQUNBLFNBQUtDLGVBQUwsR0FBdUJBLGVBQWUsR0FBR0EsZUFBSCxHQUFxQixZQUEzRDtBQUNBLFNBQUtDLGFBQUwsR0FBcUJBLGFBQWEsR0FBR0EsYUFBSCxHQUFtQixFQUFyRDtBQUNBLFNBQUtHLFFBQUwsR0FBZ0IsRUFBaEI7QUFDSDs7QUFFREMsRUFBQUEsTUFBTSxDQUFDQyxZQUFELEVBQWVDLEtBQWYsRUFBc0I7QUFDeEIsU0FBS0gs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T0FBakIsQ0FBeUIsS0FBekIsRUFBZ0MsR0FBaEMsQ0FBdEI7QUFDSCxXQUZEO0FBR0gsU0FMRDtBQU1BLGNBQU1DLHNCQUFzQixHQUFHLENBQUMsR0FBRyxJQUFJQyxHQUFKLENBQVFSLGdCQUFSLENBQUosQ0FBL0I7QUFDQU8sUUFBQUEsc0JBQXNCLENBQUNOLE9BQXZCLENBQStCUSxlQUFlLElBQUk7QUFDOUNYLFVBQUFBLFlBQVksSUFBSyxXQUFVVyxlQUFnQixFQUEzQztBQUNILFNBRkQ7QUFHQTFGLFFBQUFBLEVBQUUsQ0FBQ21FLGFBQUgsQ0FBaUIsS0FBS3ZELGVBQXRCLEVBQXVDbUUsWUFBdkM7QUFFSDtBQUNKO0FBQ0o7O0FBeEZjOztBQXlGbEI7QUFFRFksTUFBTSxDQUFDQyxPQUFQLEdBQWlCcEYsWUFBakIiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBmcyA9IHJlcXVpcmUoJ2ZzJyk7XG5jb25zdCBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuY29uc3QgeyB2NTogdXVpZHY1IH0gPSByZXF1aXJlKCd1dWlkJyk7XG5cbmNvbnN0IGFyZ3YgPSByZXF1aXJlKCdtaW5pbWlzdCcpKHByb2Nlc3MuYXJndi5zbGljZSgyKSk7XG5cbmNsYXNzIFJlcnVuU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcih7IGlnbm9yZWRUYWdzLCByZXJ1bkRhdGFEaXIsIHJlcnVuU2NyaXB0UGF0aCwgY29tbWFuZFByZWZpeCB9ID0ge30pIHtcbiAgICAgICAgdGhpcy5ub25QYXNzaW5nSXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5zZXJ2aWNlV29ya2VySWQ7XG4gICAgICAgIHRoaXMuaWdub3JlZFRhZ3MgPSBpZ25vcmVkVGFncyA/IGlnbm9yZWRUYWdzIDogW107XG4gICAgICAgIHRoaXMucmVydW5EYXRhRGlyID0gcmVydW5EYXRhRGlyID8gcmVydW5EYXRhRGlyIDogXCIuL3Jlc3VsdHMvcmVydW5cIjtcbiAgICAgICAgdGhpcy5yZXJ1blNjcmlwdFBhdGggPSByZXJ1blNjcmlwdFBhdGggPyByZXJ1blNjcmlwdFBhdGggOiBcIi4vcmVydW4uc2hcIjtcbiAgICAgICAgdGhpcy5jb21tYW5kUHJlZml4ID0gY29tbWFuZFByZWZpeCA/IGNvbW1hbmRQcmVmaXggOiBcIlwiO1xuICAgICAgICB0aGlzLnNwZWNGaWxlID0gXCJcIjtcbiAgICB9XG5cbiAgICBiZWZvcmUoY2FwYWJpbGl0aWVzLCBzcGVjcykge1xuICAgICAgICB0aGlzLnNwZWNGaWxlID0gc3BlY3NbMF07XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGBSZS1ydW4gc2VydmljZSBpcyBhY3RpdmF0ZWQuIERhdGEgZGlyZWN0b3J5OiAke3RoaXMucmVydW5EYXRhRGlyfWApO1xuICAgICAgICBmcy5ta2RpclN5bmModGhpcy5yZXJ1bkRhdGFEaXIsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgICAgICAvLyBJTkZPOiBgbmFtZXNwYWNlYCBiZWxvdyBjb3BpZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL2tlbGVrdGl2L25vZGUtdXVpZC9ibG9iL21hc3Rlci8vbGliL3YzNS5qcyNMNTQ6MTZcbiAgICAgICAgdGhpcy5zZXJ2aWNlV29ya2VySWQgPSB1dWlkdjUoYCR7RGF0ZS5ub3coKX1gLCAnNmJhN2I4MTAtOWRhZC0xMWQxLTgwYjQtMDBjMDRmZDQzMGM4Jyk7XG4gICAgfVxuXG4gICAgYWZ0ZXJUZXN0KHRlc3QsIGNvbnRleHQsIHsgZXJyb3IsIHJlc3VsdCwgZHVyYXRpb24sIHBhc3NlZCwgcmV0cmllcyB9KSB7XG4gICAgICAgIGlmIChicm93c2VyLmNvbmZpZy5mcmFtZXdvcmsgIT09ICdjdWN1bWJlcicgJiYgIXBhc3NlZCkge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coYFJlLXJ1biBzZXJ2aWNlIGlzIGluc3BlY3Rpbmcgbm9uLXBhc3NpbmcgdGVzdC5gKTtcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBUZXN0IGxvY2F0aW9uOiAke3RoaXMuc3BlY0ZpbGV9YCk7XG4gICAgICAgICAgICBpZiAoZXJyb3IgJiYgZXJyb3IubWVzc2FnZSkge1xuICAgICAgICAgICAgICAgIHRoaXMubm9uUGFzc2luZ0l0ZW1zLnB1c2goeyBsb2NhdGlvbjogdGhpcy5zcGVjRmlsZSwgZmFpbHVyZTogZXJyb3IubWVzc2FnZSB9KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gY29uc29sZS5sb2coXCJUaGUgbm9uLXBhc3NpbmcgdGVzdCBkaWQgbm90IGNvbnRhaW4gYW55IGVycm9yIG1lc3NhZ2UsIGl0IGNvdWxkIG5vdCBiZSBhZGRlZCBmb3IgcmUtcnVuLlwiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhlY3V0ZWQgYWZ0ZXIgYSBDdWN1bWJlciBzY2VuYXJpbyBlbmRzLlxuICAgIGFmdGVyU2NlbmFyaW8od29ybGQpIHtcbiAgICAgICAgY29uc3Qgc3RhdHVzID0gd29ybGQucmVzdWx0LnN0YXR1cztcbiAgICAgICAgY29uc3Qgc2NlbmFyaW9MaW5lTnVtYmVyID0gd29ybGQuZ2hlcmtpbkRvY3VtZW50LmZlYXR1cmUuY2hpbGRyZW4uZmlsdGVyKChjaGlsZCkgPT4ge1xuICAgICAgICAgICAgaWYoY2hpbGQuc2NlbmFyaW8pe1xuICAgICAgICAgICAgICAgIHJldHVybiBjaGlsZC5zY2VuYXJpbyAmJiB3b3JsZC5waWNrbGUuYXN0Tm9kZUlkcy5pbmNsdWRlcyhjaGlsZC5zY2VuYXJpby5pZC50b1N0cmluZygpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlbMF0uc2NlbmFyaW8ubG9jYXRpb24ubGluZTtcblxuICAgICAgICBpZiAoYnJvd3Nlci5jb25maWcuZnJhbWV3b3JrID09PSAnY3VjdW1iZXInICYmIChzdGF0dXMgIT09ICdQQVNTRUQnICYmIHN0YXR1cyAhPT0gJ1NLSVBQRUQnKSkge1xuICAgICAgICAgICAgLy8gY29uc29sZS5sb2coYFJlLXJ1biBzZXJ2aWNlIGlzIGluc3BlY3Rpbmcgbm9uLXBhc3Npbmcgc2NlbmFyaW8uYCk7XG4gICAgICAgICAgICBjb25zdCBzY2VuYXJpb0xvY2F0aW9uID0gYCR7d29ybGQucGlja2xlLnVyaX06JHtzY2VuYXJpb0xpbmVOdW1iZXJ9YDtcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBTY2VuYXJpbyBsb2NhdGlvbjogJHtzY2VuYXJpb0xvY2F0aW9ufWApO1xuICAgICAgICAgICAgY29uc3QgdGFnc0xpc3QgPSB3b3JsZC5waWNrbGUudGFncy5tYXAodGFnID0+IHRhZy5uYW1lKTtcbiAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBTY2VuYXJpbyB0YWdzOiAke3RhZ3NMaXN0fWApO1xuICAgICAgICAgICAgY29uc3Qgc2VydmljZSA9IHRoaXM7XG4gICAgICAgICAgICBpZiAodGhpcy5pZ25vcmVkVGFncyAmJiB0YWdzTGlzdC5zb21lKGlnbm9yZWRUYWcgPT4gc2VydmljZS5pZ25vcmVkVGFncy5pbmNsdWRlcyhpZ25vcmVkVGFnKSkpIHtcbiAgICAgICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhgUmUtcnVuIHNlcnZpY2Ugd2lsbCBpZ25vcmUgdGhlIGN1cnJlbnQgc2NlbmFyaW8gc2luY2UgaXQgaW5jbHVkZXMgb25lIG9mIHRoZSBpZ25vcmVkIHRhZ3M6ICR7dGhpcy5pZ25vcmVkVGFnc31gKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ub25QYXNzaW5nSXRlbXMucHVzaCh7IGxvY2F0aW9uOiBzY2VuYXJpb0xvY2F0aW9uLCBmYWlsdXJlOiB3b3JsZC5yZXN1bHQubWVzc2FnZSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFmdGVyKHJlc3VsdCwgY2FwYWJpbGl0aWVzLCBzcGVjcykge1xuICAgICAgICBpZiAodGhpcy5ub25QYXNzaW5nSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgZnMud3JpdGVGaWxlU3luYyhgJHt0aGlzLnJlcnVuRGF0YURpcn0vcmVydW4tJHt0aGlzLnNlcnZpY2VXb3JrZXJJZH0uanNvbmAsIEpTT04uc3RyaW5naWZ5KHRoaXMubm9uUGFzc2luZ0l0ZW1zKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnUmUtcnVuIHNlcnZpY2UgZGlkIG5vdCBkZXRlY3QgYW55IG5vbi1wYXNzaW5nIHNjZW5hcmlvcyBvciB0ZXN0cy4nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ29tcGxldGUoZXhpdENvZGUsIGNvbmZpZywgY2FwYWJpbGl0aWVzLCByZXN1bHRzKSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdG9yeVBhdGggPSBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgYCR7dGhpcy5yZXJ1bkRhdGFEaXJ9YCk7XG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKGRpcmVjdG9yeVBhdGgpKSB7XG4gICAgICAgICAgICBjb25zdCByZXJ1bkZpbGVzID0gZnMucmVhZGRpclN5bmMoZGlyZWN0b3J5UGF0aCk7XG4gICAgICAgICAgICBpZiAocmVydW5GaWxlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgbGV0IHJlcnVuQ29tbWFuZCA9IGBESVNBQkxFX1JFUlVOPXRydWUgbm9kZV9tb2R1bGVzLy5iaW4vd2RpbyAke2FyZ3YuX1swXX0gYDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb21tYW5kUHJlZml4KSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcnVuQ29tbWFuZCA9IGAke3RoaXMuY29tbWFuZFByZWZpeH0gJHtyZXJ1bkNvbW1hbmR9YDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGV0IGZhaWx1cmVMb2NhdGlvbnMgPSBbXTtcbiAgICAgICAgICAgICAgICByZXJ1bkZpbGVzLmZvckVhY2goZmlsZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGpzb24gPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhgJHt0aGlzLnJlcnVuRGF0YURpcn0vJHtmaWxlfWApKTtcbiAgICAgICAgICAgICAgICAgICAganNvbi5mb3JFYWNoKGZhaWx1cmUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmFpbHVyZUxvY2F0aW9ucy5wdXNoKGZhaWx1cmUubG9jYXRpb24ucmVwbGFjZSgvXFxcXC9nLCBcIi9cIikpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBmYWlsdXJlTG9jYXRpb25zVW5pcXVlID0gWy4uLm5ldyBTZXQoZmFpbHVyZUxvY2F0aW9ucyldO1xuICAgICAgICAgICAgICAgIGZhaWx1cmVMb2NhdGlvbnNVbmlxdWUuZm9yRWFjaChmYWlsdXJlTG9jYXRpb24gPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXJ1bkNvbW1hbmQgKz0gYCAtLXNwZWM9JHtmYWlsdXJlTG9jYXRpb259YDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBmcy53cml0ZUZpbGVTeW5jKHRoaXMucmVydW5TY3JpcHRQYXRoLCByZXJ1bkNvbW1hbmQpO1xuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKGBSZS1ydW4gc2NyaXB0IGhhcyBiZWVuIGdlbmVyYXRlZCBAICR7dGhpcy5yZXJ1blNjcmlwdFBhdGh9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IFJlcnVuU2VydmljZTtcbiJdfQ==
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "wdio-rerun-service",
3
- "version": "1.7.0",
3
+ "version": "1.7.3",
4
4
  "description": "A WebdriverIO service to track and prepare for re-running failing or flaky Jasmine/Mocha tests or Cucumber Scenarios.",
5
5
  "author": "Mike Salvia <msalvia@jwplayer.com>",
6
- "homepage": "https://github.com/jwplayer/wdio-rerun-service",
7
- "license": "Apache-2.0",
6
+ "homepage": "https://github.com/webdriverio-community/wdio-rerun-service",
7
+ "license": "MIT",
8
8
  "main": "./build/index",
9
9
  "engines": {
10
10
  "node": ">=12.0.0"
@@ -12,18 +12,19 @@
12
12
  "scripts": {
13
13
  "build": "run-s clean compile",
14
14
  "clean": "rimraf ./build",
15
- "compile": "babel src/ -d build/ --config-file ../../babel.config.js",
15
+ "compile": "babel src/ -d build/ --config-file ./babel.config.js",
16
16
  "watch": "npm-watch",
17
17
  "test": "run-s test:*",
18
+ "test:clean": "rimraf ./results ./coverage rerun.sh",
18
19
  "test:eslint": "eslint src tests",
19
- "test:unit": "jest"
20
+ "test:unit": "jest --collectCoverageFrom='[\"src/**/*.{js,jsx,ts,tsx}\"]' --coverage --collectCoverage=true --forceExit --detectOpenHandles tests/.*test.*"
20
21
  },
21
22
  "watch": {
22
23
  "build": "{src,tests}/*.js"
23
24
  },
24
25
  "repository": {
25
26
  "type": "git",
26
- "url": "git://github.com/jwplayer/wdio-rerun-service.git"
27
+ "url": "git://github.com/webdriverio-community/wdio-rerun-service.git"
27
28
  },
28
29
  "keywords": [
29
30
  "webdriver",
@@ -31,44 +32,54 @@
31
32
  "wdio",
32
33
  "wdio-service",
33
34
  "rerun",
35
+ "re-run",
34
36
  "retry",
37
+ "test",
35
38
  "tests",
36
39
  "scenario",
37
40
  "cucumber",
38
41
  "mocha",
39
42
  "jasmine",
40
43
  "flaky",
41
- "selenium"
44
+ "selenium",
45
+ "node",
46
+ "automation",
47
+ "javascript"
42
48
  ],
43
49
  "bugs": {
44
- "url": "https://github.com/jwplayer/wdio-rerun-service/issues"
50
+ "url": "https://github.com/webdriverio-community/wdio-rerun-service/issues"
45
51
  },
46
52
  "dependencies": {
47
- "@wdio/logger": "7.0.0",
48
- "minimist": "^1.2.5",
49
- "npm-watch": "^0.7.0",
50
- "uuid": "^8.3.0"
53
+ "@wdio/logger": "7.19.0",
54
+ "minimist": "1.2.6",
55
+ "npm-watch": "0.11.0",
56
+ "uuid": "8.3.2"
51
57
  },
52
58
  "peerDependencies": {},
53
59
  "publishConfig": {
54
60
  "access": "public"
55
61
  },
56
62
  "devDependencies": {
57
- "@babel/cli": "^7.6.2",
58
- "@babel/core": "^7.6.2",
59
- "@babel/node": "^7.6.2",
60
- "@babel/plugin-proposal-class-properties": "^7.5.5",
61
- "@babel/plugin-proposal-function-bind": "^7.2.0",
62
- "@babel/plugin-proposal-optional-catch-binding": "^7.2.0",
63
- "@babel/plugin-syntax-export-default-from": "^7.2.0",
64
- "@babel/preset-env": "^7.6.2",
65
- "@babel/register": "^7.6.2",
66
- "babel-cli": "^6.26.0",
67
- "babel-core": "^6.26.3",
68
- "babel-eslint": "^10.0.3",
69
- "babel-jest": "^26.0.1",
70
- "babel-plugin-source-map-support": "^2.1.1",
71
- "npm-run-all": "^4.1.5",
72
- "rimraf": "^3.0.2"
63
+ "@babel/cli": "7.17.6",
64
+ "@babel/core": "7.17.9",
65
+ "@babel/node": "7.16.8",
66
+ "@babel/plugin-proposal-class-properties": "7.16.7",
67
+ "@babel/plugin-proposal-function-bind": "7.16.7",
68
+ "@babel/plugin-proposal-optional-catch-binding": "7.16.7",
69
+ "@babel/plugin-syntax-export-default-from": "7.16.7",
70
+ "@babel/preset-env": "7.16.11",
71
+ "@babel/register": "7.17.7",
72
+ "@typescript-eslint/eslint-plugin": "5.20.0",
73
+ "@typescript-eslint/parser": "5.20.0",
74
+ "babel-cli": "6.26.0",
75
+ "babel-core": "6.26.3",
76
+ "babel-eslint": "10.1.0",
77
+ "babel-jest": "27.5.1",
78
+ "babel-plugin-source-map-support": "2.1.3",
79
+ "eslint": "8.13.0",
80
+ "jest": "27.5.1",
81
+ "npm-run-all": "4.1.5",
82
+ "rimraf": "3.0.2",
83
+ "typescript": "4.6.3"
73
84
  }
74
85
  }