diff options
| author | Bertrand Yuan <noreply@bertyuan.com> | 2026-03-26 00:02:16 +0800 |
|---|---|---|
| committer | Bertrand Yuan <noreply@bertyuan.com> | 2026-03-26 00:02:16 +0800 |
| commit | 8a6a6712e7554f110b5ef951f270d88fd010e040 (patch) | |
| tree | 12cb86b1ede55e15600ef7f139ef7ec91b9fa8a1 /src/components/ui/card.test.tsx | |
| parent | f7a02fe0e112cf108fc5f22872f1efc077e99fe8 (diff) | |
add more tests
Diffstat (limited to 'src/components/ui/card.test.tsx')
| -rw-r--r-- | src/components/ui/card.test.tsx | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/components/ui/card.test.tsx b/src/components/ui/card.test.tsx new file mode 100644 index 0000000..aba3d00 --- /dev/null +++ b/src/components/ui/card.test.tsx @@ -0,0 +1,40 @@ +import { render, screen } from '@testing-library/react'; +import { describe, expect, test } from 'vitest'; +import { + Card, + CardAction, + CardContent, + CardDescription, + CardFooter, + CardHeader, + CardTitle, +} from './card'; + +describe('Card', () => { + test('renders all card slots', () => { + render( + <Card> + <CardHeader> + <CardTitle>Card Title</CardTitle> + <CardDescription>Card Description</CardDescription> + <CardAction>Action</CardAction> + </CardHeader> + <CardContent>Content</CardContent> + <CardFooter>Footer</CardFooter> + </Card>, + ); + + expect(screen.getByText('Card Title')).toHaveAttribute( + 'data-slot', + 'card-title', + ); + expect(screen.getByText('Card Description')).toHaveAttribute( + 'data-slot', + 'card-description', + ); + expect(screen.getByText('Action')).toHaveAttribute('data-slot', 'card-action'); + expect(screen.getByText('Content')).toHaveAttribute('data-slot', 'card-content'); + expect(screen.getByText('Footer')).toHaveAttribute('data-slot', 'card-footer'); + }); +}); + |
