You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
878 B
43 lines
878 B
import assert from 'assert'; |
|
import { parse } from './parse.js'; |
|
import { combineLatest } from '../../src/extras.js'; |
|
|
|
describe('extras/combineLatest', () => { |
|
it('should emit arrays containing the most recent values', async () => { |
|
let output = []; |
|
await combineLatest( |
|
parse('a-b-c-d'), |
|
parse('-A-B-C-D') |
|
).forEach( |
|
value => output.push(value.join('')) |
|
); |
|
assert.deepEqual(output, [ |
|
'aA', |
|
'bA', |
|
'bB', |
|
'cB', |
|
'cC', |
|
'dC', |
|
'dD', |
|
]); |
|
}); |
|
|
|
it('should emit values in the correct order', async () => { |
|
let output = []; |
|
await combineLatest( |
|
parse('-a-b-c-d'), |
|
parse('A-B-C-D') |
|
).forEach( |
|
value => output.push(value.join('')) |
|
); |
|
assert.deepEqual(output, [ |
|
'aA', |
|
'aB', |
|
'bB', |
|
'bC', |
|
'cC', |
|
'cD', |
|
'dD', |
|
]); |
|
}); |
|
});
|
|
|