// |reftest| module // Copyright (C) 2018 André Bargull. All rights reserved. // This code is governed by the BSD license found in the LICENSE file. /*--- esid: sec-meta-properties-runtime-semantics-evaluation description: > The import.meta object is not shared across modules. info: | Runtime Semantics: Evaluation ImportMeta : import.meta 1. Let module be GetActiveScriptOrModule(). ... 3. Let importMeta be module.[[ImportMeta]]. 4. If importMeta is undefined. ... f. Set module.[[ImportMeta]] to importMeta. g. Return importMeta. ... flags: [module] features: [import.meta] ---*/ import {meta as fixture_meta, getMeta} from "./distinct-for-each-module_FIXTURE.js"; // The imported module has a distinct import.meta object. assert.notSameValue(import.meta, fixture_meta, "foreign import.meta accessed via import binding"); assert.notSameValue(import.meta, getMeta(), "foreign import.meta accessed via function call"); // Calling a function which returns import.meta returns the import.meta object // from the module in which the function is declared. assert.sameValue(fixture_meta, getMeta(), "import.meta accessed via import binding is identical to the one accessed via call"); reportCompare(0, 0);