64 lines
2.8 KiB
JavaScript
64 lines
2.8 KiB
JavaScript
|
// Copyright 2021 the V8 project authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be
|
||
|
// found in the LICENSE file.
|
||
|
|
||
|
// Flags: --allow-natives-syntax --harmony-import-assertions
|
||
|
|
||
|
var result1;
|
||
|
var result2;
|
||
|
var result3;
|
||
|
var result4;
|
||
|
var result5;
|
||
|
var result6;
|
||
|
var result7;
|
||
|
var result8;
|
||
|
var result9;
|
||
|
var result10;
|
||
|
import('modules-skip-1.json', null).then(
|
||
|
() => assertUnreachable('Should have failed due to non-object parameter'),
|
||
|
error => result1 = error.message);
|
||
|
import('modules-skip-1.json', 7).then(
|
||
|
() => assertUnreachable('Should have failed due to non-object parameter'),
|
||
|
error => result2 = error.message);
|
||
|
import('modules-skip-1.json', 'string').then(
|
||
|
() => assertUnreachable('Should have failed due to non-object parameter'),
|
||
|
error => result3 = error.message);
|
||
|
import('modules-skip-1.json', { assert: null}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assert object'),
|
||
|
error => result4 = error.message);
|
||
|
import('modules-skip-1.json', { assert: 7}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assert object'),
|
||
|
error => result5 = error.message);
|
||
|
import('modules-skip-1.json', { assert: 'string'}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assert object'),
|
||
|
error => result6 = error.message);
|
||
|
import('modules-skip-1.json', { assert: { a: null }}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assert object'),
|
||
|
error => result7 = error.message);
|
||
|
import('modules-skip-1.json', { assert: { a: undefined }}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assertion value'),
|
||
|
error => result8 = error.message);
|
||
|
import('modules-skip-1.json', { assert: { a: 7 }}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assertion value'),
|
||
|
error => result9 = error.message);
|
||
|
import('modules-skip-1.json', { assert: { a: { } }}).then(
|
||
|
() => assertUnreachable('Should have failed due to bad assertion value'),
|
||
|
error => result10 = error.message);
|
||
|
|
||
|
%PerformMicrotaskCheckpoint();
|
||
|
|
||
|
const argumentNotObjectError = 'The second argument to import() must be an object';
|
||
|
const assertOptionNotObjectError = 'The \'assert\' option must be an object';
|
||
|
const assertionValueNotStringError = 'Import assertion value must be a string';
|
||
|
|
||
|
assertEquals(argumentNotObjectError, result1);
|
||
|
assertEquals(argumentNotObjectError, result2);
|
||
|
assertEquals(argumentNotObjectError, result3);
|
||
|
assertEquals(assertOptionNotObjectError, result4);
|
||
|
assertEquals(assertOptionNotObjectError, result5);
|
||
|
assertEquals(assertOptionNotObjectError, result6);
|
||
|
assertEquals(assertionValueNotStringError, result7);
|
||
|
assertEquals(assertionValueNotStringError, result8);
|
||
|
assertEquals(assertionValueNotStringError, result9);
|
||
|
assertEquals(assertionValueNotStringError, result10);
|