Ejemplo n.º 1
0
        public void ConfigureSonarQube_CheckAllRequestsImplemented()
        {
            var testSubject = DefaultConfiguration.ConfigureSonarQube(new RequestFactory(new TestLogger()));
            var serverInfo  = new ServerInfo(null /* latest */, ServerType.SonarQube);

            testSubject.Create <IDownloadStaticFile>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetHotspotRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetIssuesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetLanguagesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetModulesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetNotificationsRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetOrganizationsRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetPluginsRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetProjectsRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetPropertiesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetQualityProfileChangeLogRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetQualityProfilesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetRoslynExportProfileRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetRulesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetTaintVulnerabilitiesRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetVersionRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IValidateCredentialsRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetSourceCodeRequest>(serverInfo).Should().NotBeNull();
            testSubject.Create <IGetProjectBranchesRequest>(serverInfo).Should().NotBeNull();
        }
        public IRequestFactory Select(bool isSonarCloud, ILogger logger)
        {
            if (isSonarCloud)
            {
                logger.Debug("Selected SonarCloud request factory");
                return(DefaultConfiguration.ConfigureSonarCloud(new UnversionedRequestFactory(logger)));
            }

            logger.Debug("Selected SonarQube request factory");
            return(DefaultConfiguration.ConfigureSonarQube(new RequestFactory(logger)));
        }
Ejemplo n.º 3
0
        public void ConfigureSonarQube_Writes_Debug_Messages()
        {
            var logger = new TestLogger();

            var expected = new string[]
            {
                "Registered SonarQube.Client.Api.V2_10.GetPluginsRequest for 2.1",
                "Registered SonarQube.Client.Api.V2_10.GetProjectsRequest for 2.1",
                "Registered SonarQube.Client.Api.V2_10.GetVersionRequest for 2.1",
                "Registered SonarQube.Client.Api.V2_60.GetPropertiesRequest for 2.6",
                "Registered SonarQube.Client.Api.V3_30.ValidateCredentialsRequest for 3.3",
                "Registered SonarQube.Client.Api.V5_00.GetSourceCodeRequest for 5.0",
                "Registered SonarQube.Client.Api.V5_10.GetIssuesRequest for 5.1",
                "Registered SonarQube.Client.Api.V5_10.GetLanguagesRequest for 5.1",
                "Registered SonarQube.Client.Api.V5_20.GetQualityProfileChangeLogRequest for 5.2",
                "Registered SonarQube.Client.Api.V5_20.GetQualityProfilesRequest for 5.2",
                "Registered SonarQube.Client.Api.V5_20.GetRoslynExportProfileRequest for 5.2",
                "Registered SonarQube.Client.Api.V5_40.GetModulesRequest for 5.4",
                "Registered SonarQube.Client.Api.V5_50.GetRulesRequest for 5.5",
                "Registered SonarQube.Client.Api.V5_50.DownloadStaticFile for 5.5",
                "Registered SonarQube.Client.Api.V6_20.GetOrganizationsRequest for 6.2",
                "Registered SonarQube.Client.Api.V6_20.GetProjectsRequest for 6.2",
                "Registered SonarQube.Client.Api.V6_30.GetPluginsRequest for 6.3",
                "Registered SonarQube.Client.Api.V6_30.GetPropertiesRequest for 6.3",
                "Registered SonarQube.Client.Api.V6_50.GetQualityProfileChangeLogRequest for 6.5",
                "Registered SonarQube.Client.Api.V6_50.GetQualityProfilesRequest for 6.5",
                "Registered SonarQube.Client.Api.V6_60.GetNotificationsRequest for 6.6",
                "Registered SonarQube.Client.Api.V6_60.GetRoslynExportProfileRequest for 6.6",
                "Registered SonarQube.Client.Api.V6_60.GetProjectBranchesRequest for 6.6",
                "Registered SonarQube.Client.Api.V7_00.GetOrganizationsRequest for 7.0",
                "Registered SonarQube.Client.Api.V7_20.GetIssuesRequestWrapper for 7.2",
                "Registered SonarQube.Client.Api.V8_6.GetHotspotRequest for 8.6",
                "Registered SonarQube.Client.Api.V8_6.GetTaintVulnerabilitiesRequest for 8.6",
            };

            DefaultConfiguration.ConfigureSonarQube(new RequestFactory(logger));

            DumpDebugMessages(logger);

            logger.DebugMessages.Should().ContainInOrder(expected);
            logger.DebugMessages.Count.Should().Be(expected.Length);
        }