MCPcopy Create free account
hub / github.com/apache/fory / ensureSerializationWorks

Function ensureSerializationWorks

benchmarks/javascript/benchmark.js:830–848  ·  view source on GitHub ↗
(dataset)

Source from the content-addressed store, hash-verified

828}
829
830function ensureSerializationWorks(dataset) {
831 const value = dataset.createValue();
832 const foryValue = normalizeForyValue(dataset.key, value);
833 const foryBytes = dataset.foryWriter.serialize(foryValue);
834 const foryRoundTrip = dataset.foryReader.deserialize(foryBytes);
835 assert.deepStrictEqual(
836 normalizeForyRoundTripValue(dataset.key, foryRoundTrip),
837 foryValue
838 );
839
840 const protoPayload = dataset.toProto(value);
841 const protoBytes = dataset.protoType.encode(dataset.protoType.create(protoPayload)).finish();
842 const protoRoundTrip = dataset.fromProto(decodeProtoObject(dataset.protoType, protoBytes));
843 assert.deepStrictEqual(protoRoundTrip, normalizeProtobufValue(dataset.key, value));
844
845 const jsonBytes = Buffer.from(JSON.stringify(value), "utf8");
846 const jsonRoundTrip = JSON.parse(jsonBytes.toString("utf8"));
847 assert.deepStrictEqual(jsonRoundTrip, value);
848}
849
850function verifySchemaMismatch(dataset) {
851 const value = dataset.createValue();

Callers

nothing calls this directly

Calls 14

normalizeForyValueFunction · 0.85
decodeProtoObjectFunction · 0.85
normalizeProtobufValueFunction · 0.85
toProtoMethod · 0.80
fromProtoMethod · 0.80
serializeMethod · 0.65
deserializeMethod · 0.65
encodeMethod · 0.65
toStringMethod · 0.65
finishMethod · 0.45
createMethod · 0.45

Tested by

no test coverage detected