ui icon indicating copy to clipboard operation
ui copied to clipboard

Does not respect configuration hooks

Open examosa opened this issue 3 years ago • 0 comments

The UI does not appear to account for configuration set through hooks from @codeceptjs/configure.

As an example, I have the following codecept.conf.js:

const {
  setHeadlessWhen,
  setCommonPlugins,
  setBrowser,
  setTestHost
} = require('@codeceptjs/configure');

const productionHost = 'https://example.com';

setBrowser(process.env.BROWSER || 'chromium');
setHeadlessWhen(process.env.HEADLESS);
setTestHost(process.env.TESTHOST || productionHost)
setCommonPlugins();

exports.config = {
  name: 'example-ui-tests',
  tests: './integration/**/*.test.ts',
  output: './output',
  helpers: {
    Playwright: {
      show: true,
      waitForNavigation: 'networkidle',
    },
  },
  bootstrap: null,
  include: {
    I: './custom-steps.js',
  },
  require: ['ts-node/register']
};

When I run the UI and view the config, it's as follows:

{
 "output": "./output",
 "helpers": {
  "Playwright": {
   "show": true,
   "waitForNavigation": "networkidle"
  }
 },
 "include": {
  "I": "./custom-steps.js"
 },
 "mocha": {},
 "bootstrap": null,
 "timeout": null,
 "teardown": null,
 "hooks": [],
 "gherkin": {},
 "plugins": {
  "screenshotOnFail": {
   "enabled": true
  }
 },
 "stepTimeout": 0,
 "stepTimeoutOverride": [
  {
   "pattern": "wait.*",
   "timeout": 0
  },
  {
   "pattern": "amOnPage",
   "timeout": 0
  }
 ],
 "name": "example-ui-tests",
 "tests": "./integration/**/*.test.ts",
 "require": [
  "ts-node/register"
 ]
}

It doesn't seem to be applying any hooks to the parsed config. Is this intended behavior with a workaround or a bug?

examosa avatar Mar 24 '22 16:03 examosa