1 | 'use strict';
|
2 |
|
3 | var _Observable = require('rxjs/Observable');
|
4 |
|
5 | var _Subject = require('rxjs/Subject');
|
6 |
|
7 | var _mergeWidgetBackends = require('./mergeWidgetBackends');
|
8 |
|
9 | test('returns observable', function () {
|
10 | var backends = (0, _mergeWidgetBackends.mergeWidgetBackends)({});
|
11 | expect(backends).toBeInstanceOf(_Observable.Observable);
|
12 | });
|
13 |
|
14 | test('merges data from all backends', function () {
|
15 | var backendA = new _Subject.Subject();
|
16 | var backendB = new _Subject.Subject();
|
17 | var subscriber = jest.fn();
|
18 |
|
19 | var backends = (0, _mergeWidgetBackends.mergeWidgetBackends)({
|
20 | board: {
|
21 | widgets: [{ backend: backendA }, { backend: backendB }]
|
22 | }
|
23 | });
|
24 |
|
25 | backends.subscribe(subscriber);
|
26 |
|
27 | backendA.next(1);
|
28 | backendB.next(2);
|
29 |
|
30 | expect(subscriber).toHaveBeenCalledTimes(2);
|
31 | });
|
32 |
|
33 | test('works with boards without widgets', function () {
|
34 | var backends = (0, _mergeWidgetBackends.mergeWidgetBackends)({
|
35 | board: {}
|
36 | });
|
37 | expect(backends).toBeInstanceOf(_Observable.Observable);
|
38 | }); |
\ | No newline at end of file |