oxc/tasks/transform_conformance
Dunqing 9ee962add8 feat(transformer): support from_babel_options in TransformOptions (#3301)
Move `BabelOptions` to Transformer. The `output.json` is a standard babel configuration. We can reuse BabelOptions to read [babel.config.json](https://babeljs.io/docs/configuration#babelconfigjson) or our configuration(maybe oxc.config.json)

The current `from_babel_options` implementation is copied from the `transform_options` in `test_case.rs`, which I'll completely reimplement next
2024-05-16 10:10:39 +00:00
..
src feat(transformer): support from_babel_options in TransformOptions (#3301) 2024-05-16 10:10:39 +00:00
tests refactor(transformer/typescript): reimplementation of Enum conversion based on Babel (#3102) 2024-04-29 16:26:22 +08:00
babel.snap.md feat(transformer_conformance): skip some tests that are known to fail (#3293) 2024-05-15 22:06:00 +08:00
babel_exec.snap.md chore(tasks): add commit sha to snapshots to make sure submodules are not outdated (#3267) 2024-05-14 10:18:00 +00:00
Cargo.toml feat(transformer): support from_babel_options in TransformOptions (#3301) 2024-05-16 10:10:39 +00:00
oxc.snap.md chore(tasks): add commit sha to snapshots to make sure submodules are not outdated (#3267) 2024-05-14 10:18:00 +00:00
oxc_exec.snap.md chore(tasks): add commit sha to snapshots to make sure submodules are not outdated (#3267) 2024-05-14 10:18:00 +00:00
README.md feat(transformer_conformance): use bun to run babel exec.js test cases (#1012) 2023-10-25 03:06:07 +00:00
typescript.snap.md feat(semantic): report that enum member must have initializer (#3113) 2024-04-27 22:08:02 +08:00

Transformation Conformance Test Runner

Execution

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

The failing test cases are listed in ./babel.snap.md

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, they 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.