private DotNetBindingConfigProvider CreateTestSubject(string projectName = "anyProjectName", string serverUrl = "http://localhost",
                                                              INuGetBindingOperation nuGetBindingOperation = null)
        {
            nuGetBindingOperation = nuGetBindingOperation ?? new NoOpNuGetBindingOperation(this.logger);

            return(new DotNetBindingConfigProvider(this.sonarQubeServiceMock.Object, nuGetBindingOperation, serverUrl, projectName, this.logger));
        }
コード例 #2
0
        public BindingProcessImpl(IHost host,
                                  BindCommandArgs bindingArgs,
                                  ISolutionBindingOperation solutionBindingOperation,
                                  INuGetBindingOperation nugetBindingOperation,
                                  IUnboundProjectFinder unboundProjectFinder,
                                  IBindingConfigProvider bindingConfigProvider,
                                  SonarLintMode bindingMode,
                                  bool isFirstBinding = false)
        {
            this.host        = host ?? throw new ArgumentNullException(nameof(host));
            this.bindingArgs = bindingArgs ?? throw new ArgumentNullException(nameof(bindingArgs));
            this.solutionBindingOperation = solutionBindingOperation ?? throw new ArgumentNullException(nameof(solutionBindingOperation));
            this.NuGetBindingOperation    = nugetBindingOperation ?? throw new ArgumentNullException(nameof(nugetBindingOperation));
            this.unboundProjectFinder     = unboundProjectFinder ?? throw new ArgumentNullException(nameof(unboundProjectFinder));
            this.bindingConfigProvider    = bindingConfigProvider ?? throw new ArgumentNullException(nameof(bindingConfigProvider));
            this.bindingMode = bindingMode;

            Debug.Assert(bindingArgs.ProjectKey != null);
            Debug.Assert(bindingArgs.ProjectName != null);
            Debug.Assert(bindingArgs.Connection != null);

            this.projectSystem = this.host.GetService <IProjectSystemHelper>();
            this.projectSystem.AssertLocalServiceIsNotNull();

            this.InternalState = new BindingProcessState(isFirstBinding);
        }
コード例 #3
0
 public DotNetBindingConfigProvider(ISonarQubeService sonarQubeService, INuGetBindingOperation nuGetBindingOperation, string serverUrl, string projectName, ILogger logger)
 {
     this.sonarQubeService      = sonarQubeService;
     this.nuGetBindingOperation = nuGetBindingOperation;
     this.serverUrl             = serverUrl;
     this.projectName           = projectName;
     this.logger = logger;
 }
 internal /* for testing */ CSharpVBBindingConfigProvider(ISonarQubeService sonarQubeService,
                                                          INuGetBindingOperation nuGetBindingOperation, ILogger logger,
                                                          IRuleSetGenerator ruleSetGenerator, INuGetPackageInfoGenerator nuGetPackageInfoGenerator,
                                                          ISonarLintConfigGenerator sonarLintConfigGenerator)
 {
     this.sonarQubeService      = sonarQubeService;
     this.nuGetBindingOperation = nuGetBindingOperation;
     this.logger                    = logger;
     this.ruleSetGenerator          = ruleSetGenerator;
     this.nuGetPackageInfoGenerator = nuGetPackageInfoGenerator;
     this.sonarLintConfigGenerator  = sonarLintConfigGenerator;
 }
コード例 #5
0
        private BindingWorkflow CreateTestSubject(string projectKey = "anykey", string projectName = "anyname",
                                                  INuGetBindingOperation nuGetBindingOperation = null)
        {
            this.host.SonarQubeService = this.sonarQubeServiceMock.Object;

            var bindingArgs = new BindCommandArgs(projectKey, projectName, new ConnectionInformation(new Uri("http://connected")));

            var slnBindOperation = new SolutionBindingOperation(this.host, bindingArgs.Connection, projectKey, SonarLintMode.LegacyConnected);

            if (nuGetBindingOperation == null)
            {
                return(new BindingWorkflow(this.host, bindingArgs, slnBindOperation, new NoOpNuGetBindingOperation(this.host.Logger)));
            }
            return(new BindingWorkflow(this.host, bindingArgs, slnBindOperation, nuGetBindingOperation));
        }
コード例 #6
0
        private BindingProcessImpl CreateTestSubject(string projectKey = "anykey", string projectName = "anyname",
                                                     INuGetBindingOperation nuGetBindingOperation = null,
                                                     IBindingConfigProvider configProvider        = null)
        {
            nuGetBindingOperation = nuGetBindingOperation ?? new NoOpNuGetBindingOperation(this.host.Logger);
            configProvider        = configProvider ?? new Mock <IBindingConfigProvider>().Object;

            this.host.SonarQubeService = this.sonarQubeServiceMock.Object;
            var bindingArgs = new BindCommandArgs(projectKey, projectName, new ConnectionInformation(new Uri("http://connected")));

            var slnBindOperation = new SolutionBindingOperation(this.host, bindingArgs.Connection, projectKey, "projectName", SonarLintMode.LegacyConnected, this.host.Logger);
            var finder           = new ConfigurableUnboundProjectFinder();

            return(new BindingProcessImpl(this.host, bindingArgs, slnBindOperation, nuGetBindingOperation, finder, configProvider));
        }
コード例 #7
0
        private BindingProcessImpl CreateTestSubject(BindCommandArgs bindingArgs = null,
                                                     INuGetBindingOperation nuGetBindingOperation = null,
                                                     IBindingConfigProvider configProvider        = null,
                                                     SonarLintMode mode = SonarLintMode.Connected)
        {
            bindingArgs           = bindingArgs ?? new BindCommandArgs("key", "name", new ConnectionInformation(new Uri("http://connected")));
            nuGetBindingOperation = nuGetBindingOperation ?? new NoOpNuGetBindingOperation(this.host.Logger);
            configProvider        = configProvider ?? new Mock <IBindingConfigProvider>().Object;

            this.host.SonarQubeService = this.sonarQubeServiceMock.Object;

            var slnBindOperation = new SolutionBindingOperation(this.host, SonarLintMode.LegacyConnected, this.host.Logger);
            var finder           = new ConfigurableUnboundProjectFinder();

            return(new BindingProcessImpl(this.host, bindingArgs, slnBindOperation, nuGetBindingOperation, finder, configProvider, mode));
        }
コード例 #8
0
        public BindingWorkflow(IHost host,
                               BindCommandArgs bindingArgs,
                               ISolutionBindingOperation solutionBindingOperation,
                               INuGetBindingOperation nugetBindingOperation,
                               ISolutionBindingInformationProvider bindingInformationProvider,
                               bool isFirstBinding = false)
        {
            if (host == null)
            {
                throw new ArgumentNullException(nameof(host));
            }

            if (bindingArgs == null)
            {
                throw new ArgumentNullException(nameof(bindingArgs));
            }
            Debug.Assert(bindingArgs.ProjectKey != null);
            Debug.Assert(bindingArgs.ProjectName != null);
            Debug.Assert(bindingArgs.Connection != null);

            if (solutionBindingOperation == null)
            {
                throw new ArgumentNullException(nameof(solutionBindingOperation));
            }

            if (nugetBindingOperation == null)
            {
                throw new ArgumentNullException(nameof(nugetBindingOperation));
            }

            if (bindingInformationProvider == null)
            {
                throw new ArgumentNullException(nameof(bindingInformationProvider));
            }

            this.host          = host;
            this.bindingArgs   = bindingArgs;
            this.projectSystem = this.host.GetService <IProjectSystemHelper>();
            this.projectSystem.AssertLocalServiceIsNotNull();

            this.solutionBindingOperation   = solutionBindingOperation;
            this.NuGetBindingOperation      = nugetBindingOperation;
            this.bindingInformationProvider = bindingInformationProvider;
            this.IsFirstBinding             = isFirstBinding;
        }
 public CSharpVBBindingConfigProvider(ISonarQubeService sonarQubeService, INuGetBindingOperation nuGetBindingOperation, ILogger logger)
     : this(sonarQubeService, nuGetBindingOperation, logger,
            new RuleSetGenerator(), new NuGetPackageInfoGenerator(), new SonarLintConfigGenerator())
 {
 }