-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dropdown.spec.ts
105 lines (92 loc) · 2.45 KB
/
Dropdown.spec.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
import { render, fireEvent } from "@testing-library/svelte";
import Dropdown from "../src/Dropdown.svelte";
import SlotTest from "../../../test/slot/SlotTest.svelte";
describe("Dropdown", () => {
//dropdown items
const items = [
{
label: "label 1",
disabled: false,
divider: false
},
{
label: "label 2",
disabled: false,
divider: false
},
{
label: "label 3",
disabled: false,
divider: false
}
];
//click dropdown
const propsClick = {
id: "id",
class: "dropdown-click-custom",
disabled: false,
items: items,
value: ["1", "2", "3"],
dropdownTriggerMode: "click"
};
//hover dropdown
const propsHover = {
id: "id",
class: "dropdown-click-custom",
disabled: false,
items: items,
value: ["1", "2", "3"],
dropdownTriggerMode: "hover"
};
//context dropdown
const propsContext = {
id: "id",
class: "dropdown-click-custom",
disabled: false,
items: items,
value: ["1", "2", "3"],
dropdownTriggerMode: "contextmenu"
};
describe("click dropdown", () => {
it("should render with click", () => {
const result = render(Dropdown, { propsClick });
expect(() => result).not.toThrow();
});
it("slot test", () => {
const result = render(SlotTest, {
props: { component: Dropdown, props: propsClick }
});
expect(() => result).not.toThrow();
});
// it("should have correct props", () => {
// const {container} = render(Dropdown, {propsClick});
// const dropdown = container.querySelector(".responsive-ui-dropdown") as HTMLElement;
// });
// it("should perform correct action", () => {
// });
});
describe("hover dropdown", () => {
it("should render with hover", () => {
const result = render(Dropdown, { propsHover });
expect(() => result).not.toThrow();
});
it("slot test", () => {
const result = render(SlotTest, {
props: { component: Dropdown, props: propsHover }
});
expect(() => result).not.toThrow();
});
});
describe("hover context", () => {
it("should render with context", () => {
const result = render(Dropdown, { propsContext });
expect(() => result).not.toThrow();
});
it("slot test", () => {
const result = render(SlotTest, {
props: { component: Dropdown, props: propsContext }
});
expect(() => result).not.toThrow();
});
});
});