Example #1
0
        public async void OpenProject(string path)
        {
            _loadingDisplayer.ShowLoading($"Opening project at {Path.GetFileName(path)}");
            UnimaConfig config = null;

            try
            {
                config = await Task.Run(() => _mediator.Send(new OpenProjectCommand(path, true)));

                _mutationModuleTabOpener.OpenOverviewTab(config);
            }
            catch (ValidationException ex)
            {
                ErrorDialogDisplayer.ShowErrorDialog("Unexpected error", "Failed to open project.", ex.Message);
                return;
            }
            catch (OpenProjectException ex)
            {
                ErrorDialogDisplayer.ShowErrorDialog("Unexpected error", "Failed to open project.", ex.InnerException?.ToString());
                return;
            }
            finally
            {
                _loadingDisplayer.HideLoading();
            }
        }
        private async void CreateDocuments()
        {
            _loadingDisplayer.ShowLoading("Creating mutation documents..");

            try
            {
                var settings = MutationOperatorGridItems.Where(m => m.IsSelected).Select(m => m.MutationOperator);
                var command  = new CreateMutationsCommand(_config, settings.Select(MutationOperatorFactory.GetMutationOperator).ToList());

                var mutationDocuments = await Task.Run(() => _mediator.Send(command));

                var fileNames = mutationDocuments.Select(r => r.FileName).Distinct();

                foreach (var fileName in fileNames)
                {
                    Documents.Add(new DocumentRowModel
                    {
                        MFile = new FileMutationsModel(fileName, mutationDocuments.Where(m => m.FileName == fileName).ToList())
                    });
                }
            }
            catch (MutationDocumentException ex)
            {
                ErrorDialogDisplayer.ShowErrorDialog("Failed to create mutations", ex.Message, ex.InnerException?.Message);
            }
            finally
            {
                _loadingDisplayer.HideLoading();
            }
        }
Example #3
0
        public async void OpenMutationReport(string path)
        {
            try
            {
                _loadingDisplayer.ShowLoading($"Loading report at \"{path}\"");
                var report = await Task.Run(() => JsonConvert.DeserializeObject <UnimaReport>(File.ReadAllText(path)));

                if (report?.Mutations == null)
                {
                    ErrorDialogDisplayer.ShowErrorDialog(
                        "Unexpected error when loading report",
                        "Report is null (did you try to open an empty file?). Please try to open a different file.");
                    return;
                }

                _mutationModuleTabOpener.OpenTestRunTab(report);
            }
            catch (Exception ex)
            {
                ErrorDialogDisplayer.ShowErrorDialog(
                    "Unexpected error when loading report",
                    $"Could not load project at {path}. Please check details for more information.",
                    ex.ToString());
            }
            finally
            {
                _loadingDisplayer.HideLoading();
            }
        }