parse.js 948 B

1234567891011121314151617181920212223242526272829303132
  1. import fs from "fs";
  2. import path from "path";
  3. import { parse } from "../lib";
  4. function fixture(...args) {
  5. return path.join(__dirname, "fixtures", "parse", ...args);
  6. }
  7. describe("parse", function() {
  8. it("should parse using configuration from .babelrc when a filename is provided", function() {
  9. const input = fs.readFileSync(fixture("input.js"), "utf8");
  10. const output = require(fixture("output"));
  11. const result = parse(input, {
  12. filename: fixture("input.js"),
  13. cwd: fixture(),
  14. });
  15. expect(JSON.parse(JSON.stringify(result))).toEqual(output);
  16. });
  17. it("should parse using passed in configuration", function() {
  18. const input = fs.readFileSync(fixture("input.js"), "utf8");
  19. const output = require(fixture("output.json"));
  20. const result = parse(input, {
  21. parserOpts: { plugins: ["decorators"] },
  22. cwd: fixture(),
  23. });
  24. expect(JSON.parse(JSON.stringify(result))).toEqual(output);
  25. });
  26. });