public void ExportAllCommand_Execute_PassedNull_SingleProject_ExpectExecution() { var builder = new MockVbeBuilder(); var projectMock = builder.ProjectBuilder("TestProject1", ProjectProtection.Unprotected) .AddComponent("Module1", ComponentType.StandardModule, "") .AddComponent("ClassModule1", ComponentType.ClassModule, "") .AddComponent("Document1", ComponentType.Document, "") .AddComponent("UserForm1", ComponentType.UserForm, ""); var project = projectMock.Build(); project.SetupGet(m => m.IsSaved).Returns(true); project.SetupGet(m => m.FileName).Returns(_projectFullPath); var vbe = builder.AddProject(project).Build(); var mockFolderBrowser = new Mock <IFolderBrowser>(); mockFolderBrowser.Setup(m => m.SelectedPath).Returns(_path); mockFolderBrowser.Setup(m => m.ShowDialog()).Returns(DialogResult.OK); var mockFolderBrowserFactory = new Mock <IFileSystemBrowserFactory>(); mockFolderBrowserFactory.Setup(m => m.CreateFolderBrowser(It.IsAny <string>(), true, _projectPath)).Returns(mockFolderBrowser.Object); project.Setup(m => m.ExportSourceFiles(_path)); var ExportAllCommand = new ExportAllCommand(vbe.Object, mockFolderBrowserFactory.Object); ExportAllCommand.Execute(null); project.Verify(m => m.ExportSourceFiles(_path), Times.Once); }
private void RaiseButtonNotifications() { AddTgFileCommand.RaiseCanExecuteChangedNotification(); AddTgFolderCommand.RaiseCanExecuteChangedNotification(); RemoveTgFileCommand.RaiseCanExecuteChangedNotification(); ClearTgFilesCommand.RaiseCanExecuteChangedNotification(); ProcessCommand.RaiseCanExecuteChangedNotification(); SetOutputFolderCommand.RaiseCanExecuteChangedNotification(); LoadOutputFolderCommand.RaiseCanExecuteChangedNotification(); ExportAllCommand.RaiseCanExecuteChangedNotification(); BatchSettingsCommand.RaiseCanExecuteChangedNotification(); }
public void ExportAllCommand_CanExecute_PassedIVBProject_NoComponents_ExpectFalse() { var builder = new MockVbeBuilder(); var projectMock = builder.ProjectBuilder("TestProject1", ProjectProtection.Unprotected); var project = projectMock.Build(); var vbe = builder.AddProject(project).Build(); vbe.SetupGet(m => m.ActiveVBProject.VBComponents.Count).Returns(0); var mockFolderBrowser = new Mock <IFolderBrowser>(); var mockFolderBrowserFactory = new Mock <IFileSystemBrowserFactory>(); var ExportAllCommand = new ExportAllCommand(vbe.Object, mockFolderBrowserFactory.Object); Assert.IsFalse(ExportAllCommand.CanExecute(vbe.Object)); }
public void ExportAllCommand_Execute_PassedNull_MultipleProjects_BrowserCanceled_ExpectNoExecution() { var builder = new MockVbeBuilder(); var projectMock1 = builder.ProjectBuilder("TestProject1", ProjectProtection.Unprotected) .AddComponent("Module1", ComponentType.StandardModule, "") .AddComponent("ClassModule1", ComponentType.ClassModule, "") .AddComponent("Document1", ComponentType.Document, "") .AddComponent("UserForm1", ComponentType.UserForm, ""); var projectMock2 = builder.ProjectBuilder("TestProject2", ProjectProtection.Unprotected) .AddComponent("Module1", ComponentType.StandardModule, "") .AddComponent("ClassModule1", ComponentType.ClassModule, "") .AddComponent("Document1", ComponentType.Document, "") .AddComponent("UserForm1", ComponentType.UserForm, ""); var project1 = projectMock1.Build(); var project2 = projectMock2.Build(); project1.SetupGet(m => m.IsSaved).Returns(true); project1.SetupGet(m => m.FileName).Returns(_projectFullPath); project2.SetupGet(m => m.IsSaved).Returns(true); project2.SetupGet(m => m.FileName).Returns(_projectFullPath2); var vbe = builder .AddProject(project1) .AddProject(project2) .Build(); var mockFolderBrowser = new Mock <IFolderBrowser>(); mockFolderBrowser.Setup(m => m.SelectedPath).Returns(_path); mockFolderBrowser.Setup(m => m.ShowDialog()).Returns(DialogResult.Cancel); var mockFolderBrowserFactory = new Mock <IFileSystemBrowserFactory>(); mockFolderBrowserFactory.Setup(m => m.CreateFolderBrowser(It.IsAny <string>(), true, _projectPath)).Returns(mockFolderBrowser.Object); project2.Setup(m => m.ExportSourceFiles(_path)); var ExportAllCommand = new ExportAllCommand(vbe.Object, mockFolderBrowserFactory.Object); ExportAllCommand.Execute(null); // project2 added last, will be active project project1.Verify(m => m.ExportSourceFiles(_path), Times.Never); project2.Verify(m => m.ExportSourceFiles(_path), Times.Never); }
public void UpdateCommandAvailability() { OpenArchiveCommand.IsEnabled = !IsFileSystemLoading; if (IsFileSystemValid) { CloseArchiveCommand.Enable(); SaveArchiveCommand.Enable(); ExportAllCommand.Enable(); } else { CloseArchiveCommand.Disable(); SaveArchiveCommand.Disable(); ExportAllCommand.Disable(); } }
//private void Closing(object args) //{ // if (!Running) // { // return; // } // var result = MessageBox.Show("The program is currently running, are you sure you want to cancel it?", "Batch Running", MessageBoxButton.YesNo, MessageBoxImage.Question); // if (result == MessageBoxResult.Yes) // { // IEnumerable<SingleMouseViewModel> allMice = TgItemsSource.Concat(NtgItemsSource); // foreach (SingleMouseViewModel mouse in allMice) // { // mouse.Stop = true; // } // Running = false; // return; // } // CancelEventArgs cancelEventArgs = args as CancelEventArgs; // if (cancelEventArgs != null) // { // cancelEventArgs.Cancel = true; // } //} private void LoadOutputFolder() { IRepository repo = RepositoryResolver.Resolve <IRepository>(); string initialLocation = repo.GetValue <string>("OutputFolderLocation"); string folderLocation = FileBrowser.BrowseForFolder(initialLocation); if (string.IsNullOrWhiteSpace(folderLocation)) { return; } repo.SetValue("OutputFolderLocation", folderLocation); repo.Save(); string[] artFiles = Directory.GetFiles(folderLocation, "*.art"); foreach (string file in artFiles) //Parallel.ForEach(artFiles, file => { string videoFileName = Path.GetFileNameWithoutExtension(file); //if (videoFileName.Contains("091119-0038")) //{ // Console.WriteLine("h"); //} if (string.IsNullOrWhiteSpace(videoFileName)) { continue; //return; } //if (videoFileName.Contains("091218-0179")) //{ // Console.WriteLine("test"); //} //SingleMouseViewModel mouse = null; ////videoFileName = file.Replace(".art", ""); //bool testBreak = false; //foreach (var listMouse in TgItemsSource) //{ // foreach (var temp in listMouse.VideoFiles) // { // if (temp.VideoFileName.Contains(videoFileName)) // { // mouse = listMouse; // testBreak = true; // break; // } // } // if (testBreak) // { // break; // } //} SingleMouseViewModel mouse = TgItemsSource.FirstOrDefault(x => x.VideoFiles.FirstOrDefault(y => y.VideoFileName.Contains(videoFileName)) != null); if (mouse == null) { //Can't find mouse //return; continue; } ISingleFile singleFile = mouse.VideoFiles.First(x => x.VideoFileName.Contains(videoFileName)); XmlSerializer serializer = new XmlSerializer(typeof(TrackedVideoXml)); TrackedVideoXml trackedVideoXml; using (StreamReader reader = new StreamReader(file)) { trackedVideoXml = (TrackedVideoXml)serializer.Deserialize(reader); } ITrackedVideo trackedVideo = trackedVideoXml.GetData(); IMouseDataResult mouseDataResult = ModelResolver.Resolve <IMouseDataResult>(); if (trackedVideo.Result != SingleFileResult.Ok) { mouseDataResult.Message = trackedVideo.Message; mouseDataResult.VideoOutcome = trackedVideo.Result; if (mouse.Results == null) { mouse.Results = new Dictionary <ISingleFile, IMouseDataResult>(); } mouse.Results.Add(singleFile, mouseDataResult); mouse.ReviewCommand.RaiseCanExecuteChangedNotification(); mouse.UpdateProgress(singleFile, 1); continue; } var tempResults = trackedVideo.Results; Dictionary <int, ISingleFrameResult> results = new Dictionary <int, ISingleFrameResult>(); foreach (var kvp in tempResults) { ISingleFrameResult singleFrame = ModelResolver.Resolve <ISingleFrameResult>(); if (kvp.Value != null) { ISingleFrameResult tempResult = kvp.Value; singleFrame.HeadPoints = tempResult.HeadPoints; singleFrame.CentroidSize = tempResult.CentroidSize; singleFrame.PelvicArea = tempResult.PelvicArea; singleFrame.PelvicArea2 = tempResult.PelvicArea2; singleFrame.PelvicArea3 = tempResult.PelvicArea3; singleFrame.PelvicArea4 = tempResult.PelvicArea4; singleFrame.SmoothedHeadPoint = tempResult.SmoothedHeadPoint; singleFrame.Centroid = tempResult.Centroid; } results.Add(kvp.Key, singleFrame); } mouseDataResult.Name = mouse.Id; mouseDataResult.Results = results; mouseDataResult.Age = mouse.Age; mouseDataResult.Boundaries = trackedVideo.Boundries; mouseDataResult.VideoOutcome = SingleFileResult.Ok; mouseDataResult.GapDistance = trackedVideo.GapDistance; mouseDataResult.ThresholdValue = trackedVideo.ThresholdValue; mouseDataResult.ThresholdValue2 = trackedVideo.ThresholdValue2; mouseDataResult.StartFrame = trackedVideo.StartFrame; mouseDataResult.EndFrame = trackedVideo.EndFrame; mouseDataResult.SmoothMotion = trackedVideo.SmoothMotion; mouseDataResult.FrameRate = trackedVideo.FrameRate; mouseDataResult.UnitsToMilimeters = trackedVideo.UnitsToMilimeters; mouseDataResult.SmoothFactor = 0.68; mouseDataResult.GenerateResults(file); mouseDataResult.PelvicArea = trackedVideo.PelvicArea1; mouseDataResult.PelvicArea2 = trackedVideo.PelvicArea2; mouseDataResult.PelvicArea3 = trackedVideo.PelvicArea3; mouseDataResult.PelvicArea4 = trackedVideo.PelvicArea4; mouseDataResult.Type = mouse.Type; mouseDataResult.DataLoadComplete(); if (mouse.Results == null) { mouse.Results = new Dictionary <ISingleFile, IMouseDataResult>(); } mouse.UpdateProgress(singleFile, 1); mouse.Results.Add(singleFile, mouseDataResult); mouse.ReviewCommand.RaiseCanExecuteChangedNotification(); }//); ExportAllCommand.RaiseCanExecuteChangedNotification(); }
public ExportAllCommandMenuItem(ExportAllCommand command) : base(command) { }