amanpay / web /src /pages /ReportCardPage.test.tsx
MHamdan's picture
CI deploy f5b3d10
70332a1 verified
Raw
History Blame Contribute Delete
1.21 kB
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest'
import { render, screen, waitFor } from '@testing-library/react'
import { I18nProvider } from '../i18n'
import { ReportCardPage } from './ReportCardPage'
import * as client from '../api/client'
const renderRC = () => render(<I18nProvider initial="en"><ReportCardPage /></I18nProvider>)
describe('ReportCardPage — F1 regression', () => {
beforeEach(() => vi.restoreAllMocks())
afterEach(() => vi.restoreAllMocks())
it('shows "unavailable" when only a non-numeric note is present (null EERs)', async () => {
vi.spyOn(client, 'apiRequest').mockResolvedValue({
recognition: { face_LFW_EER: null, fingerprint_SOCOFing_EER: null, note: 'face: CASIA-WebFace->LFW' },
} as never)
renderRC()
await waitFor(() => expect(screen.getByText('Benchmark data unavailable')).toBeInTheDocument())
})
it('shows "available" only when a numeric benchmark value exists', async () => {
vi.spyOn(client, 'apiRequest').mockResolvedValue({
recognition: { face_LFW_EER: 0.0175, note: 'x' },
} as never)
renderRC()
await waitFor(() => expect(screen.getByText('Available')).toBeInTheDocument())
})
})