public void testDefaultTemplateOpenStack() throws Exception { ComputeService apiForOpenStack = requestsSendResponses(defaultTemplateOpenStack); Template defaultTemplate = apiForOpenStack.templateBuilder().imageId("RegionOne/15").build(); checkTemplate(defaultTemplate); checkTemplate(apiForOpenStack.templateBuilder().fromTemplate(defaultTemplate).build()); }
.addHeader("X-Auth-Token", authToken) .payload( payloadFromStringWithContentType( "{\"server\":{\"name\":\"test-1\",\"imageRef\":\"14\",\"flavorRef\":\"1\",\"key_name\":\"jclouds-test-0\",\"security_groups\":[{\"name\":\"jclouds-test\"}]}}", "application/json")).build(); .payload(payloadFromResourceWithContentType("/new_server.json", "application/json; charset=UTF-8")).build(); ComputeService apiThatCreatesNode = requestsSendResponses(requestResponseMap.build(), new AbstractModule() {
.putAll(defaultTemplateOpenStack); requestResponseMap.put(list, HttpResponse.builder().statusCode(200) .payload(payloadFromResource("/securitygroup_list.json")).build()); .payload(payloadFromResource("/securitygroup_details_port22.json")).build(); .addHeader("X-Auth-Token", authToken) .payload( payloadFromStringWithContentType( "{\"server\":{\"name\":\"test-0\",\"imageRef\":\"2235\",\"flavorRef\":\"1\",\"key_name\":\"testkeypair\",\"security_groups\":[{\"name\":\"name1\"}]}}", "application/json")).build(); .payload(payloadFromResourceWithContentType("/new_server.json", "application/json; charset=UTF-8")).build(); ComputeService apiThatCreatesNode = requestsSendResponses(requestResponseMap.build(), new AbstractModule() {
public void testListLocationsWhenResponseIs2xx() throws Exception { Map<HttpRequest, HttpResponse> requestResponseMap = ImmutableMap.<HttpRequest, HttpResponse> builder() .put(keystoneAuthWithUsernameAndPasswordAndTenantName, responseWithKeystoneAccess) .put(extensionsOfNovaRequest, extensionsOfNovaResponse).put(listDetail, listDetailResponse) .put(listServers, listServersResponse).put(listFlavorsDetail, listFlavorsDetailResponse).build(); ComputeService apiWhenServersExist = requestsSendResponses(requestResponseMap); Set<? extends Location> locations = apiWhenServersExist.listAssignableLocations(); assertNotNull(locations); assertEquals(locations.size(), 1); assertEquals(locations.iterator().next().getId(), "az-1.region-a.geo-1"); assertNotNull(apiWhenServersExist.listNodes()); assertEquals(apiWhenServersExist.listNodes().size(), 1); assertEquals(apiWhenServersExist.listNodes().iterator().next().getId(), "az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f000004d2"); assertEquals(apiWhenServersExist.listNodes().iterator().next().getName(), "sample-server"); }
.addHeader("X-Auth-Token", authToken) .payload( payloadFromStringWithContentType( "{\"server\":{\"name\":\"test-0\",\"imageRef\":\"14\",\"flavorRef\":\"1\",\"key_name\":\"fooPair\",\"security_groups\":[{\"name\":\"jclouds-test\"}]}}", "application/json")).build(); .payload(payloadFromResourceWithContentType("/new_server.json", "application/json; charset=UTF-8")).build(); ComputeService apiThatCreatesNode = requestsSendResponses(requestResponseMap.build(), new AbstractModule() {
public void testListLocationsWhenResponseIs2xx() throws Exception { Map<HttpRequest, HttpResponse> requestResponseMap = ImmutableMap.<HttpRequest, HttpResponse> builder() .put(keystoneAuthWithUsernameAndPasswordAndTenantName, responseWithKeystoneAccess) .put(extensionsOfNovaRequest, extensionsOfNovaResponse).put(listDetail, listDetailResponse) .put(listServers, listServersResponse).put(listFlavorsDetail, listFlavorsDetailResponse).build(); ComputeService apiWhenServersExist = requestsSendResponses(requestResponseMap); Set<? extends Location> locations = apiWhenServersExist.listAssignableLocations(); assertNotNull(locations); assertEquals(locations.size(), 1); assertEquals(locations.iterator().next().getId(), "az-1.region-a.geo-1"); assertNotNull(apiWhenServersExist.listNodes()); assertEquals(apiWhenServersExist.listNodes().size(), 1); assertEquals(apiWhenServersExist.listNodes().iterator().next().getId(), "az-1.region-a.geo-1/71752"); assertEquals(apiWhenServersExist.listNodes().iterator().next().getName(), "sample-server"); }
.addHeader("X-Auth-Token", authToken) .payload( payloadFromStringWithContentType( "{\"server\":{\"name\":\"test-0\",\"imageRef\":\"2235\",\"flavorRef\":\"1\",\"metadata\":{\"jclouds_tags\":\"jclouds_sg-RegionOne/2769\"},\"key_name\":\"testkeypair\",\"security_groups\":[{\"name\":\"jclouds-test\"}]}}", "application/json")).build(); .payload(payloadFromResourceWithContentType("/new_server.json", "application/json; charset=UTF-8")).build(); ComputeService apiThatCreatesNode = requestsSendResponses(requestResponseMap.build(), new AbstractModule() {
public void testDefaultTemplateOpenStack() throws Exception { ComputeService apiForOpenStack = requestsSendResponses(defaultTemplateOpenStack); Template defaultTemplate = apiForOpenStack.templateBuilder().imageId("RegionOne/15").build(); checkTemplate(defaultTemplate); checkTemplate(apiForOpenStack.templateBuilder().fromTemplate(defaultTemplate).build()); }
public void testListServersWhenReponseIs404IsEmpty() throws Exception { HttpRequest listServers = HttpRequest .builder() .method("GET") .endpoint("https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/3456/servers/detail") .addHeader("Accept", "application/json") .addHeader("X-Auth-Token", authToken).build(); HttpResponse listServersResponse = HttpResponse.builder().statusCode(404).build(); ComputeService apiWhenNoServersExist = requestsSendResponses(keystoneAuthWithUsernameAndPasswordAndTenantName, responseWithKeystoneAccess, listServers, listServersResponse); assertTrue(apiWhenNoServersExist.listNodes().isEmpty()); }
.addHeader("X-Auth-Token", authToken) .payload( payloadFromStringWithContentType( "{\"server\":{\"name\":\"test-1\",\"imageRef\":\"2235\",\"flavorRef\":\"1\",\"metadata\":{\"jclouds_tags\":\"jclouds_sg-RegionOne/2769\"},\"key_name\":\"jclouds-test-0\",\"security_groups\":[{\"name\":\"jclouds-test\"}]}}", "application/json")).build(); .payload(payloadFromResourceWithContentType("/new_server.json", "application/json; charset=UTF-8")).build(); ComputeService apiThatCreatesNode = requestsSendResponses(requestResponseMap.build(), new AbstractModule() {
.addHeader("X-Auth-Token", authToken) .payload( payloadFromStringWithContentType( "{\"server\":{\"name\":\"test-0\",\"imageRef\":\"14\",\"flavorRef\":\"1\",\"key_name\":\"fooPair\",\"security_groups\":[{\"name\":\"mygroup\"}]}}", "application/json")).build(); .payload(payloadFromResourceWithContentType("/new_server.json", "application/json; charset=UTF-8")).build(); ComputeService apiThatCreatesNode = requestsSendResponses(requestResponseMap.build(), new AbstractModule() {