mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-15 02:11:05 +00:00
test: scaffold component testing with Vitest
This commit is contained in:
parent
89387004a3
commit
8b477b12f9
9 changed files with 2324 additions and 39 deletions
40
tests/TreeView/TreeView.test.ts
Normal file
40
tests/TreeView/TreeView.test.ts
Normal file
|
@ -0,0 +1,40 @@
|
|||
import { render, screen } from "@testing-library/svelte";
|
||||
import { user } from "../setup-tests";
|
||||
import TreeView from "./TreeView.test.svelte";
|
||||
|
||||
describe("TreeView", () => {
|
||||
const getItemByName = (name: RegExp) => {
|
||||
return screen.getByRole("treeitem", {
|
||||
name,
|
||||
selected: false,
|
||||
});
|
||||
};
|
||||
|
||||
const getSelectedItemByName = (name: RegExp) => {
|
||||
return screen.getByRole("treeitem", {
|
||||
name,
|
||||
selected: true,
|
||||
});
|
||||
};
|
||||
|
||||
it("can select a node", async () => {
|
||||
const consoleLog = vi.spyOn(console, "log");
|
||||
|
||||
render(TreeView);
|
||||
|
||||
const firstItem = getItemByName(/AI \/ Machine learning/);
|
||||
expect(firstItem).toBeInTheDocument();
|
||||
|
||||
await user.click(firstItem);
|
||||
expect(getSelectedItemByName(/AI \/ Machine learning/)).toBeInTheDocument();
|
||||
expect(consoleLog).toBeCalledWith("selectedIds", [0]);
|
||||
expect(consoleLog).toBeCalledWith("select", {
|
||||
disabled: false,
|
||||
expanded: false,
|
||||
id: 0,
|
||||
leaf: true,
|
||||
selected: false,
|
||||
text: "AI / Machine learning",
|
||||
});
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue