示例#1
0
        private Version GetVersion(SonarBeginSettings settings)
        {
            if (settings == null)
            {
                return(null);
            }

            if (settings.VersionResult == null)
            {
                try
                {
                    var version = new SonarServer().GetVersion(settings.Url).Result;
                    settings.VersionResult = new VersionResult
                    {
                        Url     = settings.Url,
                        Version = version
                    };
                }
                catch (Exception e)
                {
                    settings.VersionResult = new VersionResult
                    {
                        Exception = e,
                        Url       = settings.Url
                    };
                }
            }

            return(settings.VersionResult.Version);
        }
 public TestArgumentBuilderTest()
 {
     _beginSettings = new SonarBeginSettings
     {
         Login            = "******",
         Password         = "******",
         Url              = "http://sonarqube.com:9000",
         NUnitReportsPath = "./out/nunit.xml"
     };
 }
        public void TestGetEndSettingsFromBeginSettings()
        {
            var s = new SonarBeginSettings
            {
                Login    = "******",
                Password = "******",
                Silent   = true
            };

            var endSettings = s.GetEndSettings();

            Assert.Equal("tom", endSettings.Login);
            Assert.Equal("god", endSettings.Password);
            Assert.True(endSettings.Silent);
        }
        public void PasswordTest()
        {
            var builder = new SonarBeginSettings
            {
                Password = "******"
            }.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.password=""p""", r);
            Assert.Equal(@"begin /d:sonar.password=""[REDACTED]""", s);
        }
        public void TestLogin()
        {
            var builder = new SonarBeginSettings
            {
                Login = "******"
            }.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.login=""tom""", r);
            Assert.Equal(@"begin /d:sonar.login=""[REDACTED]""", s);
        }
        public void TestBranchDefault()
        {
            var builder = new SonarBeginSettings
            {
                VersionResult = new VersionResult(),
                Branch        = "master"
            }.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.branch.name=""master""", r);
            Assert.Equal(@"begin /d:sonar.branch.name=""master""", s);
        }
示例#7
0
        public void Executes_CoreClr_Build_When_UseCoreClrSetting_IsSet()
        {
            var settings = new SonarBeginSettings
            {
                UseCoreClr = true
            };

            try
            {
                _runner.Run(settings);
            }
            catch
            {
                // We cannot mock FileSystemAccess in the internals of the SonarRunner
                // Let´s ignore IOExceptions, just verify that Resolve() was called with the expected (.NET Core tool) arguments
            }

            _toolLocator.Verify(t => t.Resolve(SonarRunner.CORECLR_TOOL_NAME));
        }
        public void CoverageExclussionsTest()
        {
            var beginSettings = new SonarBeginSettings
            {
                Login              = "******",
                Password           = "******",
                Url                = "http://sonarqube.com:9000",
                CoverageExclusions = "SomeClass1.cs,SomeClass2.cs"
            };

            var builder = beginSettings.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:sonar.coverage.exclusions=""SomeClass1.cs,SomeClass2.cs"" /d:sonar.login=""tom"" /d:sonar.password=""god""", r);
            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:sonar.coverage.exclusions=""SomeClass1.cs,SomeClass2.cs"" /d:sonar.login=""[REDACTED]"" /d:sonar.password=""[REDACTED]""", s);
        }
        public void TestBeginSettingsWithDotCoverIntegrationReportsPath()
        {
            var beginSettings = new SonarBeginSettings
            {
                Login    = "******",
                Password = "******",
                Url      = "http://sonarqube.com:9000",
                DotCoverIntegrationReportsPath = "./out/dotCover.html"
            };

            var builder = beginSettings.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:sonar.cs.dotcover.it.reportsPaths=""./out/dotCover.html"" /d:sonar.login=""tom"" /d:sonar.password=""god""", r);
            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:sonar.cs.dotcover.it.reportsPaths=""./out/dotCover.html"" /d:sonar.login=""[REDACTED]"" /d:sonar.password=""[REDACTED]""", s);
        }
        public void CoverageExclussionsTest()
        {
            var beginSettings = new SonarBeginSettings
            {
                Login    = "******",
                Password = "******",
                Url      = "http://sonarqube.com:9000",
                TypescriptCoverageReportsPath = "coverage1.lcov,coverage2.lcov"
            };

            var builder = beginSettings.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:sonar.typescript.lcov.reportPaths=""coverage1.lcov,coverage2.lcov"" /d:sonar.login=""tom"" /d:sonar.password=""god""", r);
            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:sonar.typescript.lcov.reportPaths=""coverage1.lcov,coverage2.lcov"" /d:sonar.login=""[REDACTED]"" /d:sonar.password=""[REDACTED]""", s);
        }
示例#11
0
        public void TestReportTest()
        {
            var beginSettings = new SonarBeginSettings
            {
                Login           = "******",
                Password        = "******",
                Url             = "http://sonarqube.com:9000",
                TestReportPaths = "test-report1.xml,test-report2.xml"
            };

            var builder = beginSettings.GetArguments(null);

            var r = builder.Render();
            var s = builder.RenderSafe();

            Console.WriteLine($"Rendered: {r}");
            Console.WriteLine($"Rendered Safe: {s}");

            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:testExecutionReportPaths=""test-report1.xml,test-report2.xml"" /d:sonar.login=""tom"" /d:sonar.password=""god""", r);
            Assert.Equal(@"begin /d:sonar.host.url=""http://sonarqube.com:9000"" /d:testExecutionReportPaths=""test-report1.xml,test-report2.xml"" /d:sonar.login=""[REDACTED]"" /d:sonar.password=""[REDACTED]""", s);
        }
示例#12
0
 public PullRequestArgumentTest()
 {
     _arguments = new SonarBeginSettings();
 }
示例#13
0
 private Version GetVersion(SonarBeginSettings settings)
 {
     return(settings?.VersionResult?.Version);
 }