/// <inheritdoc /> public async Task <StubModel> ConvertToStubAsync(OpenApiServer server, OpenApiLine line, string tenant) { var request = new HttpRequestModel { Body = _openApiDataFiller.BuildRequestBody(line.Operation), Headers = _openApiDataFiller.BuildRequestHeaders(line.Operation), Method = line.OperationType.ToString().ToUpper(), Url = $"{_openApiDataFiller.BuildServerUrl(server)}{_openApiDataFiller.BuildRelativeRequestPath(line.Operation, line.PathKey)}" }; var response = new HttpResponseModel { Content = _openApiDataFiller.BuildResponseBody(line.Response), Headers = _openApiDataFiller.BuildResponseHeaders(line.Response), StatusCode = _openApiDataFiller.BuildHttpStatusCode(line.ResponseKey) }; var stub = new StubModel { Tenant = tenant, Description = line.Operation.Summary, Conditions = await _httpRequestToConditionsService.ConvertToConditionsAsync(request), Response = await _httpResponseToStubResponseService.ConvertToResponseAsync(response), }; stub.EnsureStubId(); return(stub); }
private async Task <FullStubModel> CreateStub(bool doNotCreateStub, OpenApiServer server, OpenApiLine line, string tenant) { var stub = await _openApiToStubConverter.ConvertToStubAsync(server, line, tenant); if (doNotCreateStub) { return(new FullStubModel { Stub = stub, Metadata = new StubMetadataModel() }); } await _stubContext.DeleteStubAsync(stub.Id); return(await _stubContext.AddStubAsync(stub)); }