public void WeakEventManager_HandleEvent_EmptyEventArgs() { // Arrange TestEvent += HandleTestEvent; var didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) { if (sender == null) { throw new ArgumentNullException(nameof(sender)); } Assert.IsNotNull(sender); Assert.AreEqual(GetType(), sender.GetType()); Assert.IsNotNull(e); Assert.AreEqual(EventArgs.Empty, e); didEventFire = true; TestEvent -= HandleTestEvent; } // Act TestWeakEventManager.RaiseEvent(this, EventArgs.Empty, nameof(TestEvent)); // Assert Assert.IsTrue(didEventFire); }
public void WeakEventManager_HandleEvent_ValidImplementation() { //Arrange TestEvent += HandleTestEvent; bool didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) { if (sender is null) { throw new ArgumentNullException(nameof(sender)); } Assert.IsNotNull(sender); Assert.AreEqual(this.GetType(), sender.GetType()); Assert.IsNotNull(e); didEventFire = true; TestEvent -= HandleTestEvent; } //Act TestWeakEventManager.HandleEvent(this, new EventArgs(), nameof(TestEvent)); //Assert Assert.IsTrue(didEventFire); }
public void WeakEventManager_HandleEvent_NullEventArgs() { // Arrange TestEvent += HandleTestEvent; var didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) { if (sender == null) { throw new ArgumentNullException(nameof(sender)); } Assert.IsNotNull(sender); Assert.AreEqual(GetType(), sender.GetType()); Assert.Null(e); didEventFire = true; TestEvent -= HandleTestEvent; } // Act #pragma warning disable CS8625 //Cannot convert null literal to non-nullable reference type TestWeakEventManager.RaiseEvent(this, null, nameof(TestEvent)); #pragma warning restore CS8625 // Assert Assert.IsTrue(didEventFire); }
public void WeakEventManager_RemoveventHandler_WhiteSpaceEventName() { //Arrange //Act //Assert Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.RemoveEventHandler(null, " "), "Value cannot be null.\nParameter name: eventName"); }
public void WeakEventManager_AddEventHandler_NullHandler() { //Arrange //Act //Assert Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.AddEventHandler(null), "Value cannot be null.\nParameter name: handler"); }
public void WeakEventManager_AddEventHandler_EmptyEventName() { //Arrange //Act //Assert Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.AddEventHandler(null, string.Empty), "Value cannot be null.\nParameter name: eventName"); }
public void WeakEventManager_RemoveEventHandler_WhiteSpaceEventName() { // Arrange // Act // Assert #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.RemoveEventHandler(null, " ")); #pragma warning restore CS8625 }
public void WeakEventManager_AddEventHandler_EmptyEventName() { // Arrange // Act // Assert #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.AddEventHandler(null, string.Empty)); #pragma warning restore CS8625 }
public void WeakEventManager_AddEventHandler_NullHandler() { //Arrange //Act //Assert #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.AddEventHandler(null), "Value cannot be null.\nParameter name: handler"); #pragma warning restore CS8625 }
public void WeakEventManager_RemoveEventHandler_EmptyEventName() { //Arrange //Act //Assert #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference Assert.Throws <ArgumentNullException>(() => TestWeakEventManager.RemoveEventHandler(null, string.Empty), "Value cannot be null.\nParameter name: eventName"); #pragma warning restore CS8625 }
public void WeakEventManager_HandleEvent_InvalidHandleEvent() { // Arrange TestEvent += HandleTestEvent; var didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) => didEventFire = true; // Act // Assert Assert.Throws <InvalidHandleEventException>(() => TestWeakEventManager.RaiseEvent(nameof(TestEvent))); Assert.False(didEventFire); TestEvent -= HandleTestEvent; }
public void WeakEventManager_HandleEvent_InvalidHandleEventName() { // Arrange TestEvent += HandleTestEvent; var didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) => didEventFire = true; // Act TestWeakEventManager.RaiseEvent(this, new EventArgs(), nameof(TestStringEvent)); // Assert Assert.False(didEventFire); TestEvent -= HandleTestEvent; }
public void WeakEventManager_UnassignedEvent() { // Arrange var didEventFire = false; TestEvent += HandleTestEvent; TestEvent -= HandleTestEvent; void HandleTestEvent(object?sender, EventArgs e) => didEventFire = true; // Act TestWeakEventManager.RaiseEvent(null, null, nameof(TestEvent)); // Assert Assert.False(didEventFire); }
public void WeakEventManager_UnassignedEvent() { // Arrange var didEventFire = false; TestEvent += HandleTestEvent; TestEvent -= HandleTestEvent; void HandleTestEvent(object?sender, EventArgs e) => didEventFire = true; // Act #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference type. TestWeakEventManager.RaiseEvent(null, null, nameof(TestEvent)); #pragma warning restore CS8625 // Cannot convert null literal to non-nullable reference type. // Assert Assert.False(didEventFire); }
public void WeakEventManager_HandleEvent_NullSender() { // Arrange TestEvent += HandleTestEvent; var didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) { Assert.Null(sender); Assert.NotNull(e); didEventFire = true; TestEvent -= HandleTestEvent; } // Act TestWeakEventManager.RaiseEvent(null, new EventArgs(), nameof(TestEvent)); // Assert Assert.True(didEventFire); }
public void WeakEventManager_HandleEvent_NullEventArgs() { //Arrange TestEvent += HandleTestEvent; bool didEventFire = false; void HandleTestEvent(object sender, EventArgs e) { Assert.IsNotNull(sender); Assert.AreEqual(this.GetType(), sender.GetType()); Assert.IsNull(e); didEventFire = true; TestEvent -= HandleTestEvent; } //Act TestWeakEventManager.HandleEvent(this, null, nameof(TestEvent)); //Assert Assert.IsTrue(didEventFire); }
public void WeakEventManager_HandleEvent_NullSender() { // Arrange TestEvent += HandleTestEvent; var didEventFire = false; void HandleTestEvent(object?sender, EventArgs e) { Assert.Null(sender); Assert.IsNotNull(e); didEventFire = true; TestEvent -= HandleTestEvent; } // Act #pragma warning disable CS8625 // Cannot convert null literal to non-nullable reference type. TestWeakEventManager.RaiseEvent(null, new EventArgs(), nameof(TestEvent)); #pragma warning restore CS8625 // Cannot convert null literal to non-nullable reference type. // Assert Assert.IsTrue(didEventFire); }