58 lines
1.3 KiB
JavaScript
58 lines
1.3 KiB
JavaScript
const assert = require("assert");
|
|
const mock = require("mock-require");
|
|
const Babel = require("@babel/standalone/babel");
|
|
mock("Babel", Babel);
|
|
require("../babel-preset-env");
|
|
|
|
describe("babel-preset-env-standalone", () => {
|
|
it("works w/o targets", () => {
|
|
const output = Babel.transform("const a = 1;", {
|
|
presets: ["env"],
|
|
}).code;
|
|
assert.equal(output, "var a = 1;");
|
|
});
|
|
|
|
it("doesn't transpile `const` with chrome 60", () => {
|
|
const output = Babel.transform("const a = 1;", {
|
|
presets: [
|
|
[
|
|
"env",
|
|
{
|
|
targets: {
|
|
chrome: 60,
|
|
},
|
|
},
|
|
],
|
|
],
|
|
}).code;
|
|
assert.equal(output, "const a = 1;");
|
|
});
|
|
|
|
it("transpiles `const` with chrome 60 and preset-es2015", () => {
|
|
const output = Babel.transform("const a = 1;", {
|
|
presets: [
|
|
[
|
|
"env",
|
|
{
|
|
targets: {
|
|
chrome: 60,
|
|
},
|
|
},
|
|
],
|
|
"es2015",
|
|
],
|
|
}).code;
|
|
assert.equal(output, "var a = 1;");
|
|
});
|
|
|
|
it("uses transform-new-targets plugin", () => {
|
|
const output = Babel.transform("function Foo() {new.target}", {
|
|
presets: ["env"],
|
|
}).code;
|
|
assert.equal(
|
|
output,
|
|
"function Foo() {\n this instanceof Foo ? this.constructor : void 0;\n}",
|
|
);
|
|
});
|
|
});
|