1
0

AnonymousTest.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // Licensed to the .NET Foundation under one or more agreements.
  2. // The .NET Foundation licenses this file to you under the MIT License.
  3. // See the LICENSE file in the project root for more information.
  4. using System;
  5. using System.Reactive;
  6. using Microsoft.Reactive.Testing;
  7. using Microsoft.VisualStudio.TestTools.UnitTesting;
  8. namespace ReactiveTests.Tests
  9. {
  10. [TestClass]
  11. public class AnonymousTest
  12. {
  13. [TestMethod]
  14. public void AnonymousObservable_ArgumentChecking()
  15. {
  16. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObservable<int>(null));
  17. }
  18. [TestMethod]
  19. public void AnonymousObserver_ArgumentChecking()
  20. {
  21. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default));
  22. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default, () => { }));
  23. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, default(Action)));
  24. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default, ex => { }));
  25. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, default(Action<Exception>)));
  26. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default, ex => { }, () => { }));
  27. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, default, () => { }));
  28. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, ex => { }, default));
  29. }
  30. [TestMethod]
  31. public void AnonymousObserver_Error_Null()
  32. {
  33. var observer = new AnonymousObserver<int>(_ => { }, e => { }, () => { });
  34. ReactiveAssert.Throws<ArgumentNullException>(() => observer.OnError(null));
  35. }
  36. }
  37. }