Files
fotospiel-app/resources/js/admin/mobile/components/__tests__/LegalConsentSheet.test.tsx

42 lines
1.2 KiB
TypeScript

import React from 'react';
import { describe, expect, it, vi } from 'vitest';
import { render } from '@testing-library/react';
vi.mock('@tamagui/core', () => ({
useTheme: () => ({
primary: { val: '#FF5A5F' },
borderColor: { val: '#e5e7eb' },
surface: { val: '#ffffff' },
}),
}));
vi.mock('@tamagui/stacks', () => ({
YStack: ({ children }: { children: React.ReactNode }) => <div>{children}</div>,
XStack: ({ children }: { children: React.ReactNode }) => <div>{children}</div>,
}));
vi.mock('@tamagui/text', () => ({
SizableText: ({ children }: { children: React.ReactNode }) => <span>{children}</span>,
}));
vi.mock('@tamagui/react-native-web-lite', () => ({
Pressable: ({ children }: { children: React.ReactNode }) => <button type="button">{children}</button>,
}));
import { LegalConsentSheet } from '../LegalConsentSheet';
describe('LegalConsentSheet', () => {
it('renders the required consent checkboxes when open', () => {
const { getAllByRole } = render(
<LegalConsentSheet
open
onClose={vi.fn()}
onConfirm={vi.fn()}
t={(key, fallback) => fallback ?? key}
/>
);
expect(getAllByRole('checkbox')).toHaveLength(2);
});
});