public async Task ShouldDeleteSecretWhenDeleteSecretCalled() { //Given _swarmClient.DeleteSecret(Arg.Any <string>()).Returns(x => Task.CompletedTask); var secretService = new SecretService(_swarmClient, _loggerFactory); var secretController = new SecretController(secretService); //When var response = await secretController.DeleteSecret(_any.Create <string>()); var result = response as ContentResult; //Then Assert.NotNull(result); Assert.Equal(204, result.StatusCode); await _swarmClient.Received(1).DeleteSecret(Arg.Any <string>()); }
public async Task <IActionResult> DeleteSecretAsync(string id) { try { ValidateId(id); await _swarmClient.DeleteSecret(id); return(NoContent()); } catch (ArgumentException ex) { _logger.LogError(ex, "Cannot delete secret with empty id."); return(BadRequest(ex.Message)); } catch (DockerApiException ex) when(ex.StatusCode == HttpStatusCode.NotFound) { _logger.LogInformation($"Service with id: {id} not found."); return(NotFound()); } catch (Exception ex) { return(CreateErrorResponse(ex, $"Cannot delete {id} secret.")); } }