oxc/tasks/transform_conformance
Dunqing ede10dc030 fix(transformer/async-to-generator): incorrect transform when super expression is inside async method (#7171)
After transformation, super expressions have moved to unexpected places. This PR replaces super expression to call expression, and then inserts the super methods to the top of the method body.

For example:

Before:
```js
class G {
  async method() {
    super.foo()
  }
}
```

After:
```js
class G {
  method() {
    var _superprop_getFoo = () => super.foo,
      _this = this;
    return _asyncToGenerator(function* () {
      _superprop_getFoo().call(_this);
    })();
  }
}```
2024-11-08 08:18:45 +00:00
..
snapshots fix(transformer/async-to-generator): incorrect transform when super expression is inside async method (#7171) 2024-11-08 08:18:45 +00:00
src chore(transform_conformance): omit tests that we cannot pass right now (#7192) 2024-11-07 14:20:30 +00:00
tests fix(transformer/async-to-generator): incorrect transform when super expression is inside async method (#7171) 2024-11-08 08:18:45 +00:00
.gitignore chore(transformer_conformance): only ignore root fixtures directory (#7198) 2024-11-08 02:36:22 +00:00
Cargo.toml ci(transformer): move post-transform checker to tasks crate (#6288) 2024-10-05 14:48:37 +00:00
package.json feat(transform_conformance): use node instead of bun for exec tests (#7121) 2024-11-05 14:20:48 +08:00
README.md test(transformer): update transform conformance README (#5919) 2024-09-20 11:46:44 +01:00

Transformation Conformance Test Runner

Execution

This test runner uses the transformation plugin test suite from the Babel repository.

Additional tests are in the tests directory.

The failing test cases are listed in:

To get started, run

cargo run -p oxc_transform_conformance

or watch for changes

just watch 'run -p oxc_transform_conformance'

Options

--filter

To filter for a specific test case, apply the --filter path option, e.g.

cargo run -p oxc_transform_conformance -- --filter react/arrow-functions

--exec

The Babel test suite contains many exec.js files, which need to be executed by a runtime.

bun is the preferred way to execute these tests, which you may install them via https://bun.sh/docs/installation.

Once bun is installed, apply the --exec flag:

cargo run -p oxc_transform_conformance -- --exec

The failing test cases are listed in babel_exec.snap.md.