@@ -295,6 +295,18 @@ ruleTester.run("array-callback-return", rule, {
295295 languageOptions : { ecmaVersion : 6 } ,
296296 } ,
297297 { code : "foo.every(() => true)" , languageOptions : { ecmaVersion : 6 } } ,
298+
299+ // Array.fromAsync
300+ "Array.fromAsync(x, function() { return true; })" ,
301+ "Array.fromAsync(x, async function() { return true; })" ,
302+ {
303+ code : "Array.fromAsync(x, function() { return; })" ,
304+ options : allowImplicitOptions ,
305+ } ,
306+ "Array.fromAsync(x, async () => true)" ,
307+ "Array.fromAsync(x, function * () {})" ,
308+ "Float64Array.fromAsync(x, function() {})" ,
309+ "Array.fromAsync(function() {})" ,
298310 ] ,
299311 invalid : [
300312 {
@@ -2010,6 +2022,22 @@ ruleTester.run("array-callback-return", rule, {
20102022 } ,
20112023 ] ,
20122024 } ,
2025+ {
2026+ code : "Array.fromAsync(x,\nasync\tfunction \\u0066oo // bar\n () {})" ,
2027+ errors : [
2028+ {
2029+ messageId : "expectedInside" ,
2030+ data : {
2031+ name : "async function 'foo'" ,
2032+ arrayMethodName : "Array.fromAsync" ,
2033+ } ,
2034+ line : 2 ,
2035+ column : 1 ,
2036+ endLine : 3 ,
2037+ endColumn : 4 ,
2038+ } ,
2039+ ] ,
2040+ } ,
20132041
20142042 // Optional chaining
20152043 {
@@ -2077,5 +2105,80 @@ ruleTester.run("array-callback-return", rule, {
20772105 } ,
20782106 ] ,
20792107 } ,
2108+
2109+ // Array.fromAsync
2110+ {
2111+ code : "Array.fromAsync(x, function() {})" ,
2112+ errors : [
2113+ {
2114+ messageId : "expectedInside" ,
2115+ data : {
2116+ name : "function" ,
2117+ arrayMethodName : "Array.fromAsync" ,
2118+ } ,
2119+ } ,
2120+ ] ,
2121+ } ,
2122+ {
2123+ code : "Array.fromAsync(x, async function() {})" ,
2124+ errors : [
2125+ {
2126+ messageId : "expectedInside" ,
2127+ data : {
2128+ name : "async function" ,
2129+ arrayMethodName : "Array.fromAsync" ,
2130+ } ,
2131+ } ,
2132+ ] ,
2133+ } ,
2134+ {
2135+ code : "Array.fromAsync(x, function() {})" ,
2136+ options : allowImplicitOptions ,
2137+ errors : [
2138+ {
2139+ messageId : "expectedInside" ,
2140+ data : {
2141+ name : "function" ,
2142+ arrayMethodName : "Array.fromAsync" ,
2143+ } ,
2144+ } ,
2145+ ] ,
2146+ } ,
2147+ {
2148+ code : "Array.fromAsync(x, () => {})" ,
2149+ errors : [
2150+ {
2151+ messageId : "expectedInside" ,
2152+ data : {
2153+ name : "arrow function" ,
2154+ arrayMethodName : "Array.fromAsync" ,
2155+ } ,
2156+ } ,
2157+ ] ,
2158+ } ,
2159+ {
2160+ code : "Array.fromAsync(x, async () => {})" ,
2161+ errors : [
2162+ {
2163+ messageId : "expectedInside" ,
2164+ data : {
2165+ name : "async arrow function" ,
2166+ arrayMethodName : "Array.fromAsync" ,
2167+ } ,
2168+ } ,
2169+ ] ,
2170+ } ,
2171+ {
2172+ code : "Array.fromAsync(x, function foo() {})" ,
2173+ errors : [
2174+ {
2175+ messageId : "expectedInside" ,
2176+ data : {
2177+ name : "function 'foo'" ,
2178+ arrayMethodName : "Array.fromAsync" ,
2179+ } ,
2180+ } ,
2181+ ] ,
2182+ } ,
20802183 ] ,
20812184} ) ;
0 commit comments