diff options
Diffstat (limited to 'js/src/tests/test262/harness/compare-array-falsy-arguments.js')
-rw-r--r-- | js/src/tests/test262/harness/compare-array-falsy-arguments.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/tests/test262/harness/compare-array-falsy-arguments.js b/js/src/tests/test262/harness/compare-array-falsy-arguments.js new file mode 100644 index 0000000000..1d0354312d --- /dev/null +++ b/js/src/tests/test262/harness/compare-array-falsy-arguments.js @@ -0,0 +1,30 @@ +// Copyright (C) 2020 Alexey Shvayka. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: > + compareArray gracefully handles nullish arguments. +includes: [compareArray.js] +---*/ + +function assertThrows(func, errorMessage) { + var caught = false; + try { + func(); + } catch (error) { + caught = true; + assert.sameValue(error.constructor, Test262Error); + assert.sameValue(error.message, errorMessage); + } + + assert(caught, `Expected ${func} to throw, but it didn't.`); +} + +assertThrows(() => assert.compareArray(), "First argument shouldn't be nullish. "); +assertThrows(() => assert.compareArray(null, []), "First argument shouldn't be nullish. "); +assertThrows(() => assert.compareArray(null, [], "foo"), "First argument shouldn't be nullish. foo"); + +assertThrows(() => assert.compareArray([]), "Second argument shouldn't be nullish. "); +assertThrows(() => assert.compareArray([], undefined, "foo"), "Second argument shouldn't be nullish. foo"); + +reportCompare(0, 0); |