public void Properties_WhenSet_TriggerNotifyPropertyChanged() { var propertyChangedTester = new NotifyPropertyChangedTester<FooViewModel>(_viewModel); propertyChangedTester.ExcludeProperties(new[] { "IsNotifying" }); //Exclude the IsNotifying property propertyChangedTester.ExcludeProperties(new Type[] { typeof(IObservableCollection<object>) }); //Exclude all IOsbervable Collections propertyChangedTester.Test(); }
public void CreateConversationMessagesViewModelTest() { for (int i = 0; i < this.conversationMessages.Count; i++) { for (int j = 0; j < this.conversationMessages[i].Count; j++) { MockServiceProxy serviceProxy = new MockServiceProxy() { Messages = this.conversationMessages[i][j].m_Item2}; MockDataContextWrapper dataContext = new MockDataContextWrapper(new MockDatabase() { }); MockUserSettings userSettings = new MockUserSettings(); userSettings.Save(owners[i]); UserModel recipient = null; foreach (UserModel user in this.conversationMessages[i][j].m_Item1.ConversationParticipants) { if (!user.Equals(userSettings.Me)) { recipient = user; } } ConversationMessagesViewModel messages = new ConversationMessagesViewModel(serviceProxy, dataContext, userSettings, this.conversationMessages[i][j].m_Item1.ConversationId, recipient); NotifyPropertyChangedTester propertyChangedTester = new NotifyPropertyChangedTester(messages); NotifyCollectionChangedTester<MessageModel> collectionChangedTester = new NotifyCollectionChangedTester<MessageModel>(messages.Messages); messages.LoadMessagesForConversations(); Assert.AreEqual(1, propertyChangedTester.Changes.Count, "IsLoaded property changed event was not generated"); propertyChangedTester.AssertChange(0, "IsLoading"); Assert.AreEqual(this.conversationMessages[i][j].m_Item2.Count, collectionChangedTester.Count, "Number of messages in notify collection changed doesn't match"); } } }
public void SettingIsVisibleShouldRaiseEvent() { // Arrange var sut = new TestOptionViewModel(); var tester = new NotifyPropertyChangedTester(sut); // Act sut.IsVisible = !sut.IsVisible; // Assert tester.AssertFiredOnly(nameof(OptionViewModelBase.IsVisible)); }
public void NewAllConversationsViewModelTest() { for (int i = 0; i < this.conversations.Count; i++) { MockServiceProxy serviceProxy = new MockServiceProxy(this.conversations[i]); AllConversationsViewModel allConversations = new AllConversationsViewModel(serviceProxy); NotifyPropertyChangedTester propertyChangedTester = new NotifyPropertyChangedTester(allConversations); allConversations.LoadInitialConversations(); Assert.AreEqual(1, propertyChangedTester.Changes.Count, "IsLoaded property changed event was not generated"); propertyChangedTester.AssertChange(0, "IsLoaded"); } }
public void CreateConversationMessagesViewModelTest() { for (int i = 0; i < this.conversationMessages.Count; i++) { for (int j = 0; j < this.conversationMessages[i].Count; j++) { MockServiceProxy serviceProxy = new MockServiceProxy() { Messages = this.conversationMessages[i][j].m_Item2 }; MockDataContextWrapper dataContext = new MockDataContextWrapper(new MockDatabase() { }); MockUserSettings userSettings = new MockUserSettings(); userSettings.Save(owners[i]); UserModel recipient = null; foreach (UserModel user in this.conversationMessages[i][j].m_Item1.ConversationParticipants) { if (!user.Equals(userSettings.Me)) { recipient = user; } } ConversationMessagesViewModel messages = new ConversationMessagesViewModel(serviceProxy, dataContext, userSettings, this.conversationMessages[i][j].m_Item1.ConversationId, recipient); NotifyPropertyChangedTester propertyChangedTester = new NotifyPropertyChangedTester(messages); NotifyCollectionChangedTester <MessageModel> collectionChangedTester = new NotifyCollectionChangedTester <MessageModel>(messages.Messages); messages.LoadMessagesForConversations(); Assert.AreEqual(1, propertyChangedTester.Changes.Count, "IsLoaded property changed event was not generated"); propertyChangedTester.AssertChange(0, "IsLoading"); Assert.AreEqual(this.conversationMessages[i][j].m_Item2.Count, collectionChangedTester.Count, "Number of messages in notify collection changed doesn't match"); } } }
protected override void Setup() { base.Setup(); tester = new NotifyPropertyChangedTester(PlayerTabViewModel); }
public void TestMessage() { NotifyPropertyChangedTester.Test(StatusService, s => s.Message, string.Empty); }
public void TestLifeTime() { NotifyPropertyChangedTester.Test(StatusService, s => s.LifeTime, TimeSpan.FromSeconds(0)); }
public void NewAllConversationsViewModelTest() { List<List<ConversationModel>> conversations = new List<List<ConversationModel>>(); List<UserModel> owners = new List<UserModel>(); this.LoadConversations(conversations, owners); for (int i = 0; i < conversations.Count; i++) { MockServiceProxy serviceProxy = new MockServiceProxy() { }; MockUserSettings userSettings = new MockUserSettings(); MockDataContextWrapper dataContextWrapper = new MockDataContextWrapper(new MockDatabase() { Conversations = conversations[i] }); userSettings.Save(owners[i]); using (AllConversationsViewModel allConversations = new AllConversationsViewModel(serviceProxy, userSettings, dataContextWrapper)) { NotifyPropertyChangedTester propertyChangedTester = new NotifyPropertyChangedTester(allConversations); NotifyCollectionChangedTester<ConversationModel> collectionChangedTester = new NotifyCollectionChangedTester<ConversationModel>(allConversations.Conversations); allConversations.LoadInitialConversations(); while (!allConversations.IsLoaded) { System.Threading.Thread.Sleep(1000); } Assert.AreEqual(1, propertyChangedTester.Changes.Count, "IsLoaded property changed event was not generated"); propertyChangedTester.AssertChange(0, "IsLoaded"); Assert.AreEqual(conversations[i].Count, collectionChangedTester.Count, "Number of conversations in notify collection changed doesn't match"); } } }
protected override void Setup() { base.Setup(); tester = new NotifyPropertyChangedTester(MainWindowViewModel); }
public void EndTimeSetRaisesPropertyChanged() { NotifyPropertyChangedTester.Test(_notification, m => m.EndTime, DateTime.UtcNow); }
protected override void Setup() { base.Setup(); tester = new NotifyPropertyChangedTester(DataContext); }