diff --git a/package.json b/package.json index 442ee15..1fcd315 100644 --- a/package.json +++ b/package.json @@ -32,9 +32,11 @@ "license": "MIT", "dependencies": { "ast-source": "^2.0.0", - "comment-to-assert": "^1.0.2", + "comment-to-assert": "^1.1.0", "concat-stream": "^1.5.0", + "escodegen": "^1.8.0", "espower": "^1.0.6", + "espree": "^3.1.5", "esprima": "^2.5.0", "estraverse": "^4.1.0", "power-assert-formatter": "^1.0.1" diff --git a/src/inject-assert.js b/src/inject-assert.js index 84de9f0..07e6a1d 100644 --- a/src/inject-assert.js +++ b/src/inject-assert.js @@ -1,7 +1,5 @@ // LICENSE : MIT "use strict"; -import traverse from "estraverse" -import {Syntax} from "estraverse" import {parse} from "esprima" export function injectAssertModule(AST) { var powerAssertDeclaration = parse(`var assert = require("power-assert")`); diff --git a/src/power-doctest.js b/src/power-doctest.js index ed5e04e..552c98f 100644 --- a/src/power-doctest.js +++ b/src/power-doctest.js @@ -4,7 +4,7 @@ import {toAssertFromAST} from "comment-to-assert" import {injectAssertModule} from "./inject-assert" import espower from "espower" import assert from "assert" -import ASTSource from "ast-source" +import ASTSource from "ast-source"; import {ASTDataContainer} from "ast-source" export function convertCode(code, filePath) { var source = new ASTSource(code, { diff --git a/test/power-doctest.test.js b/test/power-doctest.test.js index c513942..5801daf 100644 --- a/test/power-doctest.test.js +++ b/test/power-doctest.test.js @@ -6,7 +6,8 @@ function parseAndConvert(code) { range: true, comment: true, attachComment: true, - tokens: true + tokens: true, + sourceType: 'module' }; var AST = parse(code, options); return convertAST(AST); @@ -22,6 +23,20 @@ describe("power-doctest", function () { var a = 1; `); }); + it("module type", function () { + var code = ` +export default function hello(){ + var a = 1; +} + `; + var resultAST = parseAndConvert(code); + astEqual(resultAST, ` + var assert = require("power-assert"); + export default function hello(){ + var a = 1; + } + `); + }); it("convert assert to power-assert format", function () { var code = `var a = 1; a; // => 1`;