summaryrefslogtreecommitdiff
path: root/src/components/ui/card.test.tsx
diff options
context:
space:
mode:
authorBertrand Yuan <189593334+bertyuan@users.noreply.github.com>2026-04-07 08:38:43 +0800
committerGitHub <noreply@github.com>2026-04-07 08:38:43 +0800
commit2ef9e56c390508f52d8734ba36fa4a23bec3558e (patch)
treeef5c68f99f0d976c2fc3e6a131d390935a870e53 /src/components/ui/card.test.tsx
parentae53c20c22b97440b7b0680bf823c523e9486441 (diff)
parent18fc18761dbefc2ab2fbaf93e1fe433eb0b47b37 (diff)
Merge pull request #15 from bertyuan/tast
A small portion of newly added unit testing code
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();
+ });
});