From b07696fa0924b33d33fd02986439c03e0e35cb59 Mon Sep 17 00:00:00 2001 From: Toru Nagashima Date: Tue, 19 Jan 2016 21:33:14 +0900 Subject: [PATCH] Fix: tests for importing keywords (fixes #225) --- package.json | 1 + ...mport-named-as-specifier-keyword.result.js | 275 ++++++++++++++++++ .../import-named-as-specifier-keyword.src.js | 1 + .../invalid-import-named-as-keyword.result.js | 6 + .../invalid-import-named-as-keyword.src.js | 1 + .../invalid-import-named-keyword.result.js | 6 + .../invalid-import-named-keyword.src.js | 1 + 7 files changed, 291 insertions(+) create mode 100644 tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.result.js create mode 100644 tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.src.js create mode 100644 tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.result.js create mode 100644 tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.src.js create mode 100644 tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.result.js create mode 100644 tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.src.js diff --git a/package.json b/package.json index 0b457e40..dcc1de63 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ }, "license": "BSD-2-Clause", "devDependencies": { + "acorn": "^2.7.0", "browserify": "^7.0.0", "chai": "^1.10.0", "complexity-report": "~0.6.1", diff --git a/tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.result.js b/tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.result.js new file mode 100644 index 00000000..17b1b07b --- /dev/null +++ b/tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.result.js @@ -0,0 +1,275 @@ +module.exports = { + "type": "Program", + "loc": { + "start": { + "line": 1, + "column": 0 + }, + "end": { + "line": 1, + "column": 31 + } + }, + "range": [ + 0, + 31 + ], + "body": [ + { + "type": "ImportDeclaration", + "loc": { + "start": { + "line": 1, + "column": 0 + }, + "end": { + "line": 1, + "column": 31 + } + }, + "range": [ + 0, + 31 + ], + "specifiers": [ + { + "type": "ImportSpecifier", + "loc": { + "start": { + "line": 1, + "column": 8 + }, + "end": { + "line": 1, + "column": 18 + } + }, + "range": [ + 8, + 18 + ], + "imported": { + "type": "Identifier", + "loc": { + "start": { + "line": 1, + "column": 8 + }, + "end": { + "line": 1, + "column": 11 + } + }, + "range": [ + 8, + 11 + ], + "name": "var" + }, + "local": { + "type": "Identifier", + "loc": { + "start": { + "line": 1, + "column": 15 + }, + "end": { + "line": 1, + "column": 18 + } + }, + "range": [ + 15, + 18 + ], + "name": "baz" + } + } + ], + "source": { + "type": "Literal", + "loc": { + "start": { + "line": 1, + "column": 25 + }, + "end": { + "line": 1, + "column": 30 + } + }, + "range": [ + 25, + 30 + ], + "value": "foo", + "raw": "\"foo\"" + } + } + ], + "sourceType": "module", + "tokens": [ + { + "type": "Keyword", + "value": "import", + "loc": { + "start": { + "line": 1, + "column": 0 + }, + "end": { + "line": 1, + "column": 6 + } + }, + "range": [ + 0, + 6 + ] + }, + { + "type": "Punctuator", + "value": "{", + "loc": { + "start": { + "line": 1, + "column": 7 + }, + "end": { + "line": 1, + "column": 8 + } + }, + "range": [ + 7, + 8 + ] + }, + { + "type": "Keyword", + "value": "var", + "loc": { + "start": { + "line": 1, + "column": 8 + }, + "end": { + "line": 1, + "column": 11 + } + }, + "range": [ + 8, + 11 + ] + }, + { + "type": "Identifier", + "value": "as", + "loc": { + "start": { + "line": 1, + "column": 12 + }, + "end": { + "line": 1, + "column": 14 + } + }, + "range": [ + 12, + 14 + ] + }, + { + "type": "Identifier", + "value": "baz", + "loc": { + "start": { + "line": 1, + "column": 15 + }, + "end": { + "line": 1, + "column": 18 + } + }, + "range": [ + 15, + 18 + ] + }, + { + "type": "Punctuator", + "value": "}", + "loc": { + "start": { + "line": 1, + "column": 18 + }, + "end": { + "line": 1, + "column": 19 + } + }, + "range": [ + 18, + 19 + ] + }, + { + "type": "Identifier", + "value": "from", + "loc": { + "start": { + "line": 1, + "column": 20 + }, + "end": { + "line": 1, + "column": 24 + } + }, + "range": [ + 20, + 24 + ] + }, + { + "type": "String", + "value": "\"foo\"", + "loc": { + "start": { + "line": 1, + "column": 25 + }, + "end": { + "line": 1, + "column": 30 + } + }, + "range": [ + 25, + 30 + ] + }, + { + "type": "Punctuator", + "value": ";", + "loc": { + "start": { + "line": 1, + "column": 30 + }, + "end": { + "line": 1, + "column": 31 + } + }, + "range": [ + 30, + 31 + ] + } + ] +}; \ No newline at end of file diff --git a/tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.src.js b/tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.src.js new file mode 100644 index 00000000..5c55869f --- /dev/null +++ b/tests/fixtures/ecma-version/6/modules/import-named-as-specifier-keyword.src.js @@ -0,0 +1 @@ +import {var as baz} from "foo"; diff --git a/tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.result.js b/tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.result.js new file mode 100644 index 00000000..3e7e7c84 --- /dev/null +++ b/tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.result.js @@ -0,0 +1,6 @@ +module.exports = { + "index": 15, + "lineNumber": 1, + "column": 16, + "message": "Unexpected token var" +}; \ No newline at end of file diff --git a/tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.src.js b/tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.src.js new file mode 100644 index 00000000..c6f38cf4 --- /dev/null +++ b/tests/fixtures/ecma-version/6/modules/invalid-import-named-as-keyword.src.js @@ -0,0 +1 @@ +import {foo as var} from "foo" diff --git a/tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.result.js b/tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.result.js new file mode 100644 index 00000000..71e99477 --- /dev/null +++ b/tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.result.js @@ -0,0 +1,6 @@ +module.exports = { + "index": 8, + "lineNumber": 1, + "column": 9, + "message": "Unexpected token var" +}; \ No newline at end of file diff --git a/tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.src.js b/tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.src.js new file mode 100644 index 00000000..7f25a14f --- /dev/null +++ b/tests/fixtures/ecma-version/6/modules/invalid-import-named-keyword.src.js @@ -0,0 +1 @@ +import {var} from "foo"