This is a testharness.js-based test.
PASS import.meta.url in a root inline script
PASS import.meta.url in a root external script
PASS import.meta.url in a dependent external script
PASS import.meta is an object
PASS import.meta is extensible
PASS import.meta's properties are writable, configurable, and enumerable
FAIL import.meta.url when importing the module with different fragments assert_equals: expected "http://web-platform.test:8001/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-root.js#1" but got "http://web-platform.test:8001/html/semantics/scripting-1/the-script-element/module/import-meta/import-meta-root.js"
Harness: the test ran to completion.

