jest-playwright icon indicating copy to clipboard operation
jest-playwright copied to clipboard

Pass context to the parent of `PlaywrightEnvironment`

Open juan-fernandez opened this issue 1 year ago • 1 comments

This line could be changed and it'd help users of PlaywrightEnvironment to leverage the context that's passed to jest environments

From

    constructor(config: JestEnvironmentConfig) {
      super(config)
      this._config = config.projectConfig as JestPlaywrightProjectConfig
    }

to

    constructor(config: JestEnvironmentConfig, context: EnvironmentContext) {
      super(config, context)
      this._config = config.projectConfig as JestPlaywrightProjectConfig
    }

This is actually how jest recommends creating your own test environment in their docs:

// my-custom-environment
const NodeEnvironment = require('jest-environment-node').TestEnvironment;

class CustomEnvironment extends NodeEnvironment {
  constructor(config, context) {
    super(config, context);
    console.log(config.globalConfig);
    console.log(config.projectConfig);
    this.testPath = context.testPath;
    this.docblockPragmas = context.docblockPragmas;
  }
  ...

Describe the solution you'd like Passing context when calling super

Additional context This is an issue specifically for Datadog's test visibility.

If you're OK with this change I can contribute it myself 😄

juan-fernandez avatar Sep 19 '24 10:09 juan-fernandez

I created a PR just for this: https://github.com/playwright-community/jest-playwright/pull/820

juan-fernandez avatar Sep 19 '24 11:09 juan-fernandez