public void RemovesListItemMessageNotification() { BaseClassMockWithChildren obj = ObjectUtilities.CreateInstanceWithRandomValues <BaseClassMockWithChildren>(); obj.ChangeMessage(); MessengerMonitor <BaseClassMockWithChildren> monitor = new MessengerMonitor <BaseClassMockWithChildren>(obj); while (obj.ChildCollection.Count > 0) { BaseClassMock child = obj.ChildCollection.Last(); obj.ChildCollection.Remove(child); child.ChangeMessage(RandomUtilities.GetRandomString(obj.Message)); Assert.AreNotEqual(child.Message, obj.Message); monitor.AssertMessageCount(0, false); } while (obj.ChildCollectionReadOnly.Count > 0) { BaseClassMock child = obj.ChildCollectionReadOnly.Last(); obj.ChildCollectionReadOnly.Remove(child); child.ChangeMessage(RandomUtilities.GetRandomString(obj.Message)); Assert.AreNotEqual(child.Message, obj.Message); monitor.AssertMessageCount(0, false); } }
public void RemovesChildMessageNotification() { BaseClassMockWithChildren obj = ObjectUtilities.CreateInstanceWithRandomValues <BaseClassMockWithChildren>(); obj.ChangeMessage(); MessengerMonitor <BaseClassMockWithChildren> monitor = new MessengerMonitor <BaseClassMockWithChildren>(obj); BaseClassMock child = obj.Child; obj.Child = new BaseClassMock(); for (int i = 0; i < new Random().Next(5, 20); i++) { string message = RandomUtilities.GetRandomString(obj.Message); child.ChangeMessage(message); Assert.AreNotEqual(message, obj.Message); } monitor.AssertMessageCount(0, false); }