This repository was archived by the owner on Apr 20, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Expand file tree
/
Copy pathinterval.js
More file actions
86 lines (67 loc) · 2.07 KB
/
interval.js
File metadata and controls
86 lines (67 loc) · 2.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
(function () {
/* jshint undef: true, unused: true */
/* globals QUnit, test, Rx, raises */
QUnit.module('interval');
var Observable = Rx.Observable,
TestScheduler = Rx.TestScheduler,
onNext = Rx.ReactiveTest.onNext;
test('interval relative time basic', function () {
var scheduler = new TestScheduler();
var results = scheduler.startScheduler(function () {
return Observable.interval(100, scheduler);
});
results.messages.assertEqual(
onNext(300, 0),
onNext(400, 1),
onNext(500, 2),
onNext(600, 3),
onNext(700, 4),
onNext(800, 5),
onNext(900, 6));
});
test('interval relative time zero', function () {
var scheduler = new TestScheduler();
var results = scheduler.startScheduler(function () {
return Observable.interval(0, scheduler);
}, { disposed: 210 });
results.messages.assertEqual(
onNext(201, 0),
onNext(202, 1),
onNext(203, 2),
onNext(204, 3),
onNext(205, 4),
onNext(206, 5),
onNext(207, 6),
onNext(208, 7),
onNext(209, 8));
});
test('interval relative time Negative', function () {
var scheduler = new TestScheduler();
var results = scheduler.startScheduler(function () {
return Observable.interval(-1, scheduler);
}, {disposed: 210 });
results.messages.assertEqual(
onNext(201, 0),
onNext(202, 1),
onNext(203, 2),
onNext(204, 3),
onNext(205, 4),
onNext(206, 5),
onNext(207, 6),
onNext(208, 7),
onNext(209, 8));
});
test('interval relative time disposed', function () {
var scheduler = new TestScheduler();
var results = scheduler.startScheduler(function () {
return Observable.interval(1000, scheduler);
});
results.messages.assertEqual();
});
test('interval relative time observer throws', function () {
var scheduler = new TestScheduler();
var xs = Observable.interval(1, scheduler);
xs.subscribe(function () { throw new Error(); });
raises(function () { return scheduler.start(); });
});
}());