1'use strict'; 2const common = require('../common'); 3const fixtures = require('../common/fixtures'); 4const assert = require('assert'); 5 6Object.defineProperty(Object.prototype, 'name', { 7 __proto__: null, 8 get: common.mustNotCall('get %Object.prototype%.name'), 9 set: common.mustNotCall('set %Object.prototype%.name'), 10 enumerable: false, 11}); 12Object.defineProperty(Object.prototype, 'main', { 13 __proto__: null, 14 get: common.mustNotCall('get %Object.prototype%.main'), 15 set: common.mustNotCall('set %Object.prototype%.main'), 16 enumerable: false, 17}); 18Object.defineProperty(Object.prototype, 'type', { 19 __proto__: null, 20 get: common.mustNotCall('get %Object.prototype%.type'), 21 set: common.mustNotCall('set %Object.prototype%.type'), 22 enumerable: false, 23}); 24Object.defineProperty(Object.prototype, 'exports', { 25 __proto__: null, 26 get: common.mustNotCall('get %Object.prototype%.exports'), 27 set: common.mustNotCall('set %Object.prototype%.exports'), 28 enumerable: false, 29}); 30Object.defineProperty(Object.prototype, 'imports', { 31 __proto__: null, 32 get: common.mustNotCall('get %Object.prototype%.imports'), 33 set: common.mustNotCall('set %Object.prototype%.imports'), 34 enumerable: false, 35}); 36 37assert.strictEqual( 38 require(fixtures.path('es-module-specifiers', 'node_modules', 'no-main-field')), 39 'no main field' 40); 41 42import(fixtures.fileURL('es-module-specifiers', 'index.mjs')) 43 .then(common.mustCall((module) => assert.strictEqual(module.noMain, 'no main field'))); 44