11cb0ef41Sopenharmony_ci// META: global=window,dedicatedworker,jsshell 21cb0ef41Sopenharmony_ci// META: script=/wasm/jsapi/assertions.js 31cb0ef41Sopenharmony_ci 41cb0ef41Sopenharmony_cifunction testfunc(n) {} 51cb0ef41Sopenharmony_ci 61cb0ef41Sopenharmony_citest(() => { 71cb0ef41Sopenharmony_ci var table = new WebAssembly.Table({element: "anyfunc", initial: 3}) 81cb0ef41Sopenharmony_ci var func1 = new WebAssembly.Function({parameters: ["i32"], results: []}, testfunc) 91cb0ef41Sopenharmony_ci table.set(0, func1) 101cb0ef41Sopenharmony_ci var func2 = new WebAssembly.Function({parameters: ["f32"], results: []}, testfunc) 111cb0ef41Sopenharmony_ci table.set(1, func2) 121cb0ef41Sopenharmony_ci var func3 = new WebAssembly.Function({parameters: ["i64"], results: []}, testfunc) 131cb0ef41Sopenharmony_ci table.set(2, func3) 141cb0ef41Sopenharmony_ci 151cb0ef41Sopenharmony_ci var first = table.get(0) 161cb0ef41Sopenharmony_ci assert_true(first instanceof WebAssembly.Function) 171cb0ef41Sopenharmony_ci assert_equals(first, func1) 181cb0ef41Sopenharmony_ci assert_equals(first.type().parameters[0], func1.type().parameters[0]) 191cb0ef41Sopenharmony_ci 201cb0ef41Sopenharmony_ci var second = table.get(1) 211cb0ef41Sopenharmony_ci assert_true(second instanceof WebAssembly.Function) 221cb0ef41Sopenharmony_ci assert_equals(second, func2) 231cb0ef41Sopenharmony_ci assert_equals(second.type().parameters[0], func2.type().parameters[0]) 241cb0ef41Sopenharmony_ci 251cb0ef41Sopenharmony_ci var third = table.get(2) 261cb0ef41Sopenharmony_ci assert_true(third instanceof WebAssembly.Function) 271cb0ef41Sopenharmony_ci assert_equals(third, func3) 281cb0ef41Sopenharmony_ci assert_equals(third.type().parameters[0], func3.type().parameters[0]) 291cb0ef41Sopenharmony_ci 301cb0ef41Sopenharmony_ci}, "Test insertion into table") 31