public void Append(DirectoryStatistics other)
 {
     PrivateTotal          += other.PrivateTotal;
     PrivateNoChangesCount += other.PrivateNoChangesCount;
     PrivateFailedCount    += other.PrivateFailedCount;
     PrivateConvertedCount += other.PrivateConvertedCount;
 }
        public void Counting_FileName_CorrectResultStatistics()
        {
            var fileName = Path.Combine(TestContext.CurrentContext.TestDirectory, "sample1.xml");
            var storage  = new MetadataStorage();
            var metadata = new ImageMetadata
            {
                Description = "Описание",
                Brightness  = ImageBrightness.Dark,
                Plates      = new[]
                {
                    new PlateMetadata()
                    {
                        Number = "T288EC98", Quality = PlateQuality.Low, Stencil = "RU_N01_a000aa00"
                    },
                    new PlateMetadata()
                    {
                        Number = "C534YX177", Quality = PlateQuality.Normal, Stencil = "RU_N02_a000aa100"
                    },
                },
            };

            metadata.Plates[0].Coordinates[0] = new Point(111, 45);
            storage.SaveMetadata(fileName, metadata);
            var dictionary = new Dictionary <string, int>
            {
                { "RU_N01_a000aa00", 0 },
                { "RU_N01_a000aa100", 0 },
            };
            var stat = new DirectoryStatistics();

            stat.Counting(fileName, dictionary, 1000);

            Assert.That(stat.CountImages, Is.EqualTo(1));
            Assert.That(stat.CountDarkImages, Is.EqualTo(1));
            Assert.That(stat.CountLightImages, Is.Zero);
            Assert.That(stat.CountLargeNumber, Is.Zero);
            Assert.That(stat.CountMediumNumber, Is.EqualTo(1));
            Assert.That(stat.CountSmallNumber, Is.Zero);
            Assert.That(stat.CountHighQuality, Is.Zero);
            Assert.That(stat.CountMediumQuality, Is.EqualTo(1));
            Assert.That(stat.CountLowQuality, Is.EqualTo(1));
            Assert.That(stat.CountOneNumber, Is.Zero);
            Assert.That(stat.CountTwoNumber, Is.EqualTo(1));
            Assert.That(stat.CountMoreTwoNumber, Is.Zero);
            Assert.That(stat.Marked, Is.Zero);
            Assert.That(stat.Unplaced, Is.EqualTo(1));
        }
        private static void RunMarkdownConversion(string pathsSpec, Configuration config, Markdown markdownToHtml, Logger log)
        {
            // Preview mode must take precedence over logging mode.
            if (ThisIsPreview)
            {
                log.Info(Language.Message("PreviewModeEnabled"));
            }
            else if (ThisIsLogOnly)
            {
                log.Info(Language.Message("LoggingModeEnabled"));
            }

            var folders = GetDirectoriesPathsSpec(pathsSpec, config);

            var timer = new Stopwatch();

            timer.Start();

            DirectoryStatistics statistics = new DirectoryStatistics();

            foreach (var folder in folders)
            {
                if (folder.Directory.GetFiles().Length == 0)
                {
                    continue;
                }
                statistics.IncrementTotal();
                foreach (var lang in folder.Languages)
                {
                    if (folder.Directory.GetFiles(string.Format("*.{0}.udn", lang)).Length == 0)
                    {
                        continue;
                    }
                    var fileName  = folder.Directory.GetFiles(string.Format("*.{0}.udn", lang)).First().FullName;
                    var langLinks = config.LinksToAllLangs ? null : folder.Languages.ToArray();

                    LogConvertingFileInfo(log, fileName, "StartConversion");

                    var result = ConvertFile(markdownToHtml, fileName, lang, langLinks, config.OutputFormatParam);

                    switch (result)
                    {
                    case ConvertFileResponse.NoChange:
                    {
                        LogConvertingFileInfo(log, fileName, "ConvertNoChange");
                        statistics.IncrementNoChangesCount();
                        break;
                    }

                    case ConvertFileResponse.Converted:
                    {
                        var outputFileName = GetTargetFileName(fileName, lang);

                        if (!ThisIsPreview && ThisIsLogOnly)
                        {
                            LogConvertingFileInfo(log, fileName, "ConvertSucceededLogOnly", outputFileName);
                            break;
                        }

                        if (folders.Count == 1 && folders[0].Languages.Count == 1)
                        {
                            LogConvertingFileInfo(log, fileName, "ConvertSucceeded", outputFileName);
                            OpenPageInBrowser(outputFileName);
                        }
                        else
                        {
                            LogConvertingFileInfo(log, fileName, "Converted", outputFileName);
                        }

                        statistics.IncrementConvertedCount();
                        break;
                    }

                    case ConvertFileResponse.Failed:
                    {
                        LogConvertingFileInfo(log, fileName, "ConvertFailed");
                        statistics.IncrementFailedCount();
                        break;
                    }

                    default:
                        LogConvertingFileInfo(log, fileName, "UnknownErrorProcessingFile");
                        break;
                    }
                }
            }

            timer.Stop();

            log.WriteToLog(Language.Message("SummaryStart"));
            log.WriteToLog(Language.Message("ConvertedIn", (Convert.ToDouble(timer.ElapsedMilliseconds) / 1000).ToString()));
            statistics.LogCounts();
            log.WriteToLog(Language.Message("SummaryEnd"));
        }
Ejemplo n.º 4
0
        private static void RunMarkdownConversion(string pathsSpec, Configuration config, Markdown markdownToHtml, Logger log)
        {
            // Preview mode must take precedence over logging mode.
            if (ThisIsPreview)
            {
                log.Info(Language.Message("PreviewModeEnabled"));
            }
            else if (ThisIsLogOnly)
            {
                log.Info(Language.Message("LoggingModeEnabled"));
            }

            var folders = GetDirectoriesPathsSpec(pathsSpec, config);

            var timer = new Stopwatch();
            timer.Start();

            DirectoryStatistics statistics = new DirectoryStatistics();

            foreach (var folder in folders)
            {
                if (folder.Directory.GetFiles().Length == 0)
                {
                    continue;
                }
                statistics.IncrementTotal();
                foreach (var lang in folder.Languages)
                {
                    if (folder.Directory.GetFiles(string.Format("*.{0}.udn", lang)).Length == 0)
                    {
                        continue;
                    }
                    var fileName = folder.Directory.GetFiles(string.Format("*.{0}.udn", lang)).First().FullName;
                    var langLinks = config.LinksToAllLangs ? null : folder.Languages.ToArray();

                    LogConvertingFileInfo(log, fileName, "StartConversion");

                    var result = ConvertFile(markdownToHtml, fileName, lang, langLinks, config.OutputFormatParam);

                    switch (result)
                    {
                        case ConvertFileResponse.NoChange:
                        {
                            LogConvertingFileInfo(log, fileName, "ConvertNoChange");
                            statistics.IncrementNoChangesCount();
                            break;
                        }
                        case ConvertFileResponse.Converted:
                        {
                            var outputFileName = GetTargetFileName(fileName, lang);

                            if (!ThisIsPreview && ThisIsLogOnly)
                            {
                                LogConvertingFileInfo(log, fileName, "ConvertSucceededLogOnly", outputFileName);
                                break;
                            }

                            if (folders.Count == 1 && folders[0].Languages.Count == 1)
                            {
                                LogConvertingFileInfo(log, fileName, "ConvertSucceeded", outputFileName);
                                OpenPageInBrowser(outputFileName);
                            }
                            else
                            {
                                LogConvertingFileInfo(log, fileName, "Converted", outputFileName);
                            }

                            statistics.IncrementConvertedCount();
                            break;
                        }
                        case ConvertFileResponse.Failed:
                        {
                            LogConvertingFileInfo(log, fileName, "ConvertFailed");
                            statistics.IncrementFailedCount();
                            break;
                        }
                        default:
                            LogConvertingFileInfo(log, fileName, "UnknownErrorProcessingFile");
                            break;
                    }
                }
            }

            timer.Stop();

            log.WriteToLog(Language.Message("SummaryStart"));
            log.WriteToLog(Language.Message("ConvertedIn", (Convert.ToDouble(timer.ElapsedMilliseconds) / 1000).ToString()));
            statistics.LogCounts();
            log.WriteToLog(Language.Message("SummaryEnd"));
        }
Ejemplo n.º 5
0
 public void Append(DirectoryStatistics other)
 {
     PrivateTotal += other.PrivateTotal;
     PrivateNoChangesCount += other.PrivateNoChangesCount;
     PrivateFailedCount += other.PrivateFailedCount;
     PrivateConvertedCount += other.PrivateConvertedCount;
 }