summaryrefslogtreecommitdiff
path: root/core/serialize_deserialize_test.js
diff options
context:
space:
mode:
authorMatt Mastracci <matthew@mastracci.com>2023-06-13 20:03:10 -0600
committerGitHub <noreply@github.com>2023-06-14 02:03:10 +0000
commitec8e9d4f5bd2c8eed5f086356c1c6dd7c8b40b7f (patch)
tree2ffda9204901bfb757e8ce6359d1fc6aa2f9964b /core/serialize_deserialize_test.js
parentfd9d6baea311d9b227b130749647a86838ba2ccc (diff)
chore(core): Refactor runtime and split out tests (#19491)
This is a quick first refactoring to split the tests out of runtime and move runtime-related code to a top-level runtime module. There will be a followup to refactor imports a bit, but this is the major change that will most likely conflict with other work and I want to merge it early.
Diffstat (limited to 'core/serialize_deserialize_test.js')
-rw-r--r--core/serialize_deserialize_test.js74
1 files changed, 0 insertions, 74 deletions
diff --git a/core/serialize_deserialize_test.js b/core/serialize_deserialize_test.js
deleted file mode 100644
index 70397cdf8..000000000
--- a/core/serialize_deserialize_test.js
+++ /dev/null
@@ -1,74 +0,0 @@
-// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
-"use strict";
-
-function assert(cond) {
- if (!cond) {
- throw Error("assert");
- }
-}
-
-function assertArrayEquals(a1, a2) {
- if (a1.length !== a2.length) throw Error("assert");
-
- for (const index in a1) {
- if (a1[index] !== a2[index]) {
- throw Error(`assert: (index ${index}) ${a1[index]} !== ${a2[index]}`);
- }
- }
-}
-
-function main() {
- const emptyString = "";
- const emptyStringSerialized = [255, 15, 34, 0];
- assertArrayEquals(
- Deno.core.ops.op_serialize(emptyString),
- emptyStringSerialized,
- );
- assert(
- Deno.core.ops.op_deserialize(
- new Uint8Array(emptyStringSerialized),
- ) ===
- emptyString,
- );
-
- const primitiveValueArray = ["test", "a", null, undefined];
- // deno-fmt-ignore
- const primitiveValueArraySerialized = [
- 255, 15, 65, 4, 34, 4, 116, 101, 115, 116,
- 34, 1, 97, 48, 95, 36, 0, 4,
- ];
- assertArrayEquals(
- Deno.core.ops.op_serialize(primitiveValueArray),
- primitiveValueArraySerialized,
- );
-
- assertArrayEquals(
- Deno.core.ops.op_deserialize(
- new Uint8Array(primitiveValueArraySerialized),
- ),
- primitiveValueArray,
- );
-
- const circularObject = { test: null, test2: "dd", test3: "aa" };
- circularObject.test = circularObject;
- // deno-fmt-ignore
- const circularObjectSerialized = [
- 255, 15, 111, 34, 4, 116, 101, 115,
- 116, 94, 0, 34, 5, 116, 101, 115,
- 116, 50, 34, 2, 100, 100, 34, 5,
- 116, 101, 115, 116, 51, 34, 2, 97,
- 97, 123, 3,
- ];
-
- assertArrayEquals(
- Deno.core.ops.op_serialize(circularObject),
- circularObjectSerialized,
- );
-
- const deserializedCircularObject = Deno.core.ops.op_deserialize(
- new Uint8Array(circularObjectSerialized),
- );
- assert(deserializedCircularObject.test == deserializedCircularObject);
-}
-
-main();