diff options
| author | Arnaud Bailly <arnaud@pankzsoft.com> | 2026-08-30 18:13:01 +0200 |
|---|---|---|
| committer | Arnaud Bailly <arnaud@pankzsoft.com> | 2026-09-01 07:59:01 +0200 |
| commit | 32f9be77d18d3ad0cb86e7290c6df7c51ab99ca5 (patch) | |
| tree | 6633ba3302f8f294e4609aedf9ffdd3693b2ac11 /pbt/ts/src/gen.test.ts | |
| parent | b3285b3f5878d705fcbeb7165097b6623a02f553 (diff) | |
| download | lambda-nantes-32f9be77d18d3ad0cb86e7290c6df7c51ab99ca5.tar.gz | |
Flesh out simple integrated shrinker
Diffstat (limited to 'pbt/ts/src/gen.test.ts')
| -rw-r--r-- | pbt/ts/src/gen.test.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/pbt/ts/src/gen.test.ts b/pbt/ts/src/gen.test.ts new file mode 100644 index 0000000..eaba36f --- /dev/null +++ b/pbt/ts/src/gen.test.ts @@ -0,0 +1,19 @@ +import Prando from 'prando'; +import {none} from 'fp-ts/lib/Option.js'; +import * as G from './gen.js'; +import {test, expect} from 'vitest'; + +test('can generate and shrink bytes', async () => { + const prng = new Prando(Math.random() * 1000); + const gen = new G.BytesGen(prng); + const bytes: number[][] = []; + for (let i = 1; i < 10; i++) { + bytes.push(gen.generate(i)); + } + console.log('Generated bytes:', bytes); + const replay = gen.replay(); + for (let i = 1; i < 10; i++) { + const replayed = replay.generate(i); + expect(replayed, `Replaying at ${i}`).toEqual(bytes[i - 1]); + } +}); |
