@@ -12,14 +12,35 @@ const ruleTester = new TSESLint.RuleTester({
12
12
13
13
ruleTester . run ( 'valid-expect-in-promise' , rule , {
14
14
valid : [
15
+ // todo: done callback
16
+ // dedent`
17
+ // it('it1', () => new Promise((done) => {
18
+ // test()
19
+ // .then(() => {
20
+ // expect(someThing).toEqual(true);
21
+ // done();
22
+ // });
23
+ // }));
24
+ // `,
15
25
dedent `
16
- it('it1', () => new Promise((done) => {
17
- test()
18
- .then(() => {
19
- expect(someThing).toEqual(true);
20
- done();
21
- });
22
- }));
26
+ const myFn = () => {
27
+ Promise.resolve().then(() => {
28
+ expect(true).toBe(false);
29
+ });
30
+ };
31
+ ` ,
32
+ dedent `
33
+ const myFn = () => {
34
+ Promise.resolve().then(() => {
35
+ expect(true).toBe(false);
36
+ });
37
+ };
38
+
39
+ it('it1', () => {
40
+ return somePromise.then(() => {
41
+ expect(someThing).toEqual(true);
42
+ });
43
+ });
23
44
` ,
24
45
dedent `
25
46
it('it1', () => {
@@ -74,50 +95,55 @@ ruleTester.run('valid-expect-in-promise', rule, {
74
95
});
75
96
});
76
97
` ,
77
- dedent `
78
- it('it1', function () {
79
- Promise.resolve().then(/*fulfillment*/ function () {
80
- }, undefined, /*rejection*/ function () {
81
- expect(someThing).toEqual(true)
82
- })
83
- });
84
- ` ,
85
- dedent `
86
- it('it1', function () {
87
- return Promise.resolve().then(function () {
88
- /*fulfillment*/
89
- }, function () {
90
- /*rejection*/
91
- expect(someThing).toEqual(true);
92
- });
93
- });
94
- ` ,
98
+ // todo: tighter "is promise" check
99
+ // dedent`
100
+ // it('it1', function () {
101
+ // Promise.resolve().then(/*fulfillment*/ function () {
102
+ // }, undefined, /*rejection*/ function () {
103
+ // expect(someThing).toEqual(true)
104
+ // })
105
+ // });
106
+ // `,
107
+ // todo: tighter "is promise" check
108
+ // dedent`
109
+ // it('it1', function () {
110
+ // return Promise.resolve().then(function () {
111
+ // /*fulfillment*/
112
+ // }, function () {
113
+ // /*rejection*/
114
+ // expect(someThing).toEqual(true);
115
+ // });
116
+ // });
117
+ // `,
95
118
dedent `
96
119
it('it1', function () {
97
120
return somePromise.then()
98
121
});
99
122
` ,
100
- dedent `
101
- it('it1', async () => {
102
- await Promise.resolve().then(function () {
103
- expect(someThing).toEqual(true)
104
- });
105
- });
106
- ` ,
107
- dedent `
108
- it('it1', async () => {
109
- await somePromise.then(() => {
110
- expect(someThing).toEqual(true)
111
- });
112
- });
113
- ` ,
114
- dedent `
115
- it('it1', async () => {
116
- await getSomeThing().getPromise().then(function () {
117
- expect(someThing).toEqual(true)
118
- });
119
- });
120
- ` ,
123
+ // todo: async
124
+ // dedent`
125
+ // it('it1', async () => {
126
+ // await Promise.resolve().then(function () {
127
+ // expect(someThing).toEqual(true)
128
+ // });
129
+ // });
130
+ // `,
131
+ // todo: async
132
+ // dedent`
133
+ // it('it1', async () => {
134
+ // await somePromise.then(() => {
135
+ // expect(someThing).toEqual(true)
136
+ // });
137
+ // });
138
+ // `,
139
+ // todo: async
140
+ // dedent`
141
+ // it('it1', async () => {
142
+ // await getSomeThing().getPromise().then(function () {
143
+ // expect(someThing).toEqual(true)
144
+ // });
145
+ // });
146
+ // `,
121
147
dedent `
122
148
it('it1', () => {
123
149
return somePromise.then(() => {
@@ -138,24 +164,26 @@ ruleTester.run('valid-expect-in-promise', rule, {
138
164
})
139
165
});
140
166
` ,
141
- dedent `
142
- test('later return', () => {
143
- const promise = something().then(value => {
144
- expect(value).toBe('red');
145
- });
146
-
147
- return promise;
148
- });
149
- ` ,
150
- dedent `
151
- test.only('later return', () => {
152
- const promise = something().then(value => {
153
- expect(value).toBe('red');
154
- });
155
-
156
- return promise;
157
- });
158
- ` ,
167
+ // todo: as variable
168
+ // dedent`
169
+ // test('later return', () => {
170
+ // const promise = something().then(value => {
171
+ // expect(value).toBe('red');
172
+ // });
173
+ //
174
+ // return promise;
175
+ // });
176
+ // `,
177
+ // todo: as variable
178
+ // dedent`
179
+ // test.only('later return', () => {
180
+ // const promise = something().then(value => {
181
+ // expect(value).toBe('red');
182
+ // });
183
+ //
184
+ // return promise;
185
+ // });
186
+ // `,
159
187
dedent `
160
188
it('shorthand arrow', () =>
161
189
something().then(value => {
@@ -165,34 +193,37 @@ ruleTester.run('valid-expect-in-promise', rule, {
165
193
})
166
194
);
167
195
` ,
168
- dedent `
169
- it('promise test', () => {
170
- const somePromise = getThatPromise();
171
- somePromise.then((data) => {
172
- expect(data).toEqual('foo');
173
- });
174
- expect(somePromise).toBeDefined();
175
- return somePromise;
176
- });
177
- ` ,
178
- dedent `
179
- test('promise test', function () {
180
- let somePromise = getThatPromise();
181
- somePromise.then((data) => {
182
- expect(data).toEqual('foo');
183
- });
184
- expect(somePromise).toBeDefined();
185
- return somePromise;
186
- });
187
- ` ,
188
- dedent `
189
- it('crawls for files based on patterns', () => {
190
- const promise = nodeCrawl({}).then(data => {
191
- expect(childProcess.spawn).lastCalledWith('find');
192
- });
193
- return promise;
194
- });
195
- ` ,
196
+ // todo: as variable
197
+ // dedent`
198
+ // it('promise test', () => {
199
+ // const somePromise = getThatPromise();
200
+ // somePromise.then((data) => {
201
+ // expect(data).toEqual('foo');
202
+ // });
203
+ // expect(somePromise).toBeDefined();
204
+ // return somePromise;
205
+ // });
206
+ // `,
207
+ // todo: as variable
208
+ // dedent`
209
+ // test('promise test', function () {
210
+ // let somePromise = getThatPromise();
211
+ // somePromise.then((data) => {
212
+ // expect(data).toEqual('foo');
213
+ // });
214
+ // expect(somePromise).toBeDefined();
215
+ // return somePromise;
216
+ // });
217
+ // `,
218
+ // todo: as variable
219
+ // dedent`
220
+ // it('crawls for files based on patterns', () => {
221
+ // const promise = nodeCrawl({}).then(data => {
222
+ // expect(childProcess.spawn).lastCalledWith('find');
223
+ // });
224
+ // return promise;
225
+ // });
226
+ // `,
196
227
dedent `
197
228
it(
198
229
'test function',
@@ -226,20 +257,40 @@ ruleTester.run('valid-expect-in-promise', rule, {
226
257
}))
227
258
` ,
228
259
'it("it1", () => somePromise.then(() => expect(someThing).toEqual(true)))' ,
229
- dedent `
230
- it('promise test with done', (done) => {
231
- const promise = getPromise();
232
- promise.then(() => expect(someThing).toEqual(true));
233
- });
234
- ` ,
235
- dedent `
236
- it('name of done param does not matter', (nameDoesNotMatter) => {
237
- const promise = getPromise();
238
- promise.then(() => expect(someThing).toEqual(true));
239
- });
240
- ` ,
260
+ // todo: done callback
261
+ // dedent`
262
+ // it('promise test with done', (done) => {
263
+ // const promise = getPromise();
264
+ // promise.then(() => expect(someThing).toEqual(true));
265
+ // });
266
+ // `,
267
+ // todo: done callback
268
+ // dedent`
269
+ // it('name of done param does not matter', (nameDoesNotMatter) => {
270
+ // const promise = getPromise();
271
+ // promise.then(() => expect(someThing).toEqual(true));
272
+ // });
273
+ // `,
241
274
] ,
242
275
invalid : [
276
+ {
277
+ code : dedent `
278
+ const myFn = () => {
279
+ Promise.resolve().then(() => {
280
+ expect(true).toBe(false);
281
+ });
282
+ };
283
+
284
+ it('it1', () => {
285
+ somePromise.then(() => {
286
+ expect(someThing).toEqual(true);
287
+ });
288
+ });
289
+ ` ,
290
+ errors : [
291
+ { column : 3 , endColumn : 6 , messageId : 'returnPromise' , line : 8 } ,
292
+ ] ,
293
+ } ,
243
294
{
244
295
code : dedent `
245
296
it('it1', () => {
@@ -250,16 +301,16 @@ ruleTester.run('valid-expect-in-promise', rule, {
250
301
` ,
251
302
errors : [ { column : 3 , endColumn : 6 , messageId : 'returnPromise' } ] ,
252
303
} ,
253
- // {
254
- // code: `
255
- // it('it1', () => {
256
- // somePromise['then'](() => {
257
- // expect(someThing).toEqual(true);
258
- // });
259
- // });
260
- // `,
261
- // errors: [{ column: 12 , endColumn: 15 , messageId: 'returnPromise' }],
262
- // },
304
+ {
305
+ code : `
306
+ it('it1', () => {
307
+ somePromise['then'](() => {
308
+ expect(someThing).toEqual(true);
309
+ });
310
+ });
311
+ ` ,
312
+ errors : [ { column : 10 , endColumn : 13 , messageId : 'returnPromise' } ] ,
313
+ } ,
263
314
{
264
315
code : dedent `
265
316
it('it1', function() {
@@ -361,7 +412,7 @@ ruleTester.run('valid-expect-in-promise', rule, {
361
412
});
362
413
});
363
414
` ,
364
- errors : [ { column : 9 , endColumn : 5 , messageId : 'returnPromise' } ] ,
415
+ errors : [ { column : 3 , endColumn : 6 , messageId : 'returnPromise' } ] ,
365
416
} ,
366
417
{
367
418
code : dedent `
0 commit comments