Skip to content

Commit f3d8e5a

Browse files
committed
test: add keepMounted behavioral test for Tabs.Panel
Verify that a panel with keepMounted remains in the DOM even when its tab is not active.
1 parent 055d3f7 commit f3d8e5a

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

packages/core/src/components/tabs.test.tsx

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,4 +149,22 @@ describe("Tabs", () => {
149149

150150
expect(screen.getByText("Content 2")).toBeDefined();
151151
});
152+
153+
it("keeps panel in DOM when keepMounted is set", () => {
154+
render(
155+
<Tabs.Root defaultValue="tab1">
156+
<Tabs.List>
157+
<Tabs.Tab value="tab1">Tab 1</Tabs.Tab>
158+
<Tabs.Tab value="tab2">Tab 2</Tabs.Tab>
159+
</Tabs.List>
160+
<Tabs.Panel value="tab1">Content 1</Tabs.Panel>
161+
<Tabs.Panel value="tab2" keepMounted>
162+
Content 2
163+
</Tabs.Panel>
164+
</Tabs.Root>,
165+
);
166+
167+
// tab1 is active, but tab2's panel should remain in the DOM due to keepMounted
168+
expect(screen.getByText("Content 2")).toBeDefined();
169+
});
152170
});

0 commit comments

Comments
 (0)