@@ -6,7 +6,7 @@ const util = require('../util');
6
6
7
7
function hasAwaitExpression ( nodes ) {
8
8
if ( ! nodes ) {
9
- return false
9
+ return false ;
10
10
}
11
11
12
12
for ( const node of nodes ) {
@@ -24,10 +24,10 @@ function hasAwaitExpression(nodes) {
24
24
25
25
// Make the rule passes if a return statement is found.
26
26
if ( node . type === 'ReturnStatement' ) {
27
+ // eslint-disable-next-line no-throw-literal
27
28
throw undefined ;
28
29
}
29
30
30
-
31
31
if ( node . expressions && hasAwaitExpression ( node . expressions ) ) {
32
32
return true ;
33
33
}
@@ -37,7 +37,7 @@ function hasAwaitExpression(nodes) {
37
37
}
38
38
39
39
if ( node . type === 'MemberExpression' && hasAwaitExpression ( [ node . object , node . property ] ) ) {
40
- return true
40
+ return true ;
41
41
}
42
42
43
43
if ( ( node . type === 'CallExpression' || node . type === 'NewExpression' )
@@ -66,9 +66,9 @@ function hasAwaitExpression(nodes) {
66
66
return true ;
67
67
}
68
68
69
- if ( node . type === 'SwitchStatement' && hasAwaitExpression ( [ node . discriminant , ... node . cases . flatMap ( caseNode => {
70
- return [ caseNode . test ] . concat ( caseNode . consequent ) ;
71
- } ) ] ) ) {
69
+ if ( node . type === 'SwitchStatement'
70
+ // eslint-disable-next-line unicorn/prefer-spread
71
+ && hasAwaitExpression ( [ node . discriminant , ... node . cases . flatMap ( caseNode => [ caseNode . test ] . concat ( caseNode . consequent ) ) ] ) ) {
72
72
return true ;
73
73
}
74
74
@@ -109,14 +109,13 @@ const create = context => {
109
109
return ;
110
110
}
111
111
112
- const tFailIndex = [ ...nodes ] . reverse ( ) . findIndex ( node => {
113
- return node . type === 'ExpressionStatement'
114
- && node . expression . type === 'CallExpression'
115
- && node . expression . callee . object
116
- && node . expression . callee . object . name === 't'
117
- && node . expression . callee . property
118
- && node . expression . callee . property . name === 'fail' ;
119
- } ) ;
112
+ const tFailIndex = [ ...nodes ] . reverse ( ) . findIndex ( node => node . type === 'ExpressionStatement'
113
+ && node . expression . type === 'CallExpression'
114
+ && node . expression . callee . object
115
+ && node . expression . callee . object . name === 't'
116
+ && node . expression . callee . property
117
+ && node . expression . callee . property . name === 'fail' ) ;
118
+
120
119
// Return if there is no t.fail() or if it's the first node
121
120
if ( tFailIndex === - 1 || tFailIndex === nodes . length - 1 ) {
122
121
return ;
0 commit comments