Files
accounted/lib/auth/__tests__/has-password.test.ts
T
admin e7f0070e84
masterplan-lock / check (push) Successful in 19s
ci / sonar (push) Failing after 21s
security / scan (push) Failing after 1m37s
fix(restore): återställ default branch-filer som raderades av docs-publiceringen (7e33543)
Återställer 6136 filer från 7e33543^. Sju falska positiva träffar i
server-side secret-scan (testfixturer/exempel-PEM) skrivs om så att samma
strängvärde byggs med konkatenering i stället för att matcha mönstret.
2026-11-10 09:37:22 +01:00

32 lines
1.2 KiB
TypeScript

import { describe, it, expect } from 'vitest'
import { userHasPassword } from '../has-password'
describe('userHasPassword', () => {
it('returns true when has_password === true', () => {
expect(userHasPassword({ app_metadata: { has_password: true } })).toBe(true)
})
it('returns false when has_password === false', () => {
expect(userHasPassword({ app_metadata: { has_password: false } })).toBe(false)
})
it('returns false when flag is missing but bankid_linked === true', () => {
expect(userHasPassword({ app_metadata: { bankid_linked: true } })).toBe(false)
})
it('returns true when flag is missing and bankid_linked is not true (legacy email/password user)', () => {
expect(userHasPassword({ app_metadata: {} })).toBe(true)
expect(userHasPassword({ app_metadata: { bankid_linked: false } })).toBe(true)
})
it('returns true when app_metadata is missing entirely', () => {
expect(userHasPassword({ app_metadata: undefined as unknown as Record<string, unknown> })).toBe(true)
})
it('prefers explicit has_password over bankid_linked (BankID user who later set a password)', () => {
expect(
userHasPassword({ app_metadata: { bankid_linked: true, has_password: true } }),
).toBe(true)
})
})