From cadf54b927bc24a8de992dc7df9feff0655afa35 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 8 May 2024 11:21:05 +0200 Subject: [PATCH] Update pexpr tests --- .../packages/core/test/pexpr.test.ts | 24 ++++++++++++------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/implementations/javascript/packages/core/test/pexpr.test.ts b/implementations/javascript/packages/core/test/pexpr.test.ts index ee83efe..30ffb25 100644 --- a/implementations/javascript/packages/core/test/pexpr.test.ts +++ b/implementations/javascript/packages/core/test/pexpr.test.ts @@ -1,21 +1,27 @@ -import { Pexpr, stringify } from '../src/index'; +import { Pexpr, Value, fromJS, parse, stringify } from '../src/index'; import './test-utils'; +function P(s: string): Value[] { + return parse(s, { includeAnnotations: true }); +} + describe('basics', () => { it('simple example', () => { const r = new Pexpr.Reader('#!foo\n'); const d = r.nextDocument(); - console.dir(d, { depth: null }); - console.log(stringify(d, { indent: 4 })); - for (const p of d.get(0)!.item as Pexpr.Record) { - console.log(stringify(p.item, { indent: 4 })); - } + expect(fromJS(d)).is(P(`[\n#!foo\n + quux>

[a

b

c

]>]`)); + }); + + it('simple group', () => { + const r = new Pexpr.Reader('(+ 1 2)'); + expect(fromJS(r.nextDocument())).is(P('[]')); }); it('asPreserves', () => { - const d = new Pexpr.Reader('{a: b, c: d, e: [1, 2 ]}').nextDocument(); + const s = '{a: b, c: d, e: [1, 2 ]}'; + const d = new Pexpr.Reader(s).nextDocument(); const v = Pexpr.asPreserves(d.get(0)!); - console.log(stringify(v, { indent: 4 })); - console.log(stringify(d.get(0)!.item, { indent: 4 })); + expect(v).is(P(s)); }); });