public void TestMappingAppAndRouteRequest() { string json = @"{ ""app_guid"": ""a1d87f14-db81-4ad1-b65f-35ade2172970"", ""route_guid"": ""a1d87f14-db81-4ad1-b65f-35ade2172970"", ""app_port"": 8888 }"; MappingAppAndRouteRequest request = new MappingAppAndRouteRequest(); request.AppGuid = new Guid("a1d87f14-db81-4ad1-b65f-35ade2172970"); request.RouteGuid = new Guid("a1d87f14-db81-4ad1-b65f-35ade2172970"); request.AppPort = 8888; string result = JsonConvert.SerializeObject(request, Formatting.None); Assert.AreEqual(TestUtil.ToUnformatedJsonString(json), result); }
public void MappingAppAndRouteTest() { using (ShimsContext.Create()) { MockClients clients = new MockClients(); string json = @"{ ""metadata"": { ""guid"": ""a1d87f14-db81-4ad1-b65f-35ade2172970"", ""url"": ""/v2/route_mappings/1d6bdeef-3b1f-41e3-8d24-9b99055f8622"", ""created_at"": ""2016-09-02T11:52:29Z"", ""updated_at"": null }, ""entity"": { ""app_port"": 8888, ""app_guid"": ""a1d87f14-db81-4ad1-b65f-35ade2172970"", ""route_guid"": ""a1d87f14-db81-4ad1-b65f-35ade2172970"", ""app_url"": ""/v2/apps/5c7de19e-e7b2-49ce-9741-13058d1cf0d5"", ""route_url"": ""/v2/routes/067f8c6e-efd1-4455-8227-77c30f1427d8"" } }"; clients.JsonResponse = json; clients.ExpectedStatusCode = (HttpStatusCode)201; var cfClient = clients.CreateCloudFoundryClient(); MappingAppAndRouteRequest value = new MappingAppAndRouteRequest(); var obj = cfClient.RoutesMapping.MappingAppAndRoute(value).Result; Assert.AreEqual("a1d87f14-db81-4ad1-b65f-35ade2172970", TestUtil.ToTestableString(obj.EntityMetadata.Guid), true); Assert.AreEqual("/v2/route_mappings/1d6bdeef-3b1f-41e3-8d24-9b99055f8622", TestUtil.ToTestableString(obj.EntityMetadata.Url), true); Assert.AreEqual("2016-09-02T11:52:29Z", TestUtil.ToTestableString(obj.EntityMetadata.CreatedAt), true); Assert.AreEqual("", TestUtil.ToTestableString(obj.EntityMetadata.UpdatedAt), true); Assert.AreEqual("8888", TestUtil.ToTestableString(obj.AppPort), true); Assert.AreEqual("a1d87f14-db81-4ad1-b65f-35ade2172970", TestUtil.ToTestableString(obj.AppGuid), true); Assert.AreEqual("a1d87f14-db81-4ad1-b65f-35ade2172970", TestUtil.ToTestableString(obj.RouteGuid), true); Assert.AreEqual("/v2/apps/5c7de19e-e7b2-49ce-9741-13058d1cf0d5", TestUtil.ToTestableString(obj.AppUrl), true); Assert.AreEqual("/v2/routes/067f8c6e-efd1-4455-8227-77c30f1427d8", TestUtil.ToTestableString(obj.RouteUrl), true); } }
/// <summary> /// Mapping an App and a Route /// <para>For detailed information, see online documentation at: "http://apidocs.cloudfoundry.org/241/routes_mapping/mapping_an_app_and_a_route.html"</para> /// </summary> public async Task <MappingAppAndRouteResponse> MappingAppAndRoute(MappingAppAndRouteRequest value) { UriBuilder uriBuilder = new UriBuilder(this.Client.CloudTarget); uriBuilder.Path = "/v2/route_mappings"; var client = this.GetHttpClient(); client.Uri = uriBuilder.Uri; client.Method = HttpMethod.Post; var authHeader = await BuildAuthenticationHeader(); if (!string.IsNullOrWhiteSpace(authHeader.Key)) { client.Headers.Add(authHeader); } client.ContentType = "application/x-www-form-urlencoded"; client.Content = ((string)JsonConvert.SerializeObject(value)).ConvertToStream(); var expectedReturnStatus = 201; var response = await this.SendAsync(client, expectedReturnStatus); return(Utilities.DeserializeJson <MappingAppAndRouteResponse>(await response.ReadContentAsStringAsync())); }