Exemple #1
0
        public void WhenBuilding1DayShouldComputeDatesCorrectly()
        {
            var args = new SonarGenericMetricsCommandLineArgs();

            args.EndDate      = new DateTime(2018, 9, 17, 11, 00, 00);
            args.Generate1Day = "true";

            var converters = builder.Build(args);

            AssertAllMeasureConverters(converters, "_1d", new DateTime(2018, 9, 16, 00, 00, 00), new DateTime(2018, 9, 17, 00, 00, 00));
        }
Exemple #2
0
        public void WhenBuildingWithoutEndDateShouldUseSystemDate()
        {
            var args = new SonarGenericMetricsCommandLineArgs();

            args.EndDate      = null;
            args.Generate1Day = "true";

            var converters = builder.Build(args);

            AssertAllMeasureConverters(converters, "_1d", new DateTime(2018, 9, 16, 00, 00, 00), new DateTime(2018, 9, 17, 00, 00, 00));
        }
Exemple #3
0
        private static int RunSonarGenericMetrics(SonarGenericMetricsCommandLineArgs a)
        {
            var fileSystem   = new FileSystem();
            var jsonParser   = new JsonListParser <DailyCodeChurn>(new FileStreamFactory());
            var converters   = new MeasureConverterListBuilder(new EnvironmentImpl()).Build(a);
            var jsonExporter = new JsonExporter(new FileStreamFactory());

            var processor = new SonarGenericMetricsProcessor(fileSystem, jsonParser, converters, jsonExporter, new ConsoleLoggerWithTimestamp());

            processor.Process(a);

            return(0);
        }
        public GivenASonarGenericMetricsProcessor()
        {
            this.commandLineArgs          = new SonarGenericMetricsCommandLineArgs();
            this.commandLineArgs.InputDir = "inputDir";

            this.fileSystemMock = new Mock <IFileSystem>();
            this.parserMock     = new Mock <IJsonListParser <DailyCodeChurn> >();

            var file1Mock = new Mock <IFile>();

            file1Mock.Setup(m => m.FileName).Returns("file1");
            var file2Mock = new Mock <IFile>();

            file2Mock.Setup(m => m.FileName).Returns("file2");
            var filesMock = new List <IFile>()
            {
                file1Mock.Object,
                file2Mock.Object
            };

            this.fileSystemMock.Setup(m => m.GetFiles(this.commandLineArgs.InputDir, "*.json")).Returns(filesMock);

            measureConverter1Mock = new Mock <IMeasureConverter>();
            measureConverter2Mock = new Mock <IMeasureConverter>();

            this.measureConverters = new List <IMeasureConverter>()
            {
                measureConverter1Mock.Object,
                measureConverter2Mock.Object
            };

            this.dailyCodeChurn1 = new List <DailyCodeChurn>()
            {
                new DailyCodeChurn(),
                new DailyCodeChurn()
            };
            this.dailyCodeChurn2 = new List <DailyCodeChurn>()
            {
                new DailyCodeChurn()
            };

            this.parserMock.Setup(m => m.ParseFile("file1")).Returns(dailyCodeChurn1);
            this.parserMock.Setup(m => m.ParseFile("file2")).Returns(dailyCodeChurn2);

            this.jsonExporterMock = new Mock <IJsonExporter>();

            this.processor = new SonarGenericMetricsProcessor(this.fileSystemMock.Object, this.parserMock.Object, this.measureConverters, this.jsonExporterMock.Object, new Mock <ILogger>().Object);
        }
Exemple #5
0
        public void WhenBuildingShouldCreateMeasureConverters()
        {
            var args = new SonarGenericMetricsCommandLineArgs();

            args.EndDate         = new DateTime(2018, 9, 17, 11, 00, 00);
            args.Generate1Day    = "true";
            args.Generate1Year   = "true";
            args.Generate30Days  = "true";
            args.Generate3Months = "true";
            args.Generate6Months = "true";
            args.Generate7Days   = "true";

            var converters = builder.Build(args);

            Assert.Equal(37, converters.Count);
        }