diff options
author | Yoshiya Hinosawa <stibium121@gmail.com> | 2018-07-01 23:37:10 +0900 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2018-07-01 17:22:36 +0200 |
commit | ea35281d637cf326c4d808111a59d986c92e6a4b (patch) | |
tree | c02b9836c4d5736aec2a412c2f82c589ed4c1d33 /src/js/mock_runtime.js | |
parent | 9528ee4a42eb0729a4467ddaaa3be573d9053fa2 (diff) |
chore: move //src/js to //js
refs: #285
Diffstat (limited to 'src/js/mock_runtime.js')
-rw-r--r-- | src/js/mock_runtime.js | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/src/js/mock_runtime.js b/src/js/mock_runtime.js deleted file mode 100644 index bb814e7c8..000000000 --- a/src/js/mock_runtime.js +++ /dev/null @@ -1,90 +0,0 @@ -// A simple runtime that doesn't involve typescript or protobufs to test -// libdeno. Invoked by mock_runtime_test.cc - -const global = this; - -function assert(cond) { - if (!cond) throw Error("mock_runtime.js assert failed"); -} - -global.typedArrayToArrayBuffer = ta => { - return ta.buffer.slice(ta.byteOffset, ta.byteOffset + ta.byteLength); -}; - -global.CanCallFunction = () => { - deno.print("Hello world from foo"); - return "foo"; -}; - -// This object is created to test snapshotting. -// See DeserializeInternalFieldsCallback and SerializeInternalFieldsCallback. -const snapshotted = new Uint8Array([1, 3, 3, 7]); - -global.TypedArraySnapshots = () => { - assert(snapshotted[0] === 1); - assert(snapshotted[1] === 3); - assert(snapshotted[2] === 3); - assert(snapshotted[3] === 7); -}; - -global.PubSuccess = () => { - deno.sub((channel, msg) => { - assert(channel === "PubSuccess"); - deno.print("PubSuccess: ok"); - }); -}; - -global.PubByteLength = () => { - deno.sub((channel, msg) => { - assert(channel === "PubByteLength"); - assert(msg instanceof ArrayBuffer); - assert(msg.byteLength === 3); - }); -}; - -global.SubReturnEmpty = () => { - const ui8 = new Uint8Array("abc".split("").map(c => c.charCodeAt(0))); - const ab = typedArrayToArrayBuffer(ui8); - let r = deno.pub("SubReturnEmpty", ab); - assert(r == null); - r = deno.pub("SubReturnEmpty", ab); - assert(r == null); -}; - -global.SubReturnBar = () => { - const ui8 = new Uint8Array("abc".split("").map(c => c.charCodeAt(0))); - const ab = typedArrayToArrayBuffer(ui8); - const r = deno.pub("SubReturnBar", ab); - assert(r instanceof ArrayBuffer); - assert(r.byteLength === 3); - const rui8 = new Uint8Array(r); - const rstr = String.fromCharCode(...rui8); - assert(rstr === "bar"); -}; - -global.DoubleSubFails = () => { - // deno.sub is an internal function and should only be called once from the - // runtime. - deno.sub((channel, msg) => assert(false)); - deno.sub((channel, msg) => assert(false)); -}; - -// The following join has caused SnapshotBug to segfault when using kKeep. -[].join(""); - -global.SnapshotBug = () => { - assert("1,2,3" === String([1, 2, 3])); -}; - -global.ErrorHandling = () => { - global.onerror = (message, source, line, col, error) => { - deno.print(`line ${line} col ${col}`); - assert("ReferenceError: notdefined is not defined" === message); - assert(source === "helloworld.js"); - assert(line === 3); - assert(col === 1); - assert(error instanceof Error); - deno.pub("ErrorHandling", typedArrayToArrayBuffer(new Uint8Array([42]))); - }; - eval("\n\n notdefined()\n//# sourceURL=helloworld.js"); -}; |