Skip to content

Commit c0c56e0

Browse files
committed
Extract tests into seeparate files
1 parent 4a75d7a commit c0c56e0

8 files changed

+282
-234
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
1111
### Minor
1212

1313
### Patch
14+
- Extract tests into separate files
1415
- Upgrade change-log to v1.7.1
1516

1617
## [v2.5.0] - 2017-08-18

all.test.js

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
'use strict';
2+
3+
const subject = require('./all');
4+
const test = require('ava');
5+
6+
test('catchify.all - two values resolved', async t => {
7+
const [error, [value1, value2]] = await subject([1, 2]);
8+
t.is(error, null);
9+
t.is(value1, 1);
10+
t.is(value2, 2);
11+
});
12+
13+
test('catchify.all - one of three promises rejected', async t => {
14+
const [error, [value1, value2, value3]] = await subject([
15+
Promise.resolve(1),
16+
Promise.resolve(2),
17+
Promise.reject(new Error('3'))
18+
]);
19+
t.is(error.message, '3');
20+
t.is(value1, undefined);
21+
t.is(value2, undefined);
22+
t.is(value3, undefined);
23+
});
24+
25+
test('catchify.all - object with values', async t => {
26+
const [error, {a, b}] = await subject({a: 1, b: 2});
27+
t.is(error, null);
28+
t.is(a, 1);
29+
t.is(b, 2);
30+
});
31+
32+
test('catchify.all - object with promises that both resolve', async t => {
33+
const [error, {a, b}] = await subject({
34+
a: Promise.resolve(1),
35+
b: Promise.resolve(2)
36+
});
37+
t.is(error, null);
38+
t.is(a, 1);
39+
t.is(b, 2);
40+
});
41+
42+
test('catchify.all - object with promises and one rejects', async t => {
43+
const [error, values] = await subject({
44+
a: Promise.resolve(1),
45+
b: Promise.reject(new Error('2'))
46+
});
47+
t.is(error.message, '2');
48+
t.deepEqual(values, {});
49+
});

index.test.js

+3-234
Original file line numberDiff line numberDiff line change
@@ -1,153 +1,37 @@
11
const catchify = require('./index');
22
const test = require('ava');
33

4-
/// ///////
5-
// catchify
64
test('catchify - promise with success', async t => {
75
const [error, value] = await catchify(Promise.resolve(1));
86
t.is(error, null);
97
t.is(value, 1);
108
});
119

12-
test('catchify - promise with error', async t => {
13-
const [error, value] = await catchify(Promise.reject(new Error('3')));
14-
t.is(error.message, '3');
15-
t.is(value, null);
16-
});
17-
18-
test('catchify - value', async t => {
19-
const [error, value] = await catchify(1);
20-
t.is(error, null);
21-
t.is(value, 1);
22-
});
23-
24-
/// ///////////////
25-
// catchify.resolve
2610
test('catchify.resolve - promise with success', async t => {
2711
const [error, value] = await catchify.resolve(Promise.resolve(1));
2812
t.is(error, null);
2913
t.is(value, 1);
3014
});
3115

32-
test('catchify.resolve - promise with error', async t => {
33-
const [error, value] = await catchify.resolve(Promise.reject(new Error('1')));
34-
t.is(error.message, '1');
16+
test('catchify.reject - value', async t => {
17+
const [error, value] = await catchify.reject(1);
18+
t.is(error, 1);
3519
t.is(value, null);
3620
});
3721

38-
test('catchify.resolve - value', async t => {
39-
const [error, value] = await catchify.resolve(1);
40-
t.is(error, null);
41-
t.is(value, 1);
42-
});
43-
44-
/// ////////////
45-
// catchify.race
4622
test('catchify.race - two values', async t => {
4723
const [error, value] = await catchify.race([1, 2]);
4824
t.is(error, null);
4925
t.is(value, 1);
5026
});
5127

52-
test('catchify.race - two resolved promises', async t => {
53-
const [error, value] = await catchify.race([Promise.resolve(1), Promise.resolve(2)]);
54-
t.is(error, null);
55-
t.is(value, 1);
56-
});
57-
58-
test('catchify.race - two promises, one rejected and one resolved', async t => {
59-
const [error, value] = await catchify.race([
60-
Promise.reject(new Error('1')),
61-
Promise.resolve(2)
62-
]);
63-
t.is(error.message, '1');
64-
t.is(value, null);
65-
});
66-
67-
test('catchify.race - two promises, both resolve, fastest wins', async t => {
68-
const [error, value] = await catchify.race([
69-
new Promise((resolve, reject) => setTimeout(() => resolve(1), 10)),
70-
new Promise((resolve, reject) => setTimeout(() => resolve(2), 100))
71-
]);
72-
t.is(error, null);
73-
t.is(value, 1);
74-
});
75-
76-
test('catchify.race - two promises, reject finishes first', async t => {
77-
const [error, value] = await catchify.race([
78-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('1')), 10)),
79-
new Promise((resolve, reject) => setTimeout(() => resolve(2), 100))
80-
]);
81-
t.deepEqual(error, new Error('1'));
82-
t.is(value, null);
83-
});
84-
85-
test('catchify.race - two promises, resolve finishes first', async t => {
86-
const [error, value] = await catchify.race([
87-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('1')), 100)),
88-
new Promise((resolve, reject) => setTimeout(() => resolve(2), 10))
89-
]);
90-
t.is(error, null);
91-
t.is(value, 2);
92-
});
93-
94-
/// ///////////
95-
// catchify.all
9628
test('catchify.all - two values resolved', async t => {
9729
const [error, [value1, value2]] = await catchify.all([1, 2]);
9830
t.is(error, null);
9931
t.is(value1, 1);
10032
t.is(value2, 2);
10133
});
10234

103-
test('catchify.all - one of three promises rejected', async t => {
104-
const [error, [value1, value2, value3]] = await catchify.all([
105-
Promise.resolve(1),
106-
Promise.resolve(2),
107-
Promise.reject(new Error('3'))
108-
]);
109-
t.is(error.message, '3');
110-
t.is(value1, undefined);
111-
t.is(value2, undefined);
112-
t.is(value3, undefined);
113-
});
114-
115-
test('catchify.all - object with values', async t => {
116-
const [error, {a, b}] = await catchify.all({a: 1, b: 2});
117-
t.is(error, null);
118-
t.is(a, 1);
119-
t.is(b, 2);
120-
});
121-
122-
test('catchify.all - object with promises that both resolve', async t => {
123-
const [error, {a, b}] = await catchify.all({
124-
a: Promise.resolve(1),
125-
b: Promise.resolve(2)
126-
});
127-
t.is(error, null);
128-
t.is(a, 1);
129-
t.is(b, 2);
130-
});
131-
132-
test('catchify.all - object with promises and one rejects', async t => {
133-
const [error, values] = await catchify.all({
134-
a: Promise.resolve(1),
135-
b: Promise.reject(new Error('2'))
136-
});
137-
t.is(error.message, '2');
138-
t.deepEqual(values, {});
139-
});
140-
141-
/// //////////////
142-
// catchify.reject
143-
test('catchify.reject - value', async t => {
144-
const [error, value] = await catchify.reject(1);
145-
t.is(error, 1);
146-
t.is(value, null);
147-
});
148-
149-
/// ////////////
150-
// catchify.some
15135
test('catchify.some - resolve and reject', async t => {
15236
const [[error1, error2], [value1, value2]] = await catchify.some([
15337
Promise.resolve(1),
@@ -160,51 +44,6 @@ test('catchify.some - resolve and reject', async t => {
16044
t.is(value2, null);
16145
});
16246

163-
test('catchify.some - resolve and resolve', async t => {
164-
const [errors, values] = await catchify.some([
165-
Promise.resolve(1),
166-
Promise.resolve(2)
167-
]);
168-
169-
t.deepEqual(errors, [null, null]);
170-
t.deepEqual(values, [1, 2]);
171-
});
172-
173-
test('catchify.some - three promises one rejects', async t => {
174-
const [errors, values] = await catchify.some([
175-
new Promise((resolve, reject) => setTimeout(() => resolve(1), 10)),
176-
new Promise((resolve, reject) => setTimeout(() => resolve(2), 15)),
177-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('3')), 5))
178-
]);
179-
180-
t.deepEqual(errors, [null, null, new Error('3')]);
181-
t.deepEqual(values, [1, 2, null]);
182-
});
183-
184-
test('catchify.some - object with three resolved values', async t => {
185-
const [errors, values] = await catchify.some({
186-
a: Promise.resolve(1),
187-
b: Promise.resolve(2),
188-
c: Promise.resolve(3)
189-
});
190-
191-
t.deepEqual(errors, {a: null, b: null, c: null});
192-
t.deepEqual(values, {a: 1, b: 2, c: 3});
193-
});
194-
195-
test('catchify.some - object with two resolved and one rejected', async t => {
196-
const [errors, values] = await catchify.some({
197-
a: Promise.resolve(1),
198-
b: Promise.reject(new Error('2')),
199-
c: Promise.resolve(3)
200-
});
201-
202-
t.deepEqual(errors, {a: null, b: new Error('2'), c: null});
203-
t.deepEqual(values, {a: 1, b: null, c: 3});
204-
});
205-
206-
/// /////////////
207-
// catchify.limit
20847
test('catchify.limit - three promises, last one rejects', async t => {
20948
const [errors, values] = await catchify.limit([
21049
new Promise((resolve, reject) => setTimeout(() => resolve(1), 5)),
@@ -214,73 +53,3 @@ test('catchify.limit - three promises, last one rejects', async t => {
21453
t.deepEqual(errors, [null, null, new Error('3')]);
21554
t.deepEqual(values, [1, 2, null]);
21655
});
217-
218-
test('catchify.limit - three promises, second one rejects', async t => {
219-
const [errors, values] = await catchify.limit([
220-
new Promise((resolve, reject) => setTimeout(() => resolve(1), 5)),
221-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('2')), 5)),
222-
new Promise((resolve, reject) => setTimeout(() => resolve(3), 5))
223-
]);
224-
t.deepEqual(errors, [null, new Error('2'), null]);
225-
t.deepEqual(values, [1, null, 3]);
226-
});
227-
228-
test('catchify.limit - three promises, first one rejects', async t => {
229-
const [errors, values] = await catchify.limit([
230-
new Promise((resolve, reject) => setTimeout(() => resolve(1), 5)),
231-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('2')), 5)),
232-
new Promise((resolve, reject) => setTimeout(() => resolve(3), 5))
233-
]);
234-
t.deepEqual(errors, [null, new Error('2'), null]);
235-
t.deepEqual(values, [1, null, 3]);
236-
});
237-
238-
test('catchify.limit - three promises, first one rejects', async t => {
239-
const [errors, values] = await catchify.limit([
240-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('1')), 5)),
241-
new Promise((resolve, reject) => setTimeout(() => resolve(2), 5)),
242-
new Promise((resolve, reject) => setTimeout(() => resolve(3), 5))
243-
]);
244-
t.deepEqual(errors, [new Error('1'), null, null]);
245-
t.deepEqual(values, [null, 2, 3]);
246-
});
247-
248-
test('catchify.limit - three promises, first one rejects, limit=1, exitOnError=true', async t => {
249-
const [errors, values] = await catchify.limit([
250-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('1')), 5)),
251-
new Promise((resolve, reject) => setTimeout(() => resolve(2), 5)),
252-
new Promise((resolve, reject) => setTimeout(() => resolve(3), 5))
253-
], 1, true);
254-
t.deepEqual(errors, [new Error('1')]);
255-
t.deepEqual(values, [null]);
256-
});
257-
258-
test('catchify.limit - three promises, second one rejects, limit=1, exitOnError=true', async t => {
259-
const [errors, values] = await catchify.limit([
260-
new Promise((resolve, reject) => setTimeout(() => resolve(1), 5)),
261-
new Promise((resolve, reject) => setTimeout(() => reject(new Error('2')), 5)),
262-
new Promise((resolve, reject) => setTimeout(() => resolve(3), 5))
263-
], 1, true);
264-
t.deepEqual(errors, [null, new Error('2')]);
265-
t.deepEqual(values, [1, null]);
266-
});
267-
268-
test('catchify.limit - object with three resolved values', async t => {
269-
const [errors, values] = await catchify.limit({
270-
a: Promise.resolve(1),
271-
b: Promise.resolve(2),
272-
c: Promise.resolve(3)
273-
});
274-
t.deepEqual(errors, {a: null, b: null, c: null});
275-
t.deepEqual(values, {a: 1, b: 2, c: 3});
276-
});
277-
278-
test('catchify.limit - object with two resolved values and one rejected value', async t => {
279-
const [errors, values] = await catchify.limit({
280-
a: Promise.resolve(1),
281-
b: Promise.reject(new Error('2')),
282-
c: Promise.resolve(3)
283-
});
284-
t.deepEqual(errors, {a: null, b: new Error('2'), c: null});
285-
t.deepEqual(values, {a: 1, b: null, c: 3});
286-
});

0 commit comments

Comments
 (0)