mirror of
https://github.com/formbricks/formbricks.git
synced 2026-05-07 19:30:07 -05:00
46 lines
1.4 KiB
TypeScript
46 lines
1.4 KiB
TypeScript
import { describe, expect, test, vi } from "vitest";
|
|
import { createGatewayServiceTokenResponse } from "./token";
|
|
|
|
const { mockCreateGatewayServiceToken } = vi.hoisted(() => ({
|
|
mockCreateGatewayServiceToken: vi.fn(),
|
|
}));
|
|
|
|
vi.mock("@/lib/jwt", () => ({
|
|
createGatewayServiceToken: mockCreateGatewayServiceToken,
|
|
}));
|
|
|
|
describe("createGatewayServiceTokenResponse", () => {
|
|
test("returns 401 when no authenticated user is present", () => {
|
|
const response = createGatewayServiceTokenResponse(null, "feedbackRecords");
|
|
|
|
expect(response.status).toBe(401);
|
|
expect(mockCreateGatewayServiceToken).not.toHaveBeenCalled();
|
|
});
|
|
|
|
test("returns the minted token payload for the requested service", async () => {
|
|
mockCreateGatewayServiceToken.mockReturnValue({
|
|
token: "gateway-token",
|
|
expiresAt: "2026-04-24T00:10:00.000Z",
|
|
});
|
|
|
|
const response = createGatewayServiceTokenResponse(
|
|
{
|
|
user: {
|
|
id: "user_1",
|
|
name: "Test User",
|
|
email: "test@example.com",
|
|
},
|
|
expires: "2026-04-25T00:00:00.000Z",
|
|
},
|
|
"feedbackRecords"
|
|
);
|
|
|
|
expect(response.status).toBe(200);
|
|
await expect(response.json()).resolves.toEqual({
|
|
token: "gateway-token",
|
|
expiresAt: "2026-04-24T00:10:00.000Z",
|
|
});
|
|
expect(mockCreateGatewayServiceToken).toHaveBeenCalledWith("user_1", "feedbackRecords");
|
|
});
|
|
});
|