Skip to content

Commit cee6fbb

Browse files
committed
chore: reorder rule test cases
1 parent 9ae181d commit cee6fbb

92 files changed

Lines changed: 12173 additions & 10734 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

plugins/eslint-plugin-react-debug/src/rules/function-component/function-component.spec.ts

Lines changed: 452 additions & 452 deletions
Large diffs are not rendered by default.

plugins/eslint-plugin-react-debug/src/rules/hook/hook.spec.ts

Lines changed: 67 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,19 @@ ruleTester.run(RULE_NAME, rule, {
2727
},
2828
{
2929
code: tsx`
30-
// 🔴 Avoid: A Hook that doesn't use Hooks
31-
function useSorted(items) {
32-
return items.slice().sort();
30+
function useMultipleHooks() {
31+
const [state] = useState(0);
32+
useEffect(() => {});
33+
useCallback(() => {}, []);
34+
return state;
3335
}
3436
`,
3537
errors: [
3638
{
3739
data: {
3840
json: stringify({
39-
name: "useSorted",
40-
hookCalls: 0,
41+
name: "useMultipleHooks",
42+
hookCalls: 3,
4143
}),
4244
},
4345
messageId: "default",
@@ -46,26 +48,12 @@ ruleTester.run(RULE_NAME, rule, {
4648
},
4749
{
4850
code: tsx`
49-
function useToggle() {
50-
const [value, setValue] = useState(false);
51-
return [value, () => setValue(x => !x)];
52-
}
53-
5451
// 🔴 Avoid: A Hook that doesn't use Hooks
5552
function useSorted(items) {
5653
return items.slice().sort();
5754
}
5855
`,
5956
errors: [
60-
{
61-
data: {
62-
json: stringify({
63-
name: "useToggle",
64-
hookCalls: 1,
65-
}),
66-
},
67-
messageId: "default",
68-
},
6957
{
7058
data: {
7159
json: stringify({
@@ -79,7 +67,7 @@ ruleTester.run(RULE_NAME, rule, {
7967
},
8068
{
8169
code: tsx`
82-
const useClassnames = (obj) => {
70+
function useClassnames(obj) {
8371
// Invalid, because useClassnames doesn't use any other React Hooks.
8472
var k, cls='';
8573
for (k in obj) {
@@ -105,7 +93,7 @@ ruleTester.run(RULE_NAME, rule, {
10593
},
10694
{
10795
code: tsx`
108-
function useClassnames(obj) {
96+
const useClassnames = (obj) => {
10997
// Invalid, because useClassnames doesn't use any other React Hooks.
11098
var k, cls='';
11199
for (k in obj) {
@@ -131,20 +119,55 @@ ruleTester.run(RULE_NAME, rule, {
131119
},
132120
{
133121
code: tsx`
134-
export function useNestedHook() {
135-
const [state, setState] = useState("state");
136-
const useInnerHook = () => {
137-
return "inner hook";
138-
};
122+
const useExpressionBody = () => useState(0);
123+
`,
124+
errors: [
125+
{
126+
data: {
127+
json: stringify({
128+
name: "useExpressionBody",
129+
hookCalls: 1,
130+
}),
131+
},
132+
messageId: "default",
133+
},
134+
],
135+
},
136+
{
137+
code: tsx`
138+
const useExpressionHook = function() {
139+
return useState(0);
140+
};
141+
`,
142+
errors: [
143+
{
144+
data: {
145+
json: stringify({
146+
name: "useExpressionHook",
147+
hookCalls: 1,
148+
}),
149+
},
150+
messageId: "default",
151+
},
152+
],
153+
},
154+
{
155+
code: tsx`
156+
function useToggle() {
157+
const [value, setValue] = useState(false);
158+
return [value, () => setValue(x => !x)];
159+
}
139160
140-
return [state, setState, useInnerHook] as const;
161+
// 🔴 Avoid: A Hook that doesn't use Hooks
162+
function useSorted(items) {
163+
return items.slice().sort();
141164
}
142165
`,
143166
errors: [
144167
{
145168
data: {
146169
json: stringify({
147-
name: "useNestedHook",
170+
name: "useToggle",
148171
hookCalls: 1,
149172
}),
150173
},
@@ -153,7 +176,7 @@ ruleTester.run(RULE_NAME, rule, {
153176
{
154177
data: {
155178
json: stringify({
156-
name: "useInnerHook",
179+
name: "useSorted",
157180
hookCalls: 0,
158181
}),
159182
},
@@ -164,9 +187,9 @@ ruleTester.run(RULE_NAME, rule, {
164187
{
165188
code: tsx`
166189
export function useNestedHook() {
190+
const [state, setState] = useState("state");
167191
const useInnerHook = () => {
168-
const [state, setState] = useState("state");
169-
return state;
192+
return "inner hook";
170193
};
171194
172195
return [state, setState, useInnerHook] as const;
@@ -177,7 +200,7 @@ ruleTester.run(RULE_NAME, rule, {
177200
data: {
178201
json: stringify({
179202
name: "useNestedHook",
180-
hookCalls: 0,
203+
hookCalls: 1,
181204
}),
182205
},
183206
messageId: "default",
@@ -186,7 +209,7 @@ ruleTester.run(RULE_NAME, rule, {
186209
data: {
187210
json: stringify({
188211
name: "useInnerHook",
189-
hookCalls: 1,
212+
hookCalls: 0,
190213
}),
191214
},
192215
messageId: "default",
@@ -196,7 +219,7 @@ ruleTester.run(RULE_NAME, rule, {
196219
{
197220
code: tsx`
198221
export function useNestedHook() {
199-
const fn = () => {
222+
const useInnerHook = () => {
200223
const [state, setState] = useState("state");
201224
return state;
202225
};
@@ -214,17 +237,10 @@ ruleTester.run(RULE_NAME, rule, {
214237
},
215238
messageId: "default",
216239
},
217-
],
218-
},
219-
{
220-
code: tsx`
221-
const useExpressionBody = () => useState(0);
222-
`,
223-
errors: [
224240
{
225241
data: {
226242
json: stringify({
227-
name: "useExpressionBody",
243+
name: "useInnerHook",
228244
hookCalls: 1,
229245
}),
230246
},
@@ -234,19 +250,21 @@ ruleTester.run(RULE_NAME, rule, {
234250
},
235251
{
236252
code: tsx`
237-
function useMultipleHooks() {
238-
const [state] = useState(0);
239-
useEffect(() => {});
240-
useCallback(() => {}, []);
241-
return state;
253+
export function useNestedHook() {
254+
const fn = () => {
255+
const [state, setState] = useState("state");
256+
return state;
257+
};
258+
259+
return [state, setState, useInnerHook] as const;
242260
}
243261
`,
244262
errors: [
245263
{
246264
data: {
247265
json: stringify({
248-
name: "useMultipleHooks",
249-
hookCalls: 3,
266+
name: "useNestedHook",
267+
hookCalls: 0,
250268
}),
251269
},
252270
messageId: "default",
@@ -271,24 +289,6 @@ ruleTester.run(RULE_NAME, rule, {
271289
},
272290
],
273291
},
274-
{
275-
code: tsx`
276-
const useExpressionHook = function() {
277-
return useState(0);
278-
};
279-
`,
280-
errors: [
281-
{
282-
data: {
283-
json: stringify({
284-
name: "useExpressionHook",
285-
hookCalls: 1,
286-
}),
287-
},
288-
messageId: "default",
289-
},
290-
],
291-
},
292292
{
293293
code: tsx`
294294
function useMotionStyle() {

0 commit comments

Comments
 (0)