Initial Commit
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
/**
|
||||
* DTP error-codes spec conformance — registry frozen, every code
|
||||
* usable to construct a `DriveTemplateError`, namespaced under `DTP.`.
|
||||
*/
|
||||
|
||||
import { describe, expect, it } from "@suaveplan/testing/runner";
|
||||
import { DriveTemplateError, DTP_CODES } from "../src/index.js";
|
||||
|
||||
describe("DTP_CODES is frozen", () => {
|
||||
it("DTP_CODES is frozen", { timeout: 5000 }, () => {
|
||||
expect(Object.isFrozen(DTP_CODES)).toBe(true);
|
||||
});
|
||||
|
||||
it("every value namespaced under DTP.", { timeout: 5000 }, () => {
|
||||
for (const v of Object.values(DTP_CODES)) {
|
||||
expect(v).toMatch(/^DTP\./);
|
||||
}
|
||||
});
|
||||
|
||||
it("every code constructs a DriveTemplateError that preserves it", {
|
||||
timeout: 5000,
|
||||
}, () => {
|
||||
for (const code of Object.values(DTP_CODES)) {
|
||||
const e = new DriveTemplateError(code, "ok");
|
||||
expect(e.code).toBe(code);
|
||||
}
|
||||
});
|
||||
|
||||
it("registry contains the eight pipeline + two operational codes", {
|
||||
timeout: 5000,
|
||||
}, () => {
|
||||
const expected = [
|
||||
"TEMPLATE_VERSION_UNSUPPORTED",
|
||||
"TEMPLATE_EXPIRED",
|
||||
"TEMPLATE_STALE",
|
||||
"TEMPLATE_REPLAY",
|
||||
"TEMPLATE_UNTRUSTED_ISSUER",
|
||||
"TEMPLATE_SIG_INVALID",
|
||||
"TEMPLATE_TOO_DEEP",
|
||||
"TEMPLATE_MALFORMED",
|
||||
"CDN_BAD_SIGNATURE",
|
||||
"KEY_GRANT_REJECTED",
|
||||
] as const;
|
||||
for (const k of expected) {
|
||||
expect(DTP_CODES).toHaveProperty(k);
|
||||
}
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user