mirror of
https://github.com/anomalyco/opencode.git
synced 2026-11-08 09:37:47 +03:00
34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
import { describe, expect, test } from "bun:test"
|
|
import { generate, mutate, normalizeHtml, patchmark, referenceCore, referenceGfm, rng } from "./fuzz"
|
|
import { isKnownGfmDivergence } from "./fuzz-known"
|
|
|
|
describe("differential fuzzing against commonmark 0.31.2 and micromark-gfm", () => {
|
|
test("zero core CommonMark diffs across 5,000 seeded generated + spec-mutated cases", () => {
|
|
const r = rng(0xc0ffeed0)
|
|
|
|
for (let i = 0; i < 5_000; i++) {
|
|
const md = i % 2 === 0 ? generate(r, false) : mutate(r)
|
|
const got = patchmark(md, false)
|
|
const want = referenceCore(md)
|
|
|
|
if (got !== want) {
|
|
expect({ case: i, md, got }).toEqual({ case: i, md, got: want })
|
|
}
|
|
}
|
|
})
|
|
|
|
test("zero unexplained GFM diffs across 2,000 seeded generated + spec-mutated cases", () => {
|
|
const r = rng(0xdecafbad)
|
|
|
|
for (let i = 0; i < 2_000; i++) {
|
|
const md = i % 2 === 0 ? generate(r, true) : mutate(r)
|
|
const got = normalizeHtml(patchmark(md, true))
|
|
const want = normalizeHtml(referenceGfm(md))
|
|
|
|
if (got !== want && !isKnownGfmDivergence(md, got, want)) {
|
|
expect({ case: i, md, got }).toEqual({ case: i, md, got: want })
|
|
}
|
|
}
|
|
})
|
|
})
|