Skip to content

Commit

Permalink
Merge ee0b24d into efa4dc3
Browse files Browse the repository at this point in the history
  • Loading branch information
luisgabriel committed Feb 12, 2016
2 parents efa4dc3 + ee0b24d commit 75a2cb1
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 6 deletions.
35 changes: 35 additions & 0 deletions perf/micro/current-thread-scheduler/operators/retry.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
var RxOld = require('rx');
var RxNew = require('../../../../index');

module.exports = function (suite) {
var maxRetryCount = 25;
var oldRetryCount = 0;
var newRetryCount = 0;

var _old = RxOld.Observable.ofWithScheduler(RxOld.Scheduler.currentThread, 5)
.flatMap(function (x) {
if (++oldRetryCount < maxRetryCount - 1) {
return RxOld.Observable.throw(new Error('error'), RxOld.Scheduler.currentThread);
}
return RxOld.Observable.ofWithScheduler(RxOld.Scheduler.currentThread, x);
}).retry(maxRetryCount);

var _new = RxNew.Observable.of(5, RxNew.Scheduler.queue)
.mergeMap(function (x) {
if (++newRetryCount < maxRetryCount - 1) {
return RxNew.Observable.throw(new Error('error'), RxNew.Scheduler.queue);
}
return RxNew.Observable.of(x, RxNew.Scheduler.queue);
}).retry(maxRetryCount);

function _next(x) { }
function _error(e) { }
function _complete() { }
return suite
.add('old retry with currentThread scheduler', function () {
_old.subscribe(_next, _error, _complete);
})
.add('new retry with currentThread scheduler', function () {
_new.subscribe(_next, _error, _complete);
});
};
13 changes: 7 additions & 6 deletions perf/micro/immediate-scheduler/operators/retry.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,15 @@ module.exports = function (suite) {
var oldRetryCount = 0;
var newRetryCount = 0;

var oldRetryWithImmediateScheduler = RxOld.Observable.of(5, RxOld.Scheduler.immediate)
var _old = RxOld.Observable.ofWithScheduler(RxOld.Scheduler.immediate, 5)
.flatMap(function (x) {
if (++oldRetryCount < maxRetryCount - 1) {
return RxOld.Observable.throw(new Error('error'), RxOld.Scheduler.immediate);
}
return RxOld.Observable.of(x, RxOld.Scheduler.immediate);
return RxOld.Observable.ofWithScheduler(RxOld.Scheduler.immediate, x);
}).retry(maxRetryCount);
var newRetryWithImmediateScheduler = RxNew.Observable.of(5)

var _new = RxNew.Observable.of(5)
.mergeMap(function (x) {
if (++newRetryCount < maxRetryCount - 1) {
return RxNew.Observable.throw(new Error('error'));
Expand All @@ -26,9 +27,9 @@ module.exports = function (suite) {
function _complete() { }
return suite
.add('old retry with immediate scheduler', function () {
oldRetryWithImmediateScheduler.subscribe(_next, _error, _complete);
_old.subscribe(_next, _error, _complete);
})
.add('new retry with immediate scheduler', function () {
newRetryWithImmediateScheduler.subscribe(_next, _error, _complete);
_new.subscribe(_next, _error, _complete);
});
};
};

0 comments on commit 75a2cb1

Please sign in to comment.