// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information. using System; #if NUNIT using NUnit.Framework; using TestClassAttribute = NUnit.Framework.TestFixtureAttribute; using TestMethodAttribute = NUnit.Framework.TestAttribute; using TestInitializeAttribute = NUnit.Framework.SetUpAttribute; #else using Microsoft.VisualStudio.TestTools.UnitTesting; #endif using Microsoft.Reactive.Testing; using System.Reactive; namespace ReactiveTests.Tests { [TestClass] public class AnonymousTest { [TestMethod] public void AnonymousObservable_ArgumentChecking() { ReactiveAssert.Throws(() => new AnonymousObservable(null)); } [TestMethod] public void AnonymousObserver_ArgumentChecking() { ReactiveAssert.Throws(() => new AnonymousObserver(default(Action))); ReactiveAssert.Throws(() => new AnonymousObserver(default(Action), () => { })); ReactiveAssert.Throws(() => new AnonymousObserver(x => { }, default(Action))); ReactiveAssert.Throws(() => new AnonymousObserver(default(Action), ex => { })); ReactiveAssert.Throws(() => new AnonymousObserver(x => { }, default(Action))); ReactiveAssert.Throws(() => new AnonymousObserver(default(Action), ex => { }, () => { })); ReactiveAssert.Throws(() => new AnonymousObserver(x => { }, default(Action), () => { })); ReactiveAssert.Throws(() => new AnonymousObserver(x => { }, ex => { }, default(Action))); } [TestMethod] public void AnonymousObserver_Error_Null() { var observer = new AnonymousObserver(_ => { }, e => { }, () => { }); ReactiveAssert.Throws(() => observer.OnError(null)); } } }