feat(devops): diagnose slow HK requests and dependency timings
This commit is contained in:
1 parent
3b76d063a6
commit
00e33623f7
42 files changed
+1335
-132
No files matched your search
@@ -6,6 +6,7 @@ const state = vi.hoisted(() => ({
|
||||
authorized: true,
|
||||
permitted: true,
|
||||
csrf: true,
|
||||
record: vi.fn(),
|
||||
}));
|
||||
vi.mock("@/lib/admin/authorization-events", () => ({
|
||||
logAuthorizationEvent: vi.fn(),
|
||||
@@ -20,6 +21,7 @@ vi.mock("@/lib/permissions", () => ({
|
||||
: null,
|
||||
canAccess: () => state.permitted,
|
||||
}));
|
||||
vi.mock("@/lib/performance-store", () => ({ recordPerformance: state.record }));
|
||||
vi.mock("@/lib/server-log", () => ({
|
||||
logServerError: () => "error-reference",
|
||||
}));
|
||||
@@ -40,6 +42,7 @@ describe("admin API correlation", () => {
|
||||
state.authorized = true;
|
||||
state.permitted = true;
|
||||
state.csrf = true;
|
||||
state.record.mockClear();
|
||||
});
|
||||
it("matches the response ID to asynchronous work without trusting a supplied ID", async () => {
|
||||
const handler = withAdmin({ permission: "users.view" }, async () => {
|
||||
@@ -108,6 +111,9 @@ describe("admin API correlation", () => {
|
||||
controller?.enqueue(new TextEncoder().encode("data: last\n\n"));
|
||||
controller?.close();
|
||||
expect(await body).toBe("data: first\n\ndata: last\n\n");
|
||||
expect(state.record).toHaveBeenCalledWith(
|
||||
expect.objectContaining({ streaming: true }),
|
||||
);
|
||||
});
|
||||
it("adds correlation to authentication, permission and handler failures", async () => {
|
||||
const handler = withAdmin({ permission: "users.view" }, () => {
|
||||
@@ -116,6 +122,7 @@ describe("admin API correlation", () => {
|
||||
state.authorized = false;
|
||||
const unauthorized = await handler(request());
|
||||
expect(unauthorized.status).toBe(401);
|
||||
expect(state.record).not.toHaveBeenCalled();
|
||||
expect(unauthorized.headers.get("x-operation-id")).toBeTruthy();
|
||||
state.authorized = true;
|
||||
state.permitted = false;
|
||||
|
||||
Reference in new issue
Block a user