aboutsummaryrefslogtreecommitdiff
path: root/test/mocha
diff options
context:
space:
mode:
Diffstat (limited to 'test/mocha')
-rw-r--r--test/mocha/imports.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/test/mocha/imports.js b/test/mocha/imports.js
new file mode 100644
index 00000000..e9b654cd
--- /dev/null
+++ b/test/mocha/imports.js
@@ -0,0 +1,28 @@
+var assert = require("assert");
+var UglifyJS = require("../node");
+
+describe("import", function() {
+ it("Should reject invalid `import` statement syntax", function() {
+ [
+ "import *;",
+ "import A;",
+ "import {};",
+ "import `path`;",
+ "import from 'path';",
+ "import * from 'path';",
+ "import A as B from 'path';",
+ "import { A }, B from 'path';",
+ "import * as A, B from 'path';",
+ "import * as A, {} from 'path';",
+ "import { * as A } from 'path';",
+ "import { 42 as A } from 'path';",
+ "import { A-B as C } from 'path';",
+ ].forEach(function(code) {
+ assert.throws(function() {
+ UglifyJS.parse(code);
+ }, function(e) {
+ return e instanceof UglifyJS.JS_Parse_Error;
+ }, code);
+ });
+ });
+});