AnonymousTest.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  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. #pragma warning disable CA1806 // (Unused new instance.) These tests expect the constructor to throw.
  9. namespace ReactiveTests.Tests
  10. {
  11. [TestClass]
  12. public class AnonymousTest
  13. {
  14. [TestMethod]
  15. public void AnonymousObservable_ArgumentChecking()
  16. {
  17. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObservable<int>(null));
  18. }
  19. [TestMethod]
  20. public void AnonymousObserver_ArgumentChecking()
  21. {
  22. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default));
  23. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default, () => { }));
  24. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, default(Action)));
  25. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default, ex => { }));
  26. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, default(Action<Exception>)));
  27. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(default, ex => { }, () => { }));
  28. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, default, () => { }));
  29. ReactiveAssert.Throws<ArgumentNullException>(() => new AnonymousObserver<int>(x => { }, ex => { }, default));
  30. }
  31. [TestMethod]
  32. public void AnonymousObserver_Error_Null()
  33. {
  34. var observer = new AnonymousObserver<int>(_ => { }, e => { }, () => { });
  35. ReactiveAssert.Throws<ArgumentNullException>(() => observer.OnError(null));
  36. }
  37. }
  38. }