static void Main(string[] args)
        {
            var parser = new CsvParser();
            var config = BuildConfiguration();

            Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
            var encoding = EncodingDetector.GetEncoding(config["data-file-path"]);
            var data     = parser.ParseFile(config["data-file-path"], encoding);

            if (parser.ErrorMessage != null)
            {
                Console.WriteLine("Parsing failed");
                Console.WriteLine(parser.ErrorMessage);
            }

            var report = DataAnalyser.Analyze(data, Convert.ToUInt32(config["min-number-for-adv-stat"]));

            using (var stream = new FileStream("report.txt", FileMode.Create))
            {
                TextReporter.ToStream(stream, report);
            }
            var reporter = new ExcelReport.ExcelReporter();

            using (var stream = new FileStream("report.xlsx", FileMode.Create))
            {
                reporter.ToStream(stream, report);
            }
        }
Пример #2
0
        public void TextReporterTest()
        {
            using (var stream = new MemoryStream())
            {
                TextReporter.ToStream(stream, _dataAnalyserReport);

                using (var readableStream = new MemoryStream(stream.ToArray()))
                {
                    using (var reader = new StreamReader(readableStream))
                    {
                        var text = _textReporterOutput.Split(Environment.NewLine);
                        var i    = 0;
                        while (!reader.EndOfStream)
                        {
                            Assert.Equal(text[i++], reader.ReadLine());
                        }
                    }
                }
            }
        }