public void Collect_ArgumentChecking() { var someObservable = Observable.Empty <int>(); ReactiveAssert.Throws <ArgumentNullException>(() => Observable.Collect(default(IObservable <int>), () => 0, (x, y) => x)); ReactiveAssert.Throws <ArgumentNullException>(() => Observable.Collect(someObservable, default(Func <int>), (x, y) => x)); ReactiveAssert.Throws <ArgumentNullException>(() => Observable.Collect(someObservable, () => 0, default)); ReactiveAssert.Throws <ArgumentNullException>(() => Observable.Collect(default(IObservable <int>), () => 0, (x, y) => x, x => x)); ReactiveAssert.Throws <ArgumentNullException>(() => Observable.Collect(someObservable, default(Func <int>), (x, y) => x, x => x)); ReactiveAssert.Throws <ArgumentNullException>(() => Observable.Collect(someObservable, () => 0, default, x => x));