public async Task Then_The_Endpoint_Is_Called( int id, FindApprenticeshipTrainingApi config) { //Arrange var configMock = new Mock <IOptions <FindApprenticeshipTrainingApi> >(); configMock.Setup(x => x.Value).Returns(config); var response = new HttpResponseMessage { StatusCode = HttpStatusCode.Accepted }; var deleteTestRequest = new DeleteTestRequest(id, "https://test.local"); var expectedUrl = deleteTestRequest.DeleteUrl; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, expectedUrl, config.Key, HttpMethod.Delete); var client = new HttpClient(httpMessageHandler.Object); var apiClient = new ApiClient(client, configMock.Object); //Act await apiClient.Delete(deleteTestRequest); //Assert httpMessageHandler.Protected() .Verify <Task <HttpResponseMessage> >( "SendAsync", Times.Once(), ItExpr.Is <HttpRequestMessage>(c => c.Method.Equals(HttpMethod.Delete) && c.RequestUri.AbsoluteUri.Equals(expectedUrl)), ItExpr.IsAny <CancellationToken>() ); }
public async Task <DeleteTestResponse> DeleteTest(DeleteTestRequest request) { var cases = Db.Cases.IncludeGroup(EntityGroups.ALL, Db); var casesToDelete = await filterCases(cases, request.FilteringOrders) .ToArrayAsync(); if (casesToDelete.Length > 0) { foreach (var caseToDelete in casesToDelete) { Db.Cases.Remove(caseToDelete); await Db.SaveChangesAsync(); // i know... MessageProducer.FireTestDeleted(new TestDeletedMessage(caseToDelete.TestId, caseToDelete.TestName)); } } return(new DeleteTestResponse()); }
public async Task Then_The_Endpoint_Is_Called( string authToken, int id, TestInternalApiConfiguration config) { //Arrange var azureClientCredentialHelper = new Mock <IAzureClientCredentialHelper>(); azureClientCredentialHelper.Setup(x => x.GetAccessTokenAsync(config.Identifier)).ReturnsAsync(authToken); config.Url = "https://test.local"; var response = new HttpResponseMessage { Content = new StringContent(""), StatusCode = HttpStatusCode.Created }; var deleteTestReequest = new DeleteTestRequest(id); var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, $"{config.Url}{deleteTestReequest.DeleteUrl}", "delete"); var client = new HttpClient(httpMessageHandler.Object); var hostingEnvironment = new Mock <IWebHostEnvironment>(); var clientFactory = new Mock <IHttpClientFactory>(); clientFactory.Setup(_ => _.CreateClient(It.IsAny <string>())).Returns(client); hostingEnvironment.Setup(x => x.EnvironmentName).Returns("Staging"); var actual = new InternalApiClient <TestInternalApiConfiguration>(clientFactory.Object, config, hostingEnvironment.Object, azureClientCredentialHelper.Object); //Act await actual.Delete(deleteTestReequest); //Assert httpMessageHandler.Protected() .Verify <Task <HttpResponseMessage> >( "SendAsync", Times.Once(), ItExpr.Is <HttpRequestMessage>(c => c.Method.Equals(HttpMethod.Delete) && c.RequestUri.AbsoluteUri.Equals($"{config.Url}{deleteTestReequest.DeleteUrl}") && c.Headers.Authorization.Scheme.Equals("Bearer") && c.Headers.FirstOrDefault(h => h.Key.Equals("X-Version")).Value.FirstOrDefault() == "2.0" && c.Headers.Authorization.Parameter.Equals(authToken)), ItExpr.IsAny <CancellationToken>() ); }
public void Then_If_It_Is_Not_Successful_An_Exception_Is_Thrown( int id, FindApprenticeshipTrainingApi config) { //Arrange var configMock = new Mock <IOptions <FindApprenticeshipTrainingApi> >(); configMock.Setup(x => x.Value).Returns(config); var response = new HttpResponseMessage { StatusCode = HttpStatusCode.BadRequest }; var deleteTestRequest = new DeleteTestRequest(id, "https://test.local"); var expectedUrl = deleteTestRequest.DeleteUrl; var httpMessageHandler = MessageHandler.SetupMessageHandlerMock(response, expectedUrl, config.Key, HttpMethod.Delete); var client = new HttpClient(httpMessageHandler.Object); var apiClient = new ApiClient(client, configMock.Object); //Act Assert Assert.ThrowsAsync <HttpRequestException>(() => apiClient.Delete(deleteTestRequest)); }
/// <summary> /// Explicitly decline to implement a test. /// /// This removes the test from subsequent `ListTests` calls, and /// attempting to do the test will error. /// /// This method will error if attempting to delete a required test. /// </summary> /// <param name="request">The request object containing all of the parameters for the API call.</param> /// <param name="callSettings">If not null, applies overrides to this RPC call.</param> /// <returns>The RPC response.</returns> public override void DeleteTest(DeleteTestRequest request, gaxgrpc::CallSettings callSettings = null) { Modify_DeleteTestRequest(ref request, ref callSettings); _callDeleteTest.Sync(request, callSettings); }
/// <summary> /// Explicitly decline to implement a test. /// /// This removes the test from subsequent `ListTests` calls, and /// attempting to do the test will error. /// /// This method will error if attempting to delete a required test. /// </summary> /// <param name="request">The request object containing all of the parameters for the API call.</param> /// <param name="callSettings">If not null, applies overrides to this RPC call.</param> /// <returns>A Task containing the RPC response.</returns> public override stt::Task DeleteTestAsync(DeleteTestRequest request, gaxgrpc::CallSettings callSettings = null) { Modify_DeleteTestRequest(ref request, ref callSettings); return(_callDeleteTest.Async(request, callSettings)); }
partial void Modify_DeleteTestRequest(ref DeleteTestRequest request, ref gaxgrpc::CallSettings settings);
/// <summary> /// Explicitly decline to implement a test. /// /// This removes the test from subsequent `ListTests` calls, and /// attempting to do the test will error. /// /// This method will error if attempting to delete a required test. /// </summary> /// <param name="request">The request object containing all of the parameters for the API call.</param> /// <param name="cancellationToken">A <see cref="st::CancellationToken"/> to use for this RPC.</param> /// <returns>A Task containing the RPC response.</returns> public virtual stt::Task DeleteTestAsync(DeleteTestRequest request, st::CancellationToken cancellationToken) => DeleteTestAsync(request, gaxgrpc::CallSettings.FromCancellationToken(cancellationToken));
/// <summary> /// Explicitly decline to implement a test. /// /// This removes the test from subsequent `ListTests` calls, and /// attempting to do the test will error. /// /// This method will error if attempting to delete a required test. /// </summary> /// <param name="request">The request object containing all of the parameters for the API call.</param> /// <param name="callSettings">If not null, applies overrides to this RPC call.</param> /// <returns>A Task containing the RPC response.</returns> public virtual stt::Task DeleteTestAsync(DeleteTestRequest request, gaxgrpc::CallSettings callSettings = null) => throw new sys::NotImplementedException();
/// <summary> /// Explicitly decline to implement a test. /// /// This removes the test from subsequent `ListTests` calls, and /// attempting to do the test will error. /// /// This method will error if attempting to delete a required test. /// </summary> /// <param name="request">The request object containing all of the parameters for the API call.</param> /// <param name="callSettings">If not null, applies overrides to this RPC call.</param> /// <returns>The RPC response.</returns> public virtual void DeleteTest(DeleteTestRequest request, gaxgrpc::CallSettings callSettings = null) => throw new sys::NotImplementedException();
public async Task Delete([FromUri] DeleteTestRequest request) { await _mediator.ExecuteAsync(request).ConfigureAwait(false); }