aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wpt/web-platform-tests/wasm/jsapi/table/assertions.js
blob: c88972b4ebdcd760b2a441835c2c9eb31dabfea8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
function assert_equal_to_array(table, expected, message) {
  assert_equals(table.length, expected.length, `${message}: length`);
  // The argument check in get() happens before the range check, and negative numbers
  // are illegal, hence will throw TypeError per spec.
  assert_throws(new TypeError(), () => table.get(-1), `${message}: table.get(-1)`);
  for (let i = 0; i < expected.length; ++i) {
    assert_equals(table.get(i), expected[i], `${message}: table.get(${i} of ${expected.length})`);
  }
  assert_throws(new RangeError(), () => table.get(expected.length),
                `${message}: table.get(${expected.length} of ${expected.length})`);
  assert_throws(new RangeError(), () => table.get(expected.length + 1),
                `${message}: table.get(${expected.length + 1} of ${expected.length})`);
}