mirror of
https://github.com/CamHenlin/MessagesForMacintosh.git
synced 2024-11-25 13:31:00 +00:00
39 lines
883 B
JavaScript
39 lines
883 B
JavaScript
import assert from 'assert';
|
|
|
|
describe('reduce', () => {
|
|
it('reduces without a seed', async () => {
|
|
await Observable.from([1, 2, 3, 4, 5, 6]).reduce((a, b) => {
|
|
return a + b;
|
|
}).forEach(x => {
|
|
assert.equal(x, 21);
|
|
});
|
|
});
|
|
|
|
it('errors if empty and no seed', async () => {
|
|
try {
|
|
await Observable.from([]).reduce((a, b) => {
|
|
return a + b;
|
|
}).forEach(() => null);
|
|
assert.ok(false);
|
|
} catch (err) {
|
|
assert.ok(true);
|
|
}
|
|
});
|
|
|
|
it('reduces with a seed', async () => {
|
|
Observable.from([1, 2, 3, 4, 5, 6]).reduce((a, b) => {
|
|
return a + b;
|
|
}, 100).forEach(x => {
|
|
assert.equal(x, 121);
|
|
});
|
|
});
|
|
|
|
it('reduces an empty list with a seed', async () => {
|
|
await Observable.from([]).reduce((a, b) => {
|
|
return a + b;
|
|
}, 100).forEach(x => {
|
|
assert.equal(x, 100);
|
|
});
|
|
});
|
|
});
|