// Copyright 2019 Ron Buckton. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
description: >
  array values compare correctly.
includes: [deepEqual.js]
---*/

assert.deepEqual([], []);
assert.deepEqual([1, "a", true], [1, "a", true]);

assert.throws(Test262Error, function () { assert.deepEqual([], [1]); });
assert.throws(Test262Error, function () { assert.deepEqual([1, "a", true], [1, "a", false]); });
