public void ResetFiltersTest001() { Mock <IDeckClassSelectorViewModel> classSelectorFullFilter = GetFullClassFilter(); Mock <IDeckTypeSelectorViewModel> typeSelectorFullFilter = GetFullTypeFilter(); Mock <ITracker> tracker = new Mock <ITracker>(); tracker.Setup(t => t.Decks).Returns(new ObservableCollection <Deck>()); Mock <IMessenger> messanger = new Mock <IMessenger>(); Mock <ISettings> settings = new Mock <ISettings>(); settings.Setup(s => s.DeckViewSortOrder).Returns(DeckViewSortOrder.LastUsed); Mock <ITrackerFactory> trackerFactory = new Mock <ITrackerFactory>(); trackerFactory.Setup(tf => tf.GetService <IMessenger>()).Returns(messanger.Object); trackerFactory.Setup(tf => tf.GetTracker()).Returns(tracker.Object); trackerFactory.Setup(tf => tf.GetService <ISettings>()).Returns(settings.Object); DeckListViewModel model = new DeckListViewModel(trackerFactory.Object); model.CommandResetFiltersExecute(null); //assure filter has been removed messanger.Verify(m => m.Send <DeckListResetFilters>(It.IsAny <DeckListResetFilters>(), It.Is <ControlMessangerContext>(c => c == ControlMessangerContext.DeckList_DeckFilterControl))); }