summaryrefslogtreecommitdiff
path: root/src/components/ui/card.test.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/ui/card.test.tsx')
-rw-r--r--src/components/ui/card.test.tsx24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/components/ui/card.test.tsx b/src/components/ui/card.test.tsx
index aba3d00..0c29c5d 100644
--- a/src/components/ui/card.test.tsx
+++ b/src/components/ui/card.test.tsx
@@ -36,5 +36,29 @@ describe('Card', () => {
expect(screen.getByText('Content')).toHaveAttribute('data-slot', 'card-content');
expect(screen.getByText('Footer')).toHaveAttribute('data-slot', 'card-footer');
});
+
+ test('appends custom class names correctly', () => {
+ render(
+ <Card className="my-custom-card-class">
+ <CardContent className="my-custom-content-class">Content</CardContent>
+ </Card>
+ );
+
+ const cardElement = screen.getByText('Content').parentElement; // 或者直接给 Card 加个 data-testid
+ expect(cardElement).toHaveClass('my-custom-card-class');
+ expect(screen.getByText('Content')).toHaveClass('my-custom-content-class');
+ });
+
+ test('passes standard HTML attributes to the DOM node', () => {
+ render(
+ <Card id="test-card" aria-label="Test Card">
+ <CardContent data-testid="content-id">Content</CardContent>
+ </Card>
+ );
+
+ const cardElement = screen.getByLabelText('Test Card');
+ expect(cardElement).toHaveAttribute('id', 'test-card');
+ expect(screen.getByTestId('content-id')).toBeInTheDocument();
+ });
});