@@ -28,106 +28,87 @@ const noAwaitAsyncFunctionExpression: any = {
28
28
29
29
ruleTester . run ( 'require-await' , rule , {
30
30
valid : [
31
- {
32
- // Non-async function declaration
33
- code : `function numberOne(): number {
34
- return 1;
35
- }` ,
36
- } ,
37
- {
38
- // Non-async function expression
39
- code : `const numberOne = function(): number {
40
- return 1;
41
- }` ,
42
- } ,
43
- {
44
- // Non-async arrow function expression (concise-body)
45
- code : `const numberOne = (): number => 1;` ,
46
- } ,
47
- {
48
- // Non-async arrow function expression (block-body)
49
- code : `const numberOne = (): number => {
50
- return 1;
51
- };` ,
52
- } ,
53
- {
54
- // Async function declaration with await
55
- code : `async function numberOne(): Promise<number> {
56
- return await 1;
57
- }` ,
58
- } ,
59
- {
60
- // Async function expression with await
61
- code : `const numberOne = async function(): Promise<number> {
62
- return await 1;
63
- }` ,
64
- } ,
65
- {
66
- // Async arrow function expression with await (concise-body)
67
- code : `const numberOne = async (): Promise<number> => await 1;` ,
68
- } ,
69
- {
70
- // Async arrow function expression with await (block-body)
71
- code : `const numberOne = async (): Promise<number> => {
72
- return await 1;
73
- };` ,
74
- } ,
75
- {
76
- // Async function declaration with promise return
77
- code : `async function numberOne(): Promise<number> {
78
- return Promise.resolve(1);
79
- }` ,
80
- } ,
81
- {
82
- // Async function expression with promise return
83
- code : `const numberOne = async function(): Promise<number> {
84
- return Promise.resolve(1);
85
- }` ,
86
- } ,
87
- {
88
- // Async arrow function with promise return (concise-body)
89
- code : `const numberOne = async (): Promise<number> => Promise.resolve(1);` ,
90
- } ,
91
- {
92
- // Async arrow function with promise return (block-body)
93
- code : `const numberOne = async (): Promise<number> => {
94
- return Promise.resolve(1);
95
- };` ,
96
- } ,
97
- {
98
- // Async function declaration with async function return
99
- code : `async function numberOne(): Promise<number> {
100
- return getAsyncNumber(1);
101
- }
102
- async function getAsyncNumber(x: number): Promise<number> {
103
- return Promise.resolve(x);
104
- }` ,
105
- } ,
106
- {
107
- // Async function expression with async function return
108
- code : `const numberOne = async function(): Promise<number> {
109
- return getAsyncNumber(1);
110
- }
111
- const getAsyncNumber = async function(x: number): Promise<number> {
112
- return Promise.resolve(x);
113
- }` ,
114
- } ,
115
- {
116
- // Async arrow function with async function return (concise-body)
117
- code : `const numberOne = async (): Promise<number> => getAsyncNumber(1);
118
- const getAsyncNumber = async function(x: number): Promise<number> {
119
- return Promise.resolve(x);
120
- }` ,
121
- } ,
122
- {
123
- // Async arrow function with async function return (block-body)
124
- code : `const numberOne = async (): Promise<number> => {
125
- return getAsyncNumber(1);
126
- };
127
- const getAsyncNumber = async function(x: number): Promise<number> {
128
- return Promise.resolve(x);
129
- }` ,
130
- } ,
31
+ // Non-async function declaration
32
+ `function numberOne(): number {
33
+ return 1;
34
+ }` ,
35
+ // Non-async function expression
36
+ `const numberOne = function(): number {
37
+ return 1;
38
+ }` ,
39
+ // Non-async arrow function expression (concise-body)
40
+ `const numberOne = (): number => 1;` ,
41
+ // Non-async arrow function expression (block-body)
42
+ `const numberOne = (): number => {
43
+ return 1;
44
+ };` ,
45
+ // Non-async function that returns a promise
46
+ // https://github.com/typescript-eslint/typescript-eslint/issues/1226
47
+ `
48
+ function delay() {
49
+ return Promise.resolve();
50
+ }
51
+ ` ,
52
+ `
53
+ const delay = () => {
54
+ return Promise.resolve();
55
+ }
56
+ ` ,
57
+ `const delay = () => Promise.resolve();` ,
58
+ // Async function declaration with await
59
+ `async function numberOne(): Promise<number> {
60
+ return await 1;
61
+ }` ,
62
+ // Async function expression with await
63
+ `const numberOne = async function(): Promise<number> {
64
+ return await 1;
65
+ }` ,
66
+ // Async arrow function expression with await (concise-body)
67
+ `const numberOne = async (): Promise<number> => await 1;` ,
68
+ // Async arrow function expression with await (block-body)
69
+ `const numberOne = async (): Promise<number> => {
70
+ return await 1;
71
+ };` ,
72
+ // Async function declaration with promise return
73
+ `async function numberOne(): Promise<number> {
74
+ return Promise.resolve(1);
75
+ }` ,
76
+ // Async function expression with promise return
77
+ `const numberOne = async function(): Promise<number> {
78
+ return Promise.resolve(1);
79
+ }` ,
80
+ // Async arrow function with promise return (concise-body)
81
+ `const numberOne = async (): Promise<number> => Promise.resolve(1);` ,
82
+ // Async arrow function with promise return (block-body)
83
+ `const numberOne = async (): Promise<number> => {
84
+ return Promise.resolve(1);
85
+ };` ,
86
+ // Async function declaration with async function return
87
+ `async function numberOne(): Promise<number> {
88
+ return getAsyncNumber(1);
89
+ }
90
+ async function getAsyncNumber(x: number): Promise<number> {
91
+ return Promise.resolve(x);
92
+ }` ,
93
+ // Async function expression with async function return
94
+ `const numberOne = async function(): Promise<number> {
95
+ return getAsyncNumber(1);
96
+ }
97
+ const getAsyncNumber = async function(x: number): Promise<number> {
98
+ return Promise.resolve(x);
99
+ }` ,
100
+ // Async arrow function with async function return (concise-body)
101
+ `const numberOne = async (): Promise<number> => getAsyncNumber(1);
102
+ const getAsyncNumber = async function(x: number): Promise<number> {
103
+ return Promise.resolve(x);
104
+ }` ,
105
+ // Async arrow function with async function return (block-body)
106
+ `const numberOne = async (): Promise<number> => {
107
+ return getAsyncNumber(1);
108
+ };
109
+ const getAsyncNumber = async function(x: number): Promise<number> {
110
+ return Promise.resolve(x);
111
+ }` ,
131
112
// https://github.com/typescript-eslint/typescript-eslint/issues/1188
132
113
`
133
114
async function testFunction(): Promise<void> {
0 commit comments