public void SortedListOfMatchesByKeyIsCreated() { var mockObjects = MockFactories.GetMockObjects(); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); vm.Sideload(MockedDeeplinkMatches.OrderTestList, DeepLinkSortOrder.Key); var firstLevelOneItem = vm.HierarchicalLinks.First(); var lastLevelOneItem = vm.HierarchicalLinks.Last(); Assert.Equal("Key1", firstLevelOneItem.Name); Assert.Equal("Cat1", firstLevelOneItem.SecondLinkHierarchies.First().Name); Assert.Equal("Cat2", firstLevelOneItem.SecondLinkHierarchies.Last().Name); Assert.Equal("Key3", lastLevelOneItem.Name); Assert.Equal("Cat1", lastLevelOneItem.SecondLinkHierarchies.First().Name); Assert.Equal("Cat2", lastLevelOneItem.SecondLinkHierarchies.Last().Name); vm.Sideload(MockedDeeplinkMatches.OrderTestList, DeepLinkSortOrder.Key, true); firstLevelOneItem = vm.HierarchicalLinks.First(); lastLevelOneItem = vm.HierarchicalLinks.Last(); Assert.Equal("Key3", firstLevelOneItem.Name); Assert.Equal("Cat2", firstLevelOneItem.SecondLinkHierarchies.First().Name); Assert.Equal("Cat1", firstLevelOneItem.SecondLinkHierarchies.Last().Name); Assert.Equal("Key1", lastLevelOneItem.Name); Assert.Equal("Cat2", lastLevelOneItem.SecondLinkHierarchies.First().Name); Assert.Equal("Cat1", lastLevelOneItem.SecondLinkHierarchies.Last().Name); }
public void VmIsSubscribedToEventAggregator() { var mockObjects = MockFactories.GetMockObjects(); var eventAggregatorMock = Mock.Get((IEventAggregator)mockObjects[nameof(IEventAggregator)]); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); // Test to make sure subscribe was called on the event aggregator at least once eventAggregatorMock.Verify(x => x.Subscribe(vm), Times.Once); }
public void CopyingToClipboardIsHandled() { var mockObjects = MockFactories.GetMockObjects(); var clipboardManagerMock = Mock.Get((IClipboardManager)mockObjects[nameof(IClipboardManager)]); clipboardManagerMock.Setup(x => x.CopyTextToClipboard(It.IsAny <string>())).Verifiable(); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); vm.CopyLinkToClipboardCommand.Execute("test"); clipboardManagerMock.Verify(x => x.CopyTextToClipboard(It.IsAny <string>()), Times.Once); }
public void TextboxUpdatesThatDoNotMatchAreProcessed() { var mockObjects = MockFactories.GetMockObjects(); var deeplinkManagerMock = Mock.Get((IDeepLinkManager)mockObjects[nameof(IDeepLinkManager)]); deeplinkManagerMock.Setup(x => x.GetDeepLinkMatches(It.IsAny <string>())).Returns((List <DeepLinkMatch>)null); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); vm.ApplyInputCommand.Execute("test"); Assert.Empty(vm.HierarchicalLinks); }
public void IncomingEventsAreHandled() { var mockObjects = MockFactories.GetMockObjects(); var eventAggregatorMock = Mock.Get((IEventAggregator)mockObjects[nameof(IEventAggregator)]); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); vm.Handle(new HistoricalDeepLinkSelectedEvent( new List <DeepLinkMatch>() { MockedDeeplinkMatches.SimpleDeepLinkMatch, }, "test")); // Updates that come from the history part should not fire a vice versa update eventAggregatorMock.Verify(x => x.Publish(It.IsAny <object>(), It.IsAny <System.Action <System.Action> >()), Times.Exactly(0)); }
public void ClipboardUpdatesThatDoNotMatchAreProcessed() { var mockObjects = MockFactories.GetMockObjects(); var clipboardManagerMock = Mock.Get((IClipboardManager)mockObjects[nameof(IClipboardManager)]); var deeplinkManagerMock = Mock.Get((IDeepLinkManager)mockObjects[nameof(IDeepLinkManager)]); var eventAggregatorMock = Mock.Get((IEventAggregator)mockObjects[nameof(IEventAggregator)]); deeplinkManagerMock.Setup(x => x.GetDeepLinkMatches(It.IsAny <string>())).Returns((List <DeepLinkMatch>)null); eventAggregatorMock.Setup(x => x.Publish(It.IsAny <object>(), It.IsAny <System.Action <System.Action> >())).Verifiable(); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); clipboardManagerMock.Raise(x => x.ClipboardTextUpdateReceived += null, this, new ClipboardTextUpdateEventArgs(new[] { "test" })); deeplinkManagerMock.Verify(x => x.GetDeepLinkMatches(It.IsAny <string>()), Times.Exactly(1)); eventAggregatorMock.Verify(x => x.Publish(It.IsAny <object>(), It.IsAny <System.Action <System.Action> >()), Times.Exactly(0)); }
public void ChangingDeepLinkSortOrderIsHandled() { var mockObjects = MockFactories.GetMockObjects(); var vm = MockFactories.DeepLinkCollectionViewModelFactory(mockObjects); vm.Sideload(MockedDeeplinkMatches.OrderTestList); var firstLevelOneItem = vm.HierarchicalLinks.First(); Assert.Equal("Cat1", firstLevelOneItem.Name); vm.ChangeDeepLinkSortOrderDirectionCommand.Execute(null); firstLevelOneItem = vm.HierarchicalLinks.First(); Assert.Equal("Key1", firstLevelOneItem.Name); }