41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
import { describe, expect, test, vi } from "vitest";
|
|
|
|
import { createAuthController } from "../src/background/auth/controller";
|
|
|
|
describe("background-auth-controller", () => {
|
|
test("returns unauthenticated state when the client is logged out", async () => {
|
|
const controller = createAuthController({
|
|
authClient: {
|
|
getAccessToken: vi.fn(),
|
|
getIdTokenClaims: vi.fn(),
|
|
isAuthenticated: vi.fn(async () => false),
|
|
signIn: vi.fn(),
|
|
signOut: vi.fn()
|
|
}
|
|
});
|
|
|
|
await expect(controller.getAuthState()).resolves.toEqual(
|
|
expect.objectContaining({
|
|
isAuthenticated: false
|
|
})
|
|
);
|
|
});
|
|
|
|
test("delegates sign in to the auth client", async () => {
|
|
const signIn = vi.fn(async () => undefined);
|
|
const controller = createAuthController({
|
|
authClient: {
|
|
getAccessToken: vi.fn(),
|
|
getIdTokenClaims: vi.fn(),
|
|
isAuthenticated: vi.fn(async () => false),
|
|
signIn,
|
|
signOut: vi.fn()
|
|
}
|
|
});
|
|
|
|
await controller.signIn();
|
|
|
|
expect(signIn).toHaveBeenCalledTimes(1);
|
|
});
|
|
});
|