api.baseline 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225
  1. WebAssembly.validate tests
  2. Test 0 passed. Expected Error: TypeError: Object expected
  3. Test 1 passed. Expected Error: TypeError: BufferSource expected
  4. Test 2 passed. Expected Error: TypeError: BufferSource expected
  5. Test 3 passed. Expected Error: TypeError: BufferSource expected
  6. Test 4 passed. Expected Error: TypeError: BufferSource expected
  7. Test 5 passed. Expected Error: TypeError: BufferSource expected
  8. Test 6 passed. Expected Error: TypeError: BufferSource expected
  9. Test 7 passed. Expected Error: Error: Buffer source is the right type, but doesn't validate
  10. Test 8 passed. Expected Error: Error: Buffer source is the right type, but doesn't validate
  11. Test 9 passed. Expected Error: TypeError: BufferSource expected
  12. WebAssembly.validate(new ArrayBuffer()) = false
  13. WebAssembly.validate(new Uint8Array(emptyBuffer)) = false
  14. api.wasm valid: true
  15. WebAssembly.compile tests
  16. Test 0 passed. Expected Error: TypeError: Object expected
  17. Test 1 passed. Expected Error: TypeError: BufferSource expected
  18. Test 2 passed. Expected Error: TypeError: BufferSource expected
  19. Test 3 passed. Expected Error: TypeError: BufferSource expected
  20. Test 4 passed. Expected Error: TypeError: BufferSource expected
  21. Test 5 passed. Expected Error: TypeError: BufferSource expected
  22. Test 6 passed. Expected Error: TypeError: BufferSource expected
  23. Test 7 passed. Expected Error: CompileError: Out of file: Needed: 4, Left: 0
  24. Test 8 passed. Expected Error: CompileError: Out of file: Needed: 1, Left: 0
  25. Test 9 passed. Expected Error: TypeError: BufferSource expected
  26. Testing module
  27. exports
  28. [{"kind":"function", "name":"fn"}, {"kind":"global", "name":"g1"}, {"kind":"function", "name":"f1"}, {"kind":"global", "name":"g2"}, {"kind":"table", "name":"table"}, {"kind":"function", "name":"fn2"}, {"kind":"function", "name":"call_i32"}, {"kind":"memory", "name":"mem"}, {"kind":"function", "name":"call_f32"}, {"kind":"global", "name":"g3"}, {"kind":"function", "name":"load"}]
  29. imports
  30. [{"kind":"function", "module":"test", "name":"fn"}, {"kind":"function", "module":"test", "name":"fn2"}, {"kind":"memory", "module":"test", "name":"memory"}, {"kind":"global", "module":"test", "name":"g1"}, {"kind":"global", "module":"test", "name":"g2"}, {"kind":"table", "module":"table", "name":""}]
  31. WebAssembly.instantiate tests
  32. Test 0 passed. Expected Error: TypeError: Object expected
  33. Test 1 passed. Expected Error: TypeError: BufferSource expected
  34. Test 2 passed. Expected Error: TypeError: BufferSource expected
  35. Test 3 passed. Expected Error: TypeError: BufferSource expected
  36. Test 4 passed. Expected Error: TypeError: BufferSource expected
  37. Test 5 passed. Expected Error: TypeError: BufferSource expected
  38. Test 6 passed. Expected Error: TypeError: BufferSource expected
  39. Test 7 passed. Expected Error: CompileError: Out of file: Needed: 4, Left: 0
  40. Test 8 passed. Expected Error: CompileError: Out of file: Needed: 1, Left: 0
  41. Test 9 passed. Expected Error: TypeError: BufferSource expected
  42. Test 10 passed. Expected Error: TypeError: Object expected
  43. Test 11 passed. Expected Error: TypeError: Object expected
  44. Test 12 passed. Expected Error: TypeError: Object expected
  45. Test 13 passed. Expected Error: TypeError: Import module 'test' is invalid
  46. Test 14 passed. Expected Error: TypeError: Import module 'test' is invalid
  47. Test 15 passed. Expected Error: TypeError: Object expected
  48. Test 16 passed. Expected Error: TypeError: Object expected
  49. Test 17 passed. Expected Error: TypeError: Object expected
  50. Test 18 passed. Expected Error: TypeError: Import module 'test' is invalid
  51. Test 19 passed. Expected Error: TypeError: Import module 'test' is invalid
  52. Testing module
  53. exports
  54. [{"kind":"function", "name":"fn"}, {"kind":"global", "name":"g1"}, {"kind":"function", "name":"f1"}, {"kind":"global", "name":"g2"}, {"kind":"table", "name":"table"}, {"kind":"function", "name":"fn2"}, {"kind":"function", "name":"call_i32"}, {"kind":"memory", "name":"mem"}, {"kind":"function", "name":"call_f32"}, {"kind":"global", "name":"g3"}, {"kind":"function", "name":"load"}]
  55. imports
  56. [{"kind":"function", "module":"test", "name":"fn"}, {"kind":"function", "module":"test", "name":"fn2"}, {"kind":"memory", "module":"test", "name":"memory"}, {"kind":"global", "module":"test", "name":"g1"}, {"kind":"global", "module":"test", "name":"g2"}, {"kind":"table", "module":"table", "name":""}]
  57. Testing instance
  58. f1: 5
  59. fn: 1
  60. fn2: 2.140000104904175
  61. g1: 45
  62. g2: -8
  63. g3: 45
  64. Testing module
  65. exports
  66. [{"kind":"function", "name":"fn"}, {"kind":"global", "name":"g1"}, {"kind":"function", "name":"f1"}, {"kind":"global", "name":"g2"}, {"kind":"table", "name":"table"}, {"kind":"function", "name":"fn2"}, {"kind":"function", "name":"call_i32"}, {"kind":"memory", "name":"mem"}, {"kind":"function", "name":"call_f32"}, {"kind":"global", "name":"g3"}, {"kind":"function", "name":"load"}]
  67. imports
  68. [{"kind":"function", "module":"test", "name":"fn"}, {"kind":"function", "module":"test", "name":"fn2"}, {"kind":"memory", "module":"test", "name":"memory"}, {"kind":"global", "module":"test", "name":"g1"}, {"kind":"global", "module":"test", "name":"g2"}, {"kind":"table", "module":"table", "name":""}]
  69. Testing instance
  70. f1: 5
  71. fn: 1
  72. fn2: 2.140000104904175
  73. g1: 45
  74. g2: -8
  75. g3: 45
  76. new WebAssembly.Module tests
  77. Test 0 passed. Expected Error: TypeError: WebAssembly.Module: cannot be called without the new keyword
  78. Test 1 passed. Expected Error: TypeError: WebAssembly.Module: cannot be called without the new keyword
  79. Test 2 passed. Expected Error: TypeError: Object expected
  80. Test 3 passed. Expected Error: TypeError: BufferSource expected
  81. Test 4 passed. Expected Error: TypeError: BufferSource expected
  82. Test 5 passed. Expected Error: TypeError: BufferSource expected
  83. Test 6 passed. Expected Error: TypeError: BufferSource expected
  84. Test 7 passed. Expected Error: TypeError: BufferSource expected
  85. Test 8 passed. Expected Error: TypeError: BufferSource expected
  86. Test 9 passed. Expected Error: CompileError: Out of file: Needed: 4, Left: 0
  87. Test 10 passed. Expected Error: CompileError: Out of file: Needed: 1, Left: 0
  88. Test 11 passed. Expected Error: TypeError: BufferSource expected
  89. Testing module
  90. exports
  91. [{"kind":"function", "name":"fn"}, {"kind":"global", "name":"g1"}, {"kind":"function", "name":"f1"}, {"kind":"global", "name":"g2"}, {"kind":"table", "name":"table"}, {"kind":"function", "name":"fn2"}, {"kind":"function", "name":"call_i32"}, {"kind":"memory", "name":"mem"}, {"kind":"function", "name":"call_f32"}, {"kind":"global", "name":"g3"}, {"kind":"function", "name":"load"}]
  92. imports
  93. [{"kind":"function", "module":"test", "name":"fn"}, {"kind":"function", "module":"test", "name":"fn2"}, {"kind":"memory", "module":"test", "name":"memory"}, {"kind":"global", "module":"test", "name":"g1"}, {"kind":"global", "module":"test", "name":"g2"}, {"kind":"table", "module":"table", "name":""}]
  94. WebAssembly.Module api tests
  95. WebAssembly.Module.exports invalid tests
  96. Test 0 passed. Expected Error: TypeError: WebAssembly.Module expected
  97. Test 1 passed. Expected Error: TypeError: WebAssembly.Module expected
  98. Test 2 passed. Expected Error: TypeError: WebAssembly.Module expected
  99. Test 3 passed. Expected Error: TypeError: WebAssembly.Module expected
  100. WebAssembly.Module.imports invalid tests
  101. Test 0 passed. Expected Error: TypeError: WebAssembly.Module expected
  102. Test 1 passed. Expected Error: TypeError: WebAssembly.Module expected
  103. Test 2 passed. Expected Error: TypeError: WebAssembly.Module expected
  104. Test 3 passed. Expected Error: TypeError: WebAssembly.Module expected
  105. WebAssembly.Module.customSections tests
  106. Test 0 passed. Expected Error: TypeError: WebAssembly.Module expected
  107. Test 1 passed. Expected Error: TypeError: WebAssembly.Module expected
  108. Test 2 passed. Expected Error: TypeError: WebAssembly.Module expected
  109. Test 3 passed. Expected Error: TypeError: WebAssembly.Module expected
  110. Test 4 passed. Expected Error: Error: Doesn't support toString
  111. Test 5 passed. Expected Error: TypeError: No implicit conversion of Symbol to String
  112. 6/6 tests passed
  113. new WebAssembly.Instance tests
  114. Test 0 passed. Expected Error: TypeError: WebAssembly.Instance: cannot be called without the new keyword
  115. Test 1 passed. Expected Error: TypeError: WebAssembly.Instance: cannot be called without the new keyword
  116. Test 2 passed. Expected Error: TypeError: Object expected
  117. Test 3 passed. Expected Error: TypeError: Object expected
  118. Test 4 passed. Expected Error: TypeError: Object expected
  119. Test 5 passed. Expected Error: TypeError: Import module 'test' is invalid
  120. Test 6 passed. Expected Error: TypeError: Import module 'test' is invalid
  121. Test 7 passed. Expected Error: LinkError: Import 'test.fn' is invalid. Expected type Function
  122. Test 8 passed. Expected Error: LinkError: Cannot link import test.fn.Thunk[0]()->i32 to fn2()->f32 in link table due to a signature mismatch
  123. Test 9 passed. Expected Error: LinkError: Import 'test.memory' is invalid. Expected type WebAssembly.Memory
  124. Test 10 passed. Expected Error: LinkError: Import 'test.memory' is invalid. Expected type WebAssembly.Memory
  125. Test 11 passed. Expected Error: LinkError: Import 'test.memory' is invalid. Expected type WebAssembly.Memory
  126. Test 12 passed. Expected Error: LinkError: Import 'table.' is invalid. Expected type WebAssembly.Table
  127. Test 13 passed. Expected Error: LinkError: Import 'table.' is invalid. Expected type WebAssembly.Table
  128. Test 14 passed. Expected Error: LinkError: Import 'table.' is invalid. Expected type WebAssembly.Table
  129. Testing instance
  130. f1: 5
  131. fn: 1
  132. fn2: 2.140000104904175
  133. g1: 45
  134. g2: -8
  135. g3: 45
  136. WebAssembly.Memory tests
  137. Test 0 passed. Expected Error: TypeError: WebAssembly.Memory: cannot be called without the new keyword
  138. Test 1 passed. Expected Error: TypeError: 'memoryDescriptor' is null or not an object
  139. Test 2 passed. Expected Error: TypeError: 'memoryDescriptor' is null or not an object
  140. Test 3 passed. Expected Error: TypeError: 'memoryDescriptor' is null or not an object
  141. Test 4 passed. Expected Error: TypeError: WebAssembly.Memory object expected
  142. Test 5 passed. Expected Error: TypeError: WebAssembly.Memory object expected
  143. Test 6 passed. Expected Error: TypeError: WebAssembly.Memory object expected
  144. Test 7 passed. Expected Error: TypeError: WebAssembly.Memory object expected
  145. Test 8 passed. Expected Error: TypeError: WebAssembly.Memory object expected
  146. Test 9 passed. Expected Error: TypeError: WebAssembly.Memory object expected
  147. 0x33323130 == "0123"
  148. 0x37363534 == "4567"
  149. 0x3938 == "89"
  150. heap32[0] = 45
  151. memory.buffer.byteLength = 65536 == 65536
  152. view32[16383] = 0x12345678
  153. view32[16384] = undefined
  154. heap[65532] = 0x12345678
  155. Correctly trap on heap access at 65533
  156. Correctly trap on heap access at 65534
  157. Correctly trap on heap access at 65535
  158. Correctly trap on heap access at 65536
  159. grow by 1 page
  160. memory.buffer.byteLength = 131072 == 2 * 65536
  161. view32[32767] = 0x-789abcdf
  162. view32[32768] = undefined
  163. heap[65532] = 0x12345678
  164. heap[131068] = 0x-789abcdf
  165. Correctly trap on heap access at 131069
  166. Correctly trap on heap access at 131070
  167. Correctly trap on heap access at 131071
  168. Correctly trap on heap access at 131072
  169. Correctly trap when growing past maximum
  170. WebAssembly.Table tests
  171. Test 0 passed. Expected Error: TypeError: WebAssembly.Table: cannot be called without the new keyword
  172. Test 1 passed. Expected Error: TypeError: 'tableDescriptor' is null or not an object
  173. Test 2 passed. Expected Error: TypeError: 'tableDescriptor' is null or not an object
  174. Test 3 passed. Expected Error: TypeError: 'tableDescriptor' is null or not an object
  175. Test 4 passed. Expected Error: TypeError: tableDescriptor.element is not AnyFunc
  176. Test 5 passed. Expected Error: TypeError: WebAssembly.Table object expected
  177. Test 6 passed. Expected Error: TypeError: WebAssembly.Table object expected
  178. Test 7 passed. Expected Error: TypeError: WebAssembly.Table object expected
  179. Test 8 passed. Expected Error: TypeError: WebAssembly.Table object expected
  180. Test 9 passed. Expected Error: TypeError: WebAssembly.Table object expected
  181. Test 10 passed. Expected Error: TypeError: WebAssembly.Table object expected
  182. Test 11 passed. Expected Error: TypeError: WebAssembly.Table object expected
  183. Test 12 passed. Expected Error: TypeError: WebAssembly.Table object expected
  184. Test 13 passed. Expected Error: TypeError: WebAssembly.Table object expected
  185. Test 14 passed. Expected Error: RangeError: argument out of range
  186. Test 15 passed. Expected Error: RangeError: argument out of range
  187. Test 16 passed. Expected Error: RangeError: argument out of range
  188. Test 17 passed. Expected Error: RangeError: argument out of range
  189. Test 0 passed. Expected Error: RangeError: argument out of range
  190. Test 1 passed. Expected Error: RangeError: argument out of range
  191. Test 2 passed. Expected Error: TypeError: WebAssembly exported function expected
  192. Test 3 passed. Expected Error: TypeError: WebAssembly exported function expected
  193. Test 4 passed. Expected Error: TypeError: WebAssembly exported function expected
  194. Test 5 passed. Expected Error: TypeError: WebAssembly exported function expected
  195. Test 6 passed. Expected Error: TypeError: WebAssembly exported function expected
  196. Test 7 passed. Expected Error: TypeError: WebAssembly exported function expected
  197. Test 8 passed. Expected Error: RuntimeError: WebAssembly exported function expected
  198. Test 9 passed. Expected Error: RuntimeError: WebAssembly exported function expected
  199. Test 10 passed. Expected Error: RuntimeError: WebAssembly exported function expected
  200. Test 11 passed. Expected Error: RuntimeError: Table index is out of range
  201. Test 12 passed. Expected Error: RuntimeError: Function called with invalid signature
  202. Test 13 passed. Expected Error: RuntimeError: Function called with invalid signature
  203. Current length: 30
  204. Length after attempt to modify : 30
  205. Is element in table the same as the one exported: true
  206. Unset element should be null: null
  207. call_i32(0): 123456
  208. call_i32(1): 1
  209. call_f32(2): NaN
  210. call_i32(0): 1
  211. call_i32(29): 123456
  212. call_i32(30): 123456
  213. table2[0](): 123456
  214. done