UNPKG

@ton-community/tlb-parser

Version:

Parse TLB syntax into TypeScript objects

32 lines (27 loc) 794 B
import fs from 'fs' import path from 'path' import dedent from 'dedent' import yaml from 'js-yaml' interface OneLinerTestCase { case: string code: string error: string | undefined errorStart: string | undefined result: string | undefined skip: boolean } export function loadYamlCases(...pathParts: string[]): OneLinerTestCase[] { const cases = yaml.load(fs.readFileSync( path.resolve(...pathParts), 'utf-8', )) as OneLinerTestCase[] return cases.map((caseDef: OneLinerTestCase): OneLinerTestCase => { return { ...caseDef, 'code': dedent(caseDef.code), 'error': caseDef.error !== undefined ? dedent(caseDef.error) : undefined, 'errorStart': caseDef.errorStart !== undefined ? dedent(caseDef.errorStart) : undefined, } }) }