CountdownEventTest_Dispose_Set.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using System;
  2. using Microsoft.VisualStudio.TestTools.UnitTesting;
  3. using System.Threading;
  4. namespace Renci.SshNet.Tests.Classes.Common
  5. {
  6. [TestClass]
  7. public class CountdownEventTest_Dispose_Set
  8. {
  9. private CountdownEvent _countdownEvent;
  10. [TestInitialize]
  11. public void Initialize()
  12. {
  13. Arrange();
  14. Act();
  15. }
  16. private void Arrange()
  17. {
  18. _countdownEvent = new CountdownEvent(0);
  19. }
  20. private void Act()
  21. {
  22. _countdownEvent.Dispose();
  23. }
  24. [TestMethod]
  25. public void AddCount_ShouldThrowObjectDisposedException()
  26. {
  27. try
  28. {
  29. _countdownEvent.AddCount();
  30. Assert.Fail();
  31. }
  32. catch (ObjectDisposedException)
  33. {
  34. }
  35. }
  36. [TestMethod]
  37. public void CurrentCount_ShouldReturnZero()
  38. {
  39. var actual = _countdownEvent.CurrentCount;
  40. Assert.AreEqual(0, actual);
  41. }
  42. [TestMethod]
  43. public void Dispose_ShouldNotThrow()
  44. {
  45. _countdownEvent.Dispose();
  46. }
  47. [TestMethod]
  48. public void IsSet_ShouldReturnTrue()
  49. {
  50. var actual = _countdownEvent.IsSet;
  51. Assert.IsTrue(actual);
  52. }
  53. [TestMethod]
  54. public void Signal_ShouldThrowObjectDisposedException()
  55. {
  56. try
  57. {
  58. var set = _countdownEvent.Signal();
  59. Assert.Fail("Should have thrown ObjectDisposedException, but returned: " + set);
  60. }
  61. catch (ObjectDisposedException)
  62. {
  63. }
  64. }
  65. [TestMethod]
  66. public void Wait_TimeSpan_ShouldThrowObjectDisposedException()
  67. {
  68. try
  69. {
  70. var set = _countdownEvent.Wait(TimeSpan.FromSeconds(5));
  71. Assert.Fail("Should have thrown ObjectDisposedException, but returned: " + set);
  72. }
  73. catch (ObjectDisposedException)
  74. {
  75. }
  76. }
  77. [TestMethod]
  78. public void WaitHandle_ShouldThrowObjectDisposedException()
  79. {
  80. try
  81. {
  82. var waitHandle = _countdownEvent.WaitHandle;
  83. Assert.Fail("Should have thrown ObjectDisposedException, but returned: " + waitHandle);
  84. }
  85. catch (ObjectDisposedException)
  86. {
  87. }
  88. }
  89. }
  90. }