public async Task GetRoslynExportProfileAsync_WhenRequestIsSuccesful_ReturnsIsSuccessAndNotNullData() { var request = new RoslynExportProfileRequest { QualityProfileName = "qp", LanguageKey = "cs" }; await Method_WhenRequestIsSuccesful_ReturnsIsSuccessAndNotNullData( (c, t) => c.GetRoslynExportProfileAsync(request, t), @"<?xml version=""1.0"" encoding=""utf-8""?> <RoslynExportProfile Version=""1.0""> <Configuration> <RuleSet Name=""Rules for SonarQube"" Description=""This rule set was automatically generated from SonarQube."" ToolsVersion=""14.0""> <Rules AnalyzerId=""SonarAnalyzer.CSharp"" RuleNamespace=""SonarAnalyzer.CSharp""> <Rule Id=""S121"" Action=""Warning"" /> </Rules> </RuleSet> <AdditionalFiles> <AdditionalFile FileName=""SonarLint.xml"" /> </AdditionalFiles> </Configuration> <Deployment> <Plugins> <Plugin Key=""csharp"" Version=""6.4.0.3322"" StaticResourceName=""SonarAnalyzer-6.4.0.3322.zip"" /> </Plugins> <NuGetPackages> <NuGetPackage Id=""SonarAnalyzer.CSharp"" Version=""6.4.0.3322"" /> </NuGetPackages> </Deployment> </RoslynExportProfile>", result => { }); }
public void GetRoslynExportProfileAsync_WhenExceptionThrown_PropagateIt() { var request = new RoslynExportProfileRequest { QualityProfileName = "qp", LanguageKey = "cs" }; Method_WhenExceptionThrown_PropagateIt((c, t) => c.GetRoslynExportProfileAsync(request, t)); }
public void GetRoslynExportProfileAsync_WhenCancellationRequested_ThrowsException() { var request = new RoslynExportProfileRequest { QualityProfileName = "qp", LanguageKey = "cs" }; Method_WhenCancellationRequested_ThrowsException((c, t) => c.GetRoslynExportProfileAsync(request, t)); }
public async Task GetRoslynExportProfileAsync_WhenRequestIsNotSuccess_ReturnsDefaultAndErrorCode() { var request = new RoslynExportProfileRequest { QualityProfileName = "qp", LanguageKey = "cs" }; await Method_WhenRequestIsNotSuccess_ReturnsDefaultAndErrorCode( (c, t) => c.GetRoslynExportProfileAsync(request, t), HttpStatusCode.InternalServerError); }
public async Task <RoslynExportProfileResponse> GetRoslynExportProfileAsync(string qualityProfileName, SonarQubeLanguage language, CancellationToken token) { EnsureIsConnected(); var request = new RoslynExportProfileRequest { QualityProfileName = qualityProfileName, LanguageKey = language.Key }; var roslynExportResult = await this.sonarqubeClient.GetRoslynExportProfileAsync(request, token); roslynExportResult.EnsureSuccess(); return(roslynExportResult.Value); }
public async Task GetRoslynExportProfileAsync_CallsTheExpectedUri() { var request = new RoslynExportProfileRequest { QualityProfileName = "qp", LanguageKey = "cs" }; await Method_CallsTheExpectedUri( new Uri("api/qualityprofiles/export?language=cs&name=qp&exporterKey=roslyn-cs", UriKind.RelativeOrAbsolute), @"<?xml version=""1.0"" encoding=""utf-8""?> <RoslynExportProfile Version=""1.0""> </RoslynExportProfile>", (c, t) => c.GetRoslynExportProfileAsync(request, t)); request = new RoslynExportProfileRequest { QualityProfileName = "qp", LanguageKey = "vbnet" }; await Method_CallsTheExpectedUri( new Uri("api/qualityprofiles/export?language=vbnet&name=qp&exporterKey=roslyn-vbnet", UriKind.RelativeOrAbsolute), @"<?xml version=""1.0"" encoding=""utf-8""?> <RoslynExportProfile Version=""1.0""> </RoslynExportProfile>", (c, t) => c.GetRoslynExportProfileAsync(request, t)); }
public Task <Result <RoslynExportProfileResponse> > GetRoslynExportProfileAsync(RoslynExportProfileRequest request, CancellationToken token) { // Since 5.2 return(InvokeSonarQubeApi("api/qualityprofiles/export", request, token, stringResponse => { using (var reader = new StringReader(stringResponse)) { return RoslynExportProfileResponse.Load(reader); } })); }