5180 fichiers 38.5 Mo 0 téléchargements 287 vues mis à jour il y a 6 heures ui
nitro-v36-with-renderer-v36 / src / components / help / views / MyReportsStatusView.test.tsx
MyReportsStatusView.test.tsx 1.9 Ko Télécharger le fichier
import { act, cleanup, render, screen } from '@testing-library/react';
import { afterEach, describe, expect, it, vi } from 'vitest';

let handler: (event: unknown) => void = () => undefined;

vi.mock('@octane/renderer', () => ({
    AppealReportMessageComposer: class {},
    MyReportsStatusMessageEvent: class {},
    MyReportStatusData: { APPEAL_NONE: 0, APPEAL_PENDING: 1, APPEAL_ACTION: 2, APPEAL_NO_ACTION: 3 }
}));
vi.mock('../../../api', () => ({ localizeWithFallback: (_key: string, fallback: string) => fallback, SendMessageComposer: vi.fn() }));
vi.mock('../../../common', () => ({
    OctaneCardView: (props: { children: unknown }) => <div>{props.children as never}</div>,
    OctaneCardContentView: (props: { children: unknown }) => <div>{props.children as never}</div>,
    OctaneCardHeaderView: (props: { headerText: string }) => <h1>{props.headerText}</h1>
}));
vi.mock('../../../hooks', () => ({ useMessageEvent: (_type: unknown, callback: (event: unknown) => void) => { handler = callback; } }));
vi.mock('../../../layout', () => ({ OctaneButton: (props: { children: unknown }) => <button>{props.children as never}</button> }));

const { MyReportsStatusView } = await import('./MyReportsStatusView');

afterEach(cleanup);

describe('MyReportsStatusView', () => {
    it('uses the columns and states of the official table', () => {
        render(<MyReportsStatusView />);
        act(() =>
            handler({
                getParser: () => ({ reports: [{ id: 1, creationTime: 0, closeTime: 5, sanctioned: false, appealStatus: 0, reportedAccountName: 'tester', userMessage: 'g'.repeat(80) }] })
            })
        );

        expect(screen.getByText('Report date')).toBeTruthy();
        expect(screen.getByText('Account')).toBeTruthy();
        expect(screen.getByText('Decided')).toBeTruthy();
        expect(screen.getByText('No action taken')).toBeTruthy();
        expect(screen.getByText('Appeal')).toBeTruthy();
    });
});
15Sujets
1Dépôts
20Membres
2En ligne
Profile
Inscrit
Dernière visite
Messages
0
Votes positifs
0
Votes négatifs
0

Nous utilisons des cookies pour assurer le bon fonctionnement du site et améliorer votre expérience. en savoir plus

Autoriser