blob: da186b52e2c02d0a4e5caea0182f0cfee95bad4c [file] [log] [blame]
// Test importEntries property
function testImportEntries(source, expected) {
var module = parseModule(source);
var actual = module.importEntries;
assertEq(actual.length, expected.length);
for (var i = 0; i < actual.length; i++) {
for (var property in expected[i]) {
assertEq(actual[i][property], expected[i][property]);
}
}
}
testImportEntries('', []);
testImportEntries('import v from "mod";',
[{moduleRequest: 'mod', importName: 'default', localName: 'v'}]);
testImportEntries('import * as ns from "mod";',
[{moduleRequest: 'mod', importName: '*', localName: 'ns'}]);
testImportEntries('import {x} from "mod";',
[{moduleRequest: 'mod', importName: 'x', localName: 'x'}]);
testImportEntries('import {x as v} from "mod";',
[{moduleRequest: 'mod', importName: 'x', localName: 'v'}]);
testImportEntries('import "mod";',
[]);
testImportEntries('import {x} from "a"; import {y} from "b";',
[{moduleRequest: 'a', importName: 'x', localName: 'x'},
{moduleRequest: 'b', importName: 'y', localName: 'y'}]);