UNPKG

@ton-community/tlb-runtime

Version:

TL‑B Runtime is a library for parsing and (de)serializing data according to TL‑B schemas

24 lines (23 loc) 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const core_1 = require("@ton/core"); const parser_1 = require("./parser"); const tesdata_1 = require("./tesdata"); describe('TLBRuntime', () => { describe('deserialize', () => { describe.each(Object.keys(tesdata_1.groupCorpusFlat))('%s', (group) => { it.each(tesdata_1.groupCorpusFlat[group])('deserialize %s', (schema, expected, boc) => { const actual = (0, parser_1.parseCell)(schema, core_1.Cell.fromHex(boc)); expect(JSON.stringify(actual, parser_1.replacer)).toEqual(JSON.stringify(expected, parser_1.replacer)); }); }); }); describe('serialize', () => { describe.each(Object.keys(tesdata_1.groupCorpusFlat))('serialize %s', (group) => { it.each(tesdata_1.groupCorpusFlat[group])('serialize %s', (schema, data, expected) => { const actual = (0, parser_1.encodeCell)(schema, data).toBoc().toString('hex'); expect(actual).toEqual(expected); }); }); }); });