summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/ctypes/argument-type-array.js
blob: e78578d86bd9d09a431b857da966cba7e0261359 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
load(libdir + 'asserts.js');

function test() {
  assertTypeErrorMessage(() => { ctypes.int32_t.array({}); },
                         "argument of CType.prototype.array must be a nonnegative integer");
  assertTypeErrorMessage(() => { ctypes.ArrayType(1); },
                         "first argument of ArrayType must be a CType");
  assertTypeErrorMessage(() => { ctypes.ArrayType(ctypes.int32_t, {}); },
                         "second argument of ArrayType must be a nonnegative integer");
  assertTypeErrorMessage(() => { ctypes.char.array()({}); },
                         "argument of size undefined ArrayType constructor must be an array object or integer");
  assertTypeErrorMessage(() => { ctypes.char.array()(false); },
                         "argument of size undefined ArrayType constructor must be an array object or integer");
}

if (typeof ctypes === "object")
  test();