public async Task <IActionResult> SaveTestScenario(string specificationId, string testScenarioId, [FromBody] ScenarioEditViewModel vm) { Guard.ArgumentNotNull(specificationId, nameof(specificationId)); Guard.ArgumentNotNull(vm, nameof(vm)); if (!await _authorizationHelper.DoesUserHavePermission(User, specificationId, SpecificationActionTypes.CanEditQaTests)) { return(new ForbidResult()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } TestScenarioUpdateModel editScenario = _mapper.Map <TestScenarioUpdateModel>(vm); editScenario.SpecificationId = specificationId; editScenario.Id = testScenarioId; ApiResponse <TestScenario> result = await _scenariosClient.UpdateTestScenario(editScenario); if (result.StatusCode == HttpStatusCode.OK) { return(Ok(result.Content)); } else { HttpStatusCode statusCode = result.StatusCode; _logger.Error("An error occurred while updating scenario. Status code from backend={statusCode} for specification {specificationId}", statusCode, specificationId); throw new InvalidOperationException($"An error occurred while updating scenario. Status code={result.StatusCode}"); } }
public Task <ApiResponse <TestScenario> > UpdateTestScenario(TestScenarioUpdateModel testScenario) { Guard.ArgumentNotNull(testScenario, nameof(testScenario)); return(PostAsync <TestScenario, TestScenarioUpdateModel>("save-scenario-test-version", testScenario)); }