import { adminConsoleApplicationId } from '@logto/schemas/lib/seeds'; import { assert } from '@silverhand/essentials'; import { getWellKnownSignInExperience } from '@/api'; import MockClient from '@/client'; import { adminConsoleRedirectUri } from '@/constants'; describe('wellknown api', () => { it('get /.well-known/sign-in-exp for AC', async () => { const client = new MockClient({ appId: adminConsoleApplicationId }); await client.initSession(adminConsoleRedirectUri); assert(client.interactionCookie, new Error('Session not found')); const response = await getWellKnownSignInExperience(client.interactionCookie); expect(response).toMatchObject({ signUp: { identifier: 'username', password: true, verify: false, }, signIn: { methods: [ { identifier: 'username', password: true, verificationCode: false, isPasswordPrimary: true, }, ], }, signInMode: 'SignIn', }); }); it('get /.well-known/sign-in-exp for general app', async () => { const client = new MockClient(); await client.initSession(); assert(client.interactionCookie, new Error('Session not found')); const response = await getWellKnownSignInExperience(client.interactionCookie); // Should support sign-in and register expect(response).toMatchObject({ signInMode: 'SignInAndRegister' }); }); });