@@ -11,28 +11,69 @@ ruleTester.run(RULE_NAME, rule, {
11
11
valid : [
12
12
{
13
13
code : `
14
- render(<Example />)
15
- screen.getByRole('button', {name: /click me/i})
14
+ render(<Example />);
15
+ screen.getByRole('button', {name: /click me/i});
16
16
` ,
17
17
} ,
18
18
{
19
19
code : `
20
- const { container } = render(<Example />)
21
- expect(container.firstChild).toBeDefined()
20
+ const { container } = render(<Example />);
21
+ expect(container.firstChild).toBeDefined();
22
22
` ,
23
23
} ,
24
24
{
25
25
code : `
26
- const { container: alias } = render(<Example />)
27
- expect(alias.firstChild).toBeDefined()
26
+ const { container: alias } = render(<Example />);
27
+ expect(alias.firstChild).toBeDefined();
28
+ ` ,
29
+ } ,
30
+ {
31
+ code : `
32
+ function getExampleDOM() {
33
+ const container = document.createElement('div');
34
+ container.innerHTML = \`
35
+ <label for="username">Username</label>
36
+ <input id="username" />
37
+ <button>Print Username</button>
38
+ \`;
39
+ const button = container.querySelector('button');
40
+
41
+ button.addEventListener('click', () => console.log('clicked'));
42
+ return container;
43
+ }
44
+
45
+ const exampleDOM = getExampleDOM();
46
+ screen.getByText(exampleDOM, 'Print Username').click();
28
47
` ,
29
48
} ,
30
49
] ,
31
50
invalid : [
32
51
{
33
52
code : `
34
- const { container } = render(<Example />)
35
- const button = container.querySelector('.btn-primary')
53
+ const { container } = render(<Example />);
54
+ const button = container.querySelector('.btn-primary');
55
+ ` ,
56
+ errors : [
57
+ {
58
+ messageId : 'noContainer' ,
59
+ } ,
60
+ ] ,
61
+ } ,
62
+ {
63
+ code : `
64
+ const { container } = render(<Example />);
65
+ container.querySelector();
66
+ ` ,
67
+ errors : [
68
+ {
69
+ messageId : 'noContainer' ,
70
+ } ,
71
+ ] ,
72
+ } ,
73
+ {
74
+ code : `
75
+ const { container: alias } = render(<Example />);
76
+ alias.querySelector();
36
77
` ,
37
78
errors : [
38
79
{
@@ -42,8 +83,7 @@ ruleTester.run(RULE_NAME, rule, {
42
83
} ,
43
84
{
44
85
code : `
45
- const { container } = render(<Example />)
46
- container.querySelector()
86
+ const button = screen.container.querySelector('.btn-primary')
47
87
` ,
48
88
errors : [
49
89
{
@@ -53,8 +93,8 @@ ruleTester.run(RULE_NAME, rule, {
53
93
} ,
54
94
{
55
95
code : `
56
- const { container: alias } = render(<Example />)
57
- alias. querySelector()
96
+ const view = render(<Example />)
97
+ const button = view.container. querySelector('.btn-primary' )
58
98
` ,
59
99
errors : [
60
100
{
@@ -64,8 +104,8 @@ ruleTester.run(RULE_NAME, rule, {
64
104
} ,
65
105
{
66
106
code : `
67
- const { container } = renderWithRedux(<Example />)
68
- container.querySelector()
107
+ const { container } = renderWithRedux(<Example />);
108
+ container.querySelector();
69
109
` ,
70
110
options : [
71
111
{
0 commit comments