feat: complete TASK-WP0-05 storage capacity
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
import { randomUUID } from "node:crypto";
|
||||
|
||||
import { describe, expect, it } from "vitest";
|
||||
|
||||
import { storageCapacityErrorDetails } from "../../apps/api/src/storage-policy.js";
|
||||
import { createErrorEnvelope, isErrorEnvelope } from "../../packages/shared-contracts/src/index.js";
|
||||
|
||||
describe("TDD-WP0-STO-002-over-limit API envelope", () => {
|
||||
it.each(["reference", "generated", "export", "sticker_original", "sticker_thumbnail"])(
|
||||
"returns stable 507 details for %s",
|
||||
(kind) => {
|
||||
const envelope = createErrorEnvelope({
|
||||
code: "STORAGE_CAPACITY_EXCEEDED",
|
||||
correlationId: randomUUID(),
|
||||
details: storageCapacityErrorDetails({
|
||||
activeReservationBytes: 0,
|
||||
managedContentBytes: 5_368_709_119,
|
||||
projectedWriteBytes: 2,
|
||||
}),
|
||||
});
|
||||
expect(isErrorEnvelope(envelope)).toBe(true);
|
||||
expect(envelope.error).toMatchObject({
|
||||
code: "STORAGE_CAPACITY_EXCEEDED",
|
||||
details: { capacity_status: "critical", remaining_bytes: 1 },
|
||||
message_key: "STORAGE_CAPACITY_EXCEEDED",
|
||||
});
|
||||
expect(kind).toBeTruthy();
|
||||
},
|
||||
);
|
||||
});
|
||||
Reference in New Issue
Block a user