esprima
esprima copied to clipboard
infrastructure: move unit-test to stable JSON stringify
Now unit-test uses JSON.stringify to generate fixtures.
JSON.stringify is not stable across different environment (Node versions/platform).
This means, when there is a new property added to ESTree nodes, and we want to regenerate fixtures for existing unit tests, the generated fixtures would mostly be largely mismatched to the original one, which makes it hard to review.
It's better to stabilize the output, then it's easier for the dev process.
We can leverage existing libraries like https://github.com/substack/json-stable-stringify or https://github.com/epoberezkin/fast-json-stable-stringify.