Project status: Decommissioned
This project explored a YAML-based format to author unit tests quickly. While useful in places, our current practice favors classic unit tests supported by generative AI and small helper libraries. As a result, baldrick-zest-engine is decommissioned and not recommended for new work.
Highlights:
- Written in
TypeScript
(ESM).
- Maintenance and onboarding costs outweighed benefits of YAML indirection.
- Modern AI-assisted workflows make writing conventional tests fast and clearer.
- Existing ecosystem tools (Node test runner, Vitest/Jest) cover the needs better.
- Write classic tests (Node
--test
, Vitest, or Jest) and use generative AI to scaffold cases. - Compose data shaping with helpers like:
object-crumble
for structured object mutation/abstractionbaldrick-zest-mess
for lightweight table-driven and diff helpers
Example (Node test runner):
// test/my-feature.test.ts
import { strict as assert } from 'node:assert';
const addPrefix = (p: string, v: string) => `${p}${v}`;
test('adds prefix', () => {
assert.equal(addPrefix('pre-', 'value'), 'pre-value');
});
// Table-driven
for (const [p, v, out] of [
['pre-', 'a', 'pre-a'],
['x-', 'b', 'x-b'],
]) {
test(`adds prefix ${p} to ${v}`, () => {
assert.equal(addPrefix(p, v), out);
});
}
- No new features planned; security updates only (if any).
- Consider migrating YAML specs to equivalent TypeScript tests using the example above and helpers as needed.
- Legacy docs (for reference only):
- Recommended: baldrick-zest-mess
- Recommended: object-crumble
This package is ESM-only. Installation is not recommended for new projects; retained for archival testing only.
npx baldrick-zest-engine --help
To inspect the repository locally:
git clone https://github.com/flarebyte/baldrick-zest-engine.git
cd baldrick-zest-engine
yarn