public void DownloadDirectoryItems_confirmation_message_sent() { var messageSent = false; var dependencyService = new Mock <IResolve>(); var downloadDirectoryItems = new Mock <IDownloadDirectoryItems>(); var ftpServerViewModel = new Mock <IFtpServerViewModel>(); var localSystemViewModel = new Mock <ILocalSystemViewModel>(); var ftpServer = new Mock <IFtpServer>(); var downloadRemoteItem = new Mock <IDownloadRemoteItem>(); ftpServerViewModel.SetupGet(s => s.FtpServer).Returns(ftpServer.Object); dependencyService.Setup(s => s.Resolve <IDownloadDirectoryItems>()) .Returns(downloadDirectoryItems.Object); downloadDirectoryItems.SetupGet(s => s.FtpServer).Returns(ftpServer.Object); Messenger.Default.Register <ApplicationStatusMessage>(this, testMessage => messageSent = true); var message = new DownloadDirectoryItemsMessage { Items = new List <IRemoteItem>() }; var sut = new MainViewModel(dependencyService.Object, ftpServerViewModel.Object, localSystemViewModel.Object); sut.DownloadDirectoryItems(message).Wait(); Assert.IsTrue(messageSent); }
public Task DownloadDirectoryItems(DownloadDirectoryItemsMessage message) { return(Task.Run(() => { var downloadItems = CreateDownloadDirectoryItemsAction(message.Items); DownloadItems(downloadItems, false); })); }
public void DownloadDirectoryItems_conflicts_message_sent() { DownloadFileConflictsViewModel downloadFileConflictsViewModel = null; var dependencyService = new Mock <IResolve>(); var downloadDirectoryItems = new Mock <IDownloadDirectoryItems>(); var ftpServerViewModel = new Mock <IFtpServerViewModel>(); var localSystemViewModel = new Mock <ILocalSystemViewModel>(); var ftpServer = new Mock <IFtpServer>(); var downloadRemoteItem = new Mock <IDownloadRemoteItem>(); ftpServerViewModel.SetupGet(s => s.FtpServer).Returns(ftpServer.Object); dependencyService.Setup(s => s.Resolve <IDownloadDirectoryItems>()) .Returns(downloadDirectoryItems.Object); downloadDirectoryItems.SetupGet(s => s.FtpServer).Returns(ftpServer.Object); downloadDirectoryItems.SetupGet(s => s.FileConflicts).Returns(new List <IDownloadRemoteItem> { downloadRemoteItem.Object }); Messenger.Default.Register <ChangePageMessage>(this, testMessage => { var viewModel = testMessage.ViewModel as DownloadFileConflictsViewModel; if (viewModel == null) { return; } downloadFileConflictsViewModel = viewModel; }); var message = new DownloadDirectoryItemsMessage { Items = new List <IRemoteItem>() }; var sut = new MainViewModel(dependencyService.Object, ftpServerViewModel.Object, localSystemViewModel.Object); sut.DownloadDirectoryItems(message).Wait(); Assert.IsTrue(downloadFileConflictsViewModel.Conflicts.Any(a => a.Item == downloadRemoteItem.Object)); }