public void testVappTemplateMetadata() { final String templateId = "/vAppTemplate/vappTemplate-ef4415e6-d413-4cbb-9262-f9bbec5f2ea9"; URI uri = URI.create(endpoint + templateId); MetadataApi api = orderedRequestsSendResponses( loginRequest, sessionResponse, new VcloudHttpRequestPrimer() .apiCommand("GET", templateId + "/metadata") .acceptMedia(ANY) .httpRequestBuilder() .build(), new VcloudHttpResponsePrimer() .xmlFilePayload("/vapptemplate/metadata.xml", METADATA) .httpResponseBuilder() .build(), new VcloudHttpRequestPrimer() .apiCommand("POST", templateId + "/metadata") .xmlFilePayload("/vapptemplate/metadata.xml", METADATA) .acceptMedia(TASK) .httpRequestBuilder() .build(), new VcloudHttpResponsePrimer() .xmlFilePayload("/task/task.xml", TASK) .httpResponseBuilder() .build()) .getMetadataApi(uri); assertNotNull(api); Metadata metadata = api.get(); assertEquals(metadata, exampleMetadata()); Task task = api.putAll(exampleMetadata()); assertNotNull(task); }
@Test(expectedExceptions = VCloudDirectorException.class) public void testErrorEditMetadata() { final String templateId = "/vAppTemplate/vappTemplate-ef4415e6-d413-4cbb-9262-f9bbec5f2ea9"; URI uri = URI.create(endpoint + templateId); MetadataApi api = orderedRequestsSendResponses( loginRequest, sessionResponse, new VcloudHttpRequestPrimer() .apiCommand("POST", templateId + "/metadata") .xmlFilePayload("/vapptemplate/metadata.xml", METADATA) .acceptMedia(TASK) .httpRequestBuilder() .build(), new VcloudHttpResponsePrimer() .xmlFilePayload("/vapptemplate/error400.xml", ERROR) .httpResponseBuilder() .statusCode(400) .build()) .getMetadataApi(uri); api.putAll(exampleMetadata()); }