Skip to content

Commit 130d797

Browse files
committed
Revert "fix: something"
This reverts commit ca534ee.
1 parent ca534ee commit 130d797

18 files changed

+48
-68
lines changed

bin/codecept.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ const errorHandler = (fn) => async (...args) => {
3131
};
3232

3333
if (process.versions.node && process.versions.node.split('.') && process.versions.node.split('.')[0] < 12) {
34-
outputLib.output.error('NodeJS >= 12 is required to run.');
34+
outputLib.output.output.error('NodeJS >= 12 is required to run.');
3535
outputLib.print();
3636
outputLib.print('Please upgrade your NodeJS engine');
3737
outputLib.print(`Current NodeJS version: ${process.version}`);

lib/ai.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
import { Configuration, OpenAIApi } from 'openai';
2-
import createDebugMessages from 'debug';
2+
import debug from 'debug';
33
import config from './config.js';
44
import * as output from './output.js';
55
import { removeNonInteractiveElements, minifyHtml, splitByChunks } from './html.js';
66

7-
const debug = createDebugMessages('codeceptjs');
8-
97
debug('codeceptjs:ai');
108

119
const defaultConfig = {

lib/codecept.js

+1-4
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,6 @@ import listener01234 from './listener/timeout.js';
4343

4444
import listener012345 from './listener/exit.js';
4545

46-
import 'chai/register-assert.js';
47-
import 'chai/register-expect.js';
48-
4946
const __dirname = dirname(fileURLToPath(import.meta.url));
5047
const require = createRequire(import.meta.url);
5148

@@ -121,7 +118,7 @@ export default class Codecept {
121118
global.inject = container.support;
122119
global.share = container.share;
123120
global.secret = secret;
124-
global.codecept_debug = output.output.debug;
121+
global.codecept_debug = output.debug;
125122
global.codeceptjs = index; // load all objects
126123
global.Given = stepDefinitions.Given;
127124
global.When = stepDefinitions.When;

lib/container.js

+1-5
Original file line numberDiff line numberDiff line change
@@ -175,11 +175,7 @@ function createHelpers(config) {
175175
// check if the helper is the built-in, use the require() syntax.
176176
if (moduleName.startsWith('./helper/')) {
177177
const __dirname = dirname(fileURLToPath(import.meta.url));
178-
try {
179-
HelperClass = importSync(path.resolve(__dirname, moduleName)).default;
180-
} catch (e) {
181-
HelperClass = importSync(path.resolve(__dirname, moduleName));
182-
}
178+
HelperClass = importSync(path.resolve(__dirname, moduleName)).default;
183179
} else {
184180
// check if the new syntax export default HelperName is used and loads the Helper, otherwise loads the module that used old syntax export = HelperName.
185181
HelperClass = importSync(path.resolve(moduleName)).default;

lib/event.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
import createDebugMessages from 'debug';
1+
import debug from 'debug';
22

33
import events from 'events';
44
import * as output from './output.js';
55

6-
const debug = createDebugMessages('codeceptjs');
7-
86
debug('codeceptjs:event');
97

108
const dispatcher = new events.EventEmitter();

lib/helper/Expect.js

+6-5
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
1+
import { expect } from 'chai';
2+
import * as chai from 'chai';
13
import chai_json_schema from 'chai-json-schema';
24
import chai_match_pattern from 'chai-match-pattern';
35
import chai_exclude from 'chai-exclude';
46
import chai_string from 'chai-string';
5-
import { expect, use } from 'chai';
67
import * as output from '../output.js';
78

8-
use(chai_string);
9+
chai.use(chai_string);
910
// @ts-ignore
10-
use(chai_exclude);
11-
use(chai_match_pattern);
12-
use(chai_json_schema);
11+
chai.use(chai_exclude);
12+
chai.use(chai_match_pattern);
13+
chai.use(chai_json_schema);
1314

1415
/**
1516
* This helper allows performing assertions based on Chai.

lib/interfaces/gherkin.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import * as Gherkin from '@cucumber/gherkin';
22
import * as Messages from '@cucumber/messages';
33
import { Context, Suite, Test } from 'mocha';
44

5-
import createDebugMessages from 'debug';
5+
import debug from 'debug';
66

77
import { matchStep } from './bdd.js';
88
import * as event from '../event.js';
@@ -13,8 +13,6 @@ import transform from '../transform.js';
1313

1414
import translations0 from '../translation.js';
1515

16-
const debug = createDebugMessages('codeceptjs');
17-
1816
debug('codeceptjs:bdd');
1917

2018
const uuidFn = Messages.IdGenerator.uuid();

lib/listener/steps.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
import createDebugMessages from 'debug';
1+
import debug from 'debug';
22
import * as event from '../event.js';
33
import { store } from '../store.js';
44
import * as output from '../output.js';
55

6-
const debug = createDebugMessages('codeceptjs');
7-
86
debug('codeceptjs:steps');
97

108
let currentTest;

lib/pause.js

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import colors from 'chalk';
22
import readline from 'readline';
33
import ora from 'ora-classic';
4-
import createDebugMessages from 'debug';
4+
import debug from 'debug';
55

66
import container from './container.js';
77
import history from './history.js';
@@ -12,8 +12,6 @@ import * as event from './event.js';
1212
import * as output from './output.js';
1313
import { methodsOfObject } from './utils.js';
1414

15-
const debug = createDebugMessages('codeceptjs');
16-
1715
debug('codeceptjs:pause');
1816

1917
// npm install colors

lib/plugin/autoLogin.js

+7-7
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { fileExists, isAsyncFunction } from '../utils.js';
44
import container from '../container.js';
55
import { store } from '../store.js';
66
import recorder from '../recorder.js';
7-
import * as output from '../output.js';
7+
import { debug } from '../output.js';
88

99
const defaultUser = {
1010
fetch: I => I.grabCookie(),
@@ -267,7 +267,7 @@ export default function (config) {
267267
} catch (err) {
268268
throw new Error(`Could not load session from ${fileName}\n${err}`);
269269
}
270-
output.output.debug(`Loaded user session for ${name}`);
270+
debug(`Loaded user session for ${name}`);
271271
}
272272
}
273273

@@ -288,11 +288,11 @@ export default function (config) {
288288

289289
const cookies = await userSession.fetch(I);
290290
if (!cookies) {
291-
output.output.debug('Cannot save user session with empty cookies from auto login\'s fetch method');
291+
debug('Cannot save user session with empty cookies from auto login\'s fetch method');
292292
return;
293293
}
294294
if (config.saveToFile) {
295-
output.output.debug(`Saved user session into file for ${name}`);
295+
debug(`Saved user session into file for ${name}`);
296296
fs.writeFileSync(path.join(global.output_dir, `${name}_session.json`), JSON.stringify(cookies));
297297
}
298298
store[`${name}_session`] = cookies;
@@ -309,12 +309,12 @@ export default function (config) {
309309
userSession.check(I, cookies);
310310
}
311311
recorder.session.catch((err) => {
312-
output.output.debug(`Failed auto login for ${name} due to ${err}`);
313-
output.output.debug('Logging in again');
312+
debug(`Failed auto login for ${name} due to ${err}`);
313+
debug('Logging in again');
314314
recorder.session.start('auto login');
315315
return loginAndSave().then(() => {
316316
recorder.add(() => recorder.session.restore('auto login'));
317-
recorder.catch(() => output.output.debug('continue'));
317+
recorder.catch(() => debug('continue'));
318318
}).catch((err) => {
319319
recorder.session.restore('auto login');
320320
recorder.session.restore('check login');

lib/plugin/coverage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ export default function (config) {
7979
const options = Object.assign(defaultConfig, helper.options, config);
8080

8181
event.dispatcher.on(event.all.before, async () => {
82-
output.output.debug('*** Collecting coverage for tests ****');
82+
output.debug('*** Collecting coverage for tests ****');
8383
});
8484

8585
// Hack! we're going to try to "start" coverage before each step because this is

lib/plugin/heal.js

+4-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import createDebugMessages from 'debug';
1+
import debug from 'debug';
22
import colors from 'chalk';
33
import Container from '../container.js';
44
import AiAssistant from '../ai';
@@ -7,8 +7,6 @@ import * as event from '../event.js';
77
import * as output from '../output.js';
88
import supportedHelpers from './standardActingHelpers.js';
99

10-
const debug = createDebugMessages('codeceptjs');
11-
1210
debug('codeceptjs:heal');
1311

1412
const defaultConfig = {
@@ -176,11 +174,11 @@ export default function (config = {}) {
176174
});
177175

178176
async function tryToHeal(failedStep, err) {
179-
output.output.debug(`Running OpenAI to heal ${failedStep.toCode()} step`);
177+
output.debug(`Running OpenAI to heal ${failedStep.toCode()} step`);
180178

181179
const codeSnippets = await aiAssistant.healFailedStep(failedStep, err, currentTest);
182180

183-
output.output.debug(`Received ${codeSnippets.length} suggestions from OpenAI`);
181+
output.debug(`Received ${codeSnippets.length} suggestions from OpenAI`);
184182
const I = Container.support('I'); // eslint-disable-line
185183

186184
for (const codeSnippet of codeSnippets) {
@@ -207,7 +205,7 @@ export default function (config = {}) {
207205
}
208206
}
209207

210-
output.output.debug(`Couldn't heal the code for ${failedStep.toCode()}`);
208+
output.debug(`Couldn't heal the code for ${failedStep.toCode()}`);
211209
}
212210
return recorder.promise();
213211
}

lib/plugin/selenoid.js

+12-12
Original file line numberDiff line numberDiff line change
@@ -212,20 +212,20 @@ const selenoid = (config) => {
212212
if (autoStart) {
213213
event.dispatcher.on(event.all.before, () => {
214214
recorder.add('Starting selenoid', () => {
215-
output.output.debug('Staring Selenoid... ');
215+
output.debug('Staring Selenoid... ');
216216
return createAndStart(autoCreate)
217-
.then(() => output.output.debug('Selenoid started'))
217+
.then(() => output.debug('Selenoid started'))
218218
.catch((err) => { throw new Error(err.stack); });
219219
});
220220
});
221221

222222
event.dispatcher.on(event.all.after, () => {
223223
recorder.add('Stopping selenoid', () => {
224-
output.output.debug('Stopping Selenoid...');
224+
output.debug('Stopping Selenoid...');
225225
return wait(SELENOID_STOP_TIMEOUT)
226226
.then(() => deletePassedTests(passedTests))
227227
.then(stopSelenoid)
228-
.then(() => output.output.debug('Selenoid stopped'))
228+
.then(() => output.debug('Selenoid stopped'))
229229
.catch((err) => { throw new Error(err.stack); });
230230
});
231231
});
@@ -263,7 +263,7 @@ export default selenoid;
263263
function videoSaved(test) {
264264
const fileName = `${clearString(test.title)}.mp4`;
265265
const videoFile = path.join(global.output_dir, 'video', fileName);
266-
output.output.debug(`Video has been saved to file://${videoFile}`);
266+
output.debug(`Video has been saved to file://${videoFile}`);
267267
const allureReporter = container.plugins('allure');
268268
if (allureReporter) {
269269
allureReporter.addAttachment('Video', fs.readFileSync(videoFile), 'video/mp4');
@@ -305,21 +305,21 @@ const pullImage = async () => {
305305

306306
console.time('Pulled containers');
307307
if (!stdout.includes('selenoid/video-recorder')) {
308-
output.output.debug('Pulling selenoid/video-recorder...');
308+
output.debug('Pulling selenoid/video-recorder...');
309309
resultPromise = exec('docker pull selenoid/video-recorder:latest-release')
310-
.then(() => output.output.debug('Pulled in selenoid/video-recorder'));
310+
.then(() => output.debug('Pulled in selenoid/video-recorder'));
311311
pulls.push(resultPromise);
312312
}
313313
if (!stdout.includes('selenoid/chrome')) {
314-
output.output.debug('Pulling selenoid/chrome...');
314+
output.debug('Pulling selenoid/chrome...');
315315
resultPromise = exec('docker pull selenoid/chrome:latest')
316-
.then(() => output.output.debug('Pulled in selenoid/video-recorder'));
316+
.then(() => output.debug('Pulled in selenoid/video-recorder'));
317317
pulls.push(resultPromise);
318318
}
319319
if (!stdout.includes('selenoid/firefox')) {
320-
output.output.debug('Pulling selenoid/firefox...');
320+
output.debug('Pulling selenoid/firefox...');
321321
resultPromise = exec('docker pull selenoid/firefox:latest')
322-
.then(() => output.output.debug('Pulled in selenoid/chrome'));
322+
.then(() => output.debug('Pulled in selenoid/chrome'));
323323
pulls.push(resultPromise);
324324
}
325325

@@ -338,7 +338,7 @@ function deletePassedTests(passedTests) {
338338
const deleteLogPromiseList = passedTests.map(clearString).map(test => axios.delete(`${seleniumUrl}/logs/${test}.log`));
339339

340340
return Promise.all(deleteVideoPromiseList.concat(deleteLogPromiseList))
341-
.then(() => output.output.debug('Deleted videos and logs for all passed tests'))
341+
.then(() => output.debug('Deleted videos and logs for all passed tests'))
342342
.catch(err => output.output.error(`Error while deleting video and log files ${err.stack}`));
343343
}
344344

lib/plugin/wdio.js

+3-5
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
import createDebugMessages from 'debug';
1+
import debug from 'debug';
22

33
import container from '../container.js';
44
import mainConfig from '../config.js';
55
import recorder from '../recorder.js';
66
import * as event from '../event.js';
77
import * as output from '../output.js';
88

9-
const debug = createDebugMessages('codeceptjs');
10-
119
debug('codeceptjs:plugin:wdio');
1210

1311
const defaultConfig = {
@@ -220,7 +218,7 @@ export default (config) => {
220218
} else {
221219
await launcher.onPrepare(config, config.capabilities);
222220
}
223-
output.output.debug(`Started ${name}`);
221+
output.debug(`Started ${name}`);
224222
});
225223
});
226224
}
@@ -229,7 +227,7 @@ export default (config) => {
229227
event.dispatcher.on(event.all.after, () => {
230228
recorder.add(`launcher ${name} start`, async () => {
231229
await launcher.onComplete(process.exitCode, config, config.capabilities);
232-
output.output.debug(`Stopped ${name}`);
230+
output.debug(`Stopped ${name}`);
233231
});
234232
});
235233
}

lib/recorder.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
import debug from 'debug';
12
import promiseRetry from 'promise-retry';
2-
import createDebugMessages from 'debug';
33
import { printObjectProperties } from './utils.js';
44
import * as output from './output.js';
55

6-
const debug = createDebugMessages('codeceptjs:recorder');
6+
debug('codeceptjs:recorder');
77

88
const MAX_TASKS = 100;
99

package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,9 @@
6969
},
7070
"dependencies": {
7171
"@babel/core": "7.23.9",
72-
"@codeceptjs/configure": "1.0.1",
72+
"@codeceptjs/configure": "0.10.0",
7373
"@codeceptjs/helper": "2.0.3",
74+
"@codeceptjs/configure": "1.0.1",
7475
"@cucumber/cucumber-expressions": "17",
7576
"@cucumber/gherkin": "26",
7677
"@cucumber/messages": "24.0.1",
@@ -79,7 +80,7 @@
7980
"arrify": "2.0.1",
8081
"axios": "1.6.7",
8182
"babel-register-esm": "^1.2.5",
82-
"chai": "4.4.1",
83+
"chai": "5.1.0",
8384
"chai-deep-match": "1.2.1",
8485
"chai-exclude": "2.1.0",
8586
"chai-json-schema": "1.5.1",
@@ -91,7 +92,6 @@
9192
"cross-spawn": "7.0.3",
9293
"css-to-xpath": "0.1.0",
9394
"csstoxpath": "1.6.0",
94-
"debug": "^4.3.4",
9595
"devtools": "8.29.1",
9696
"envinfo": "7.11.0",
9797
"escape-string-regexp": "4.0.0",

test/acceptance/gherkin/steps.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const { I } = inject();
1+
const I = actor();
22

33
Given('I opened website', () => {
44
// From "gherkin/basic.feature" {"line":8,"column":5}

test/acceptance/session_test.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const assert = require('assert');
1+
import assert from 'assert';
22

33
const { event } = codeceptjs;
44

0 commit comments

Comments
 (0)