AnasSarkiz/usb-c-pd-brushed-motor
USB-C PD-powered motor controller with protected input, selectable 5/9/12 V buck supply, MCU qualification, PWM H-bridge drive, overvoltage sensing, regenerative energy-dump resistors, and safety interlocks.
- Version
- 0.0.1-a48-cloud-pipeline9-unrouted-c41d79a-305b1e7a
- License
- unset
- Stars
- 0
tests/pd-sequence.test.ts
import { expect, test } from "bun:test"
import { spawnSync } from "node:child_process"
test("compiled C power sequence inhibits stale contracts and unsafe voltage changes", () => {
const executable = "evidence/pd-sequence-bun-test-A22"
const compile = spawnSync(
process.env.CC ?? "clang",
[
"-std=c11",
"-Wall",
"-Wextra",
"-Werror",
"firmware/pd_policy.c",
"firmware/pd_sequence.c",
"firmware/pd_sequence_test.c",
"-o",
executable,
],
{ encoding: "utf8" },
)
expect(compile.status, compile.stderr).toBe(0)
const result = spawnSync(`./${executable}`, [], { encoding: "utf8" })
expect(result.status, result.stderr).toBe(0)
expect(result.stdout).toContain("PD sequence host tests passed")
})