public void Test_ObservableRecipient_Injection() { var messenger = new Messenger(); var viewmodel = new SomeRecipient <int>(messenger); Assert.AreSame(viewmodel.CurrentMessenger, messenger); }
public void Test_ObservableRecipient_Injection(Type type) { var messenger = (IMessenger)Activator.CreateInstance(type); var viewmodel = new SomeRecipient <int>(messenger); Assert.AreSame(viewmodel.CurrentMessenger, messenger); }
public void Test_ObservableRecipient_Activation() { var viewmodel = new SomeRecipient <int>(); Assert.IsFalse(viewmodel.IsActivatedCheck); viewmodel.IsActive = true; Assert.IsTrue(viewmodel.IsActivatedCheck); Assert.IsTrue(viewmodel.CurrentMessenger.IsRegistered <SampleMessage>(viewmodel)); viewmodel.IsActive = false; Assert.IsFalse(viewmodel.IsActivatedCheck); Assert.IsFalse(viewmodel.CurrentMessenger.IsRegistered <SampleMessage>(viewmodel)); }
public void Test_ObservableRecipient_Broadcast() { var messenger = new Messenger(); var viewmodel = new SomeRecipient <int>(messenger); PropertyChangedMessage <int> message = null; messenger.Register <PropertyChangedMessage <int> >(messenger, m => message = m); viewmodel.Data = 42; Assert.IsNotNull(message); Assert.AreSame(message.Sender, viewmodel); Assert.AreEqual(message.OldValue, 0); Assert.AreEqual(message.NewValue, 42); Assert.AreEqual(message.PropertyName, nameof(SomeRecipient <int> .Data)); }
public void Test_ObservableRecipient_Activation(Type type) { var messenger = (IMessenger)Activator.CreateInstance(type); var viewmodel = new SomeRecipient <int>(messenger); Assert.IsFalse(viewmodel.IsActivatedCheck); viewmodel.IsActive = true; Assert.IsTrue(viewmodel.IsActivatedCheck); Assert.IsTrue(viewmodel.CurrentMessenger.IsRegistered <SampleMessage>(viewmodel)); viewmodel.IsActive = false; Assert.IsFalse(viewmodel.IsActivatedCheck); Assert.IsFalse(viewmodel.CurrentMessenger.IsRegistered <SampleMessage>(viewmodel)); }
public void Test_ObservableRecipient_Defaults() { var viewmodel = new SomeRecipient <int>(); Assert.AreSame(viewmodel.CurrentMessenger, Messenger.Default); }