// 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");