UNPKG

@furystack/auth-google

Version:

Google Authentication Provider for FuryStack

28 lines 1.3 kB
import { Injector } from '@furystack/inject'; import { HttpUserContext } from '@furystack/rest-service'; import { usingAsync } from '@furystack/utils'; import { describe, expect, it, vi } from 'vitest'; import { GoogleLoginAction } from './login-action.js'; import { GoogleLoginService } from './login-service.js'; describe('GoogleLoginAction', () => { const request = { url: 'https://google.com' }; const response = {}; it('Should be activated and disposed', async () => { await usingAsync(new Injector(), async (i) => { const testUser = { username: 'example', roles: [] }; const cookieLogin = vi.fn(() => Promise.resolve(testUser)); i.setExplicitInstance(i.getInstance(GoogleLoginService)); i.getInstance(GoogleLoginService).login = () => Promise.resolve(testUser); i.setExplicitInstance({ cookieLogin }, HttpUserContext); const result = await GoogleLoginAction({ request, response, injector: i, getBody: () => Promise.resolve({ token: 'asd123' }), }); expect(cookieLogin).toBeCalled(); expect(result.chunk.username).toBe('example'); }); }); }); //# sourceMappingURL=google-login-action.spec.js.map