-
-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathtypes.ts
More file actions
111 lines (92 loc) · 2.04 KB
/
Copy pathtypes.ts
File metadata and controls
111 lines (92 loc) · 2.04 KB
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
106
107
108
109
110
111
/**
* Event spy for testing custom events
*/
export interface EventSpy {
/**
* Name of the event being spied on
*/
eventName: string;
/**
* All events that have been received
*/
events: CustomEvent[];
/**
* First event received (if any)
*/
firstEvent: CustomEvent | undefined;
/**
* Last event received (if any)
*/
lastEvent: CustomEvent | undefined;
/**
* Number of events received
*/
length: number;
}
import type { SpyConfig } from './testing/spy-helper.js';
/**
* Component render options
*/
export interface RenderOptions {
/**
* Props to pass to the component
*/
props?: Record<string, any>;
/**
* Slots content (for shadow DOM components)
*/
slots?: Record<string, string | HTMLElement>;
/**
* HTML content to place inside the component
*/
html?: string;
/**
* Wait for component to be loaded before returning
* @default true
*/
waitForLoad?: boolean;
/**
* Additional HTML attributes
*/
attributes?: Record<string, string>;
/**
* Spy configuration for this render call. Spies on methods, props, and lifecycle hooks.
* Takes priority over module-level spyOnComponent() calls.
*/
spyOn?: SpyConfig;
}
import type { ComponentSpies } from './testing/spy-helper.js';
/**
* Render result for component testing
*/
export interface RenderResult<T = HTMLElement, I = any> {
/**
* The rendered root element
*/
root: T;
/**
* Wait for changes to be applied
*/
waitForChanges: () => Promise<void>;
/**
* Tries to get the underlying class instance when `root` is a Stencil component.
* If using `dist-custom-elements`, `instance` === `root`.
*/
instance?: I;
/**
* Update component props
*/
setProps: (props: Record<string, any>) => Promise<void>;
/**
* Unmount/cleanup the component
*/
unmount: () => void;
/**
* Spy on a custom event
*/
spyOnEvent: (eventName: string) => EventSpy;
/**
* Component spies (only present when `spyOn` option is used)
*/
spies?: ComponentSpies;
}