public DummyHttpEndpointTest() { _ctrl = new DummyController(); _serviceV1 = new DummyCommandableHttpService(); _serviceV2 = new DummyCommandableHttpService(); _httpEndpoint = new HttpEndpoint(); var references = References.FromTuples( new Descriptor("pip-services3-dummies", "controller", "default", "default", "1.0"), _ctrl, new Descriptor("pip-services3", "endpoint", "http", "default", "1.0"), _httpEndpoint ); _serviceV1.Configure(ConfigParams.FromTuples( "base_route", "/api/v1/dummy" )); _serviceV2.Configure(ConfigParams.FromTuples( "base_route", "/api/v2/dummy" )); _httpEndpoint.Configure(RestConfig); _serviceV1.SetReferences(references); _serviceV2.SetReferences(references); _httpEndpoint.OpenAsync(null).Wait(); }
private DummyCommandableHttpService CreateAndOpenService(ConfigParams config) { var service = new DummyCommandableHttpService(); var references = References.FromTuples( new Descriptor("pip-services3-dummies", "controller", "default", "default", "1.0"), new DummyController(), new Descriptor("pip-services3-dummies", "service", "rest", "default", "1.0"), service ); service.Configure(config); service.SetReferences(references); service.OpenAsync(null).Wait(); return(service); }
public async Task TestOpenApiAsync() { DummyCommandableHttpService service = CreateAndOpenService(RestConfig); try { var serviceUri = RestConfig.GetAsString("connection.uri"); using var httpClient = new HttpClient(); var response = await httpClient.GetAsync($"{serviceUri}/dummy/swagger"); var openApiContent = await response.Content.ReadAsStringAsync(); Assert.StartsWith("openapi:", openApiContent); } finally { await service.CloseAsync(null); } }
public async Task TestOpenApiOverrideAsync() { // turn off and override standard swagger document formation var config = RestConfig.SetDefaults(ConfigParams.FromTuples("swagger.auto", false)); DummyCommandableHttpService service = CreateAndOpenService(config); try { var serviceUri = RestConfig.GetAsString("connection.uri"); using var httpClient = new HttpClient(); var response = await httpClient.GetAsync($"{serviceUri}/dummy/swagger"); var openApiContent = await response.Content.ReadAsStringAsync(); Assert.StartsWith("swagger yaml content from resource", openApiContent); } finally { await service.CloseAsync(null); } }