Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions spec/operators/audit-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,18 @@ describe('Observable.prototype.audit', () => {
expectSubscriptions(e2.subscriptions).toBe(e2subs);
});

it('should mirror source if durations are synchronous observables', () => {
const e1 = hot('abcdefabcdefabcdefabcdefa|');
const e1subs = '^ !';
const e2 = Rx.Observable.of('one single value');
const expected = 'abcdefabcdefabcdefabcdefa|';

const result = e1.audit(() => e2);

expectObservable(result).toBe(expected);
expectSubscriptions(e1.subscriptions).toBe(e1subs);
});

it('should raise error as soon as just-throw duration is used', () => {
const e1 = hot('----abcdefabcdefabcdefabcdefa|');
const e1subs = '^ ! ';
Expand Down
2 changes: 1 addition & 1 deletion src/internal/operators/audit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ class AuditSubscriber<T, R> extends OuterSubscriber<T, R> {
this.destination.error(errorObject.e);
} else {
const innerSubscription = subscribeToResult(this, duration);
if (innerSubscription.closed) {
if (!innerSubscription || innerSubscription.closed) {
this.clearThrottle();
} else {
this.add(this.throttled = innerSubscription);
Expand Down