public async Task CreateAsync_Exception() { // Arrange ReleaseEntity releaseEntity = new ReleaseEntity { TagName = "1", Name = "1", Body = "test-app", TargetCommitish = "eec136ac2d31cf984d2053df79f181b99c3b4db5" }; List <string> buildStatus = new List <string>(); buildStatus.Add(BuildStatus.InProgress.ToEnumMemberAttributeValue()); buildStatus.Add(BuildStatus.NotStarted.ToEnumMemberAttributeValue()); List <string> buildResult = new List <string>(); buildResult.Add(BuildResult.Succeeded.ToEnumMemberAttributeValue()); _releaseRepository.Setup(r => r.Get( It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), buildStatus, buildResult)).ReturnsAsync(GetReleases("createdRelease.json")); ReleaseService releaseService = new ReleaseService( _httpContextAccessor.Object, new Mock <IAzureDevOpsBuildClient>().Object, _releaseRepository.Object, new TestOptionsMonitor <AzureDevOpsSettings>(GetAzureDevOpsSettings()), _releaseLogger.Object); // Act HttpRequestWithStatusException resultException = null; try { await releaseService.CreateAsync(releaseEntity); } catch (HttpRequestWithStatusException e) { resultException = e; } // Assert Assert.NotNull(resultException); Assert.Equal(HttpStatusCode.Conflict, resultException.StatusCode); }
public static async Task <string> Get(Uri requestUri) { using (var client = new HttpClient()) { var response = await client.GetAsync(requestUri); if (!response.IsSuccessStatusCode) { var ex = new HttpRequestWithStatusException(); ex.StatusCode = response.StatusCode; throw ex; } var content = await response.Content.ReadAsStringAsync(); return(content); } }
public static async Task Post(Uri requestUri, string payload) { using (var client = new HttpClient()) { var values = new Dictionary <string, string>() { { "Payload", payload } }; var content = new FormUrlEncodedContent(values); var response = await client.PostAsync(requestUri, content); if (!response.IsSuccessStatusCode) { var ex = new HttpRequestWithStatusException(); ex.StatusCode = response.StatusCode; throw ex; } } }