Removed obsolete TransientChefApi
Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/2caf6ea8 Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/2caf6ea8 Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/2caf6ea8 Branch: refs/heads/master Commit: 2caf6ea86e3ebbfc6423a52728de385988216ab2 Parents: c9dfb07 Author: Ignasi Barrera <[email protected]> Authored: Fri Oct 10 11:29:45 2014 +0200 Committer: Ignasi Barrera <[email protected]> Committed: Fri Oct 10 15:11:30 2014 +0200 ---------------------------------------------------------------------- .../org/jclouds/chef/test/TransientChefApi.java | 387 ------------------- .../chef/test/TransientChefApiMetadata.java | 75 ---- .../test/config/TransientChefApiModule.java | 114 ------ .../services/org.jclouds.apis.ApiMetadata | 1 - .../test/TransientChefApiIntegrationTest.java | 69 ---- .../chef/test/TransientChefApiMetadataTest.java | 33 -- 6 files changed, 679 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds/blob/2caf6ea8/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApi.java ---------------------------------------------------------------------- diff --git a/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApi.java b/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApi.java deleted file mode 100644 index c2c5f10..0000000 --- a/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApi.java +++ /dev/null @@ -1,387 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.chef.test; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Throwables.propagate; -import static com.google.common.collect.Iterables.transform; -import static com.google.common.collect.Sets.newLinkedHashSet; - -import java.io.IOException; -import java.io.InputStream; -import java.net.URI; -import java.util.List; -import java.util.Set; - -import javax.inject.Inject; -import javax.inject.Named; -import javax.inject.Singleton; - -import org.jclouds.blobstore.config.LocalBlobStore; -import org.jclouds.blobstore.domain.Blob; -import org.jclouds.blobstore.domain.PageSet; -import org.jclouds.blobstore.domain.StorageMetadata; -import org.jclouds.chef.ChefApi; -import org.jclouds.chef.domain.Client; -import org.jclouds.chef.domain.CookbookDefinition; -import org.jclouds.chef.domain.CookbookVersion; -import org.jclouds.chef.domain.DatabagItem; -import org.jclouds.chef.domain.Environment; -import org.jclouds.chef.domain.Node; -import org.jclouds.chef.domain.Resource; -import org.jclouds.chef.domain.Role; -import org.jclouds.chef.domain.Sandbox; -import org.jclouds.chef.domain.SearchResult; -import org.jclouds.chef.domain.UploadSandbox; -import org.jclouds.chef.options.CreateClientOptions; -import org.jclouds.chef.options.SearchOptions; -import org.jclouds.io.Payload; -import org.jclouds.lifecycle.Closer; -import org.jclouds.util.Strings2; - -import com.google.common.base.Function; - -/** - * In-memory chef simulator. - */ -public class TransientChefApi implements ChefApi { - @Singleton - private static class StorageMetadataToName implements Function<PageSet<? extends StorageMetadata>, Set<String>> { - @Override - public Set<String> apply(PageSet<? extends StorageMetadata> from) { - return newLinkedHashSet(transform(from, new Function<StorageMetadata, String>() { - - @Override - public String apply(StorageMetadata from) { - return from.getName(); - } - })); - } - } - - @Singleton - private static class BlobToDatabagItem implements Function<Blob, DatabagItem> { - @Override - public DatabagItem apply(Blob from) { - try { - return from == null ? null : new DatabagItem(from.getMetadata().getName(), Strings2.toStringAndClose(from - .getPayload().getInput())); - } catch (IOException e) { - propagate(e); - return null; - } - } - } - - private final LocalBlobStore databags; - private final BlobToDatabagItem blobToDatabagItem; - private final StorageMetadataToName storageMetadataToName; - private final Closer closer; - - @Inject - TransientChefApi(@Named("databags") LocalBlobStore databags, StorageMetadataToName storageMetadataToName, - BlobToDatabagItem blobToDatabagItem, Closer closer) { - this.databags = checkNotNull(databags, "databags"); - this.storageMetadataToName = checkNotNull(storageMetadataToName, "storageMetadataToName"); - this.blobToDatabagItem = checkNotNull(blobToDatabagItem, "blobToDatabagItem"); - this.closer = checkNotNull(closer, "closer"); - } - - @Override - public Sandbox commitSandbox(String id, boolean isCompleted) { - throw new UnsupportedOperationException(); - } - - @Override - public Client createClient(String clientName) { - throw new UnsupportedOperationException(); - } - - @Override - public Client createClient(String clientName, CreateClientOptions options) { - throw new UnsupportedOperationException(); - } - - @Override - public void createDatabag(String databagName) { - databags.createContainerInLocation(null, databagName); - } - - @Override - public DatabagItem createDatabagItem(String databagName, DatabagItem databagItem) { - Blob blob = databags.blobBuilder(databagItem.getId()).payload(databagItem.toString()).build(); - databags.putBlob(databagName, blob); - return databagItem; - } - - @Override - public void createNode(Node node) { - throw new UnsupportedOperationException(); - } - - @Override - public void createRole(Role role) { - throw new UnsupportedOperationException(); - } - - @Override - public Client deleteClient(String clientName) { - throw new UnsupportedOperationException(); - } - - @Override - public CookbookVersion deleteCookbook(String cookbookName, String version) { - throw new UnsupportedOperationException(); - } - - @Override - public void deleteDatabag(String databagName) { - databags.deleteContainer(databagName); - } - - @Override - public DatabagItem deleteDatabagItem(String databagName, String databagItemId) { - DatabagItem item = blobToDatabagItem.apply(databags.getBlob(databagName, databagItemId)); - databags.removeBlob(databagName, databagItemId); - return item; - } - - @Override - public Node deleteNode(String nodeName) { - throw new UnsupportedOperationException(); - } - - @Override - public Role deleteRole(String rolename) { - throw new UnsupportedOperationException(); - } - - @Override - public Client generateKeyForClient(String clientName) { - throw new UnsupportedOperationException(); - } - - @Override - public Client getClient(String clientName) { - throw new UnsupportedOperationException(); - } - - @Override - public CookbookVersion getCookbook(String cookbookName, String version) { - throw new UnsupportedOperationException(); - } - - @Override - public DatabagItem getDatabagItem(String databagName, String databagItemId) { - return blobToDatabagItem.apply(databags.getBlob(databagName, databagItemId)); - } - - @Override - public Node getNode(String nodeName) { - throw new UnsupportedOperationException(); - } - - @Override - public Role getRole(String roleName) { - throw new UnsupportedOperationException(); - } - - @Override - public UploadSandbox createUploadSandboxForChecksums(Set<List<Byte>> md5s) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listVersionsOfCookbook(String cookbookName) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listClients() { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listCookbooks() { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listDatabagItems(String databagName) { - return storageMetadataToName.apply(databags.list(databagName)); - } - - @Override - public Set<String> listDatabags() { - return storageMetadataToName.apply(databags.list()); - } - - @Override - public Set<String> listNodes() { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listRoles() { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listSearchIndexes() { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Client> searchClients() { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Client> searchClients(SearchOptions options) { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends DatabagItem> searchDatabagItems(String databagName) { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends DatabagItem> searchDatabagItems(String databagName, SearchOptions options) { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Node> searchNodes() { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Node> searchNodes(SearchOptions options) { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Role> searchRoles() { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Role> searchRoles(SearchOptions options) { - throw new UnsupportedOperationException(); - } - - @Override - public CookbookVersion updateCookbook(String cookbookName, String version, CookbookVersion cookbook) { - throw new UnsupportedOperationException(); - } - - @Override - public DatabagItem updateDatabagItem(String databagName, DatabagItem item) { - return createDatabagItem(databagName, item); - } - - @Override - public Node updateNode(Node node) { - throw new UnsupportedOperationException(); - } - - @Override - public Role updateRole(Role role) { - throw new UnsupportedOperationException(); - } - - @Override - public void uploadContent(URI location, Payload content) { - throw new UnsupportedOperationException(); - } - - @Override - public InputStream getResourceContents(Resource resource) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listEnvironments() { - throw new UnsupportedOperationException(); - } - - @Override - public void createEnvironment(Environment environment) { - throw new UnsupportedOperationException(); - } - - @Override - public Environment deleteEnvironment(String environmentName) { - throw new UnsupportedOperationException(); - } - - @Override - public Environment getEnvironment(String environmentName) { - throw new UnsupportedOperationException(); - } - - @Override - public Environment updateEnvironment(Environment environment) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<CookbookDefinition> listCookbooksInEnvironment(String environmentName) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<CookbookDefinition> listCookbooksInEnvironment(String environmentName, String numVersions) { - throw new UnsupportedOperationException(); - } - - @Override - public CookbookDefinition getCookbookInEnvironment(String environmentName, String cookbookName) { - throw new UnsupportedOperationException(); - } - - @Override - public CookbookDefinition getCookbookInEnvironment(String environmentName, String cookbookName, String numVersions) { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Environment> searchEnvironments() { - throw new UnsupportedOperationException(); - } - - @Override - public SearchResult<? extends Environment> searchEnvironments(SearchOptions options) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listRecipesInEnvironment(String environmentName) { - throw new UnsupportedOperationException(); - } - - @Override - public Set<String> listNodesInEnvironment(String environmentName) { - throw new UnsupportedOperationException(); - } - - @Override - public void close() throws IOException { - closer.close(); - } -} http://git-wip-us.apache.org/repos/asf/jclouds/blob/2caf6ea8/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApiMetadata.java ---------------------------------------------------------------------- diff --git a/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApiMetadata.java b/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApiMetadata.java deleted file mode 100644 index c485080..0000000 --- a/apis/chef/src/main/java/org/jclouds/chef/test/TransientChefApiMetadata.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.chef.test; - -import java.net.URI; - -import org.jclouds.chef.ChefApiMetadata; -import org.jclouds.chef.config.ChefBootstrapModule; -import org.jclouds.chef.config.ChefParserModule; -import org.jclouds.chef.test.config.TransientChefApiModule; -import org.jclouds.ohai.config.JMXOhaiModule; -import org.jclouds.rest.internal.BaseHttpApiMetadata; - -import com.google.common.collect.ImmutableSet; -import com.google.inject.Module; - -/** - * Implementation of {@link ApiMetadata} for the Amazon-specific Chef API - */ -public class TransientChefApiMetadata extends BaseHttpApiMetadata<TransientChefApi> { - - @Override - public Builder toBuilder() { - return new Builder().fromApiMetadata(this); - } - - public TransientChefApiMetadata() { - this(new Builder()); - } - - protected TransientChefApiMetadata(Builder builder) { - super(builder); - } - - public static class Builder extends BaseHttpApiMetadata.Builder<TransientChefApi, Builder> { - protected Builder() { - id("transientchef") - .name("In-memory Chef API") - .identityName("unused") - .defaultIdentity("api") - .documentation(URI.create("http://localhost")) - .defaultCredential( - "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEAyb2ZJJqGm0KKR+8nfQJNsSd+F9tXNMV7CfOcW6jsqs8EZgiV\nR09hD1IYOj4YqM0qJONlgyg4xRWewdSG7QTPj1lJpVAida9sXy2+kzyagZA1Am0O\nZcbqb5hoeIDgcX+eDa79s0u0DomjcfO9EKhvHLBz+zM+3QqPRkPV8nYTbfs+HjVz\nzOU6D1B0XR3+IPZZl2AnWs2d0qhnStHcDUvnRVQ0P482YwN9VgceOZtpPz0DCKEJ\n5Tx5STub8k0/zt/VAMHQafLSuQMLd2s4ZLuOZptN//uAsTmxireqd37z+8ZTdBbJ\n8LEpJ+iCXuSfm5aUh7iw6oxvToY2AL53+jK2UQIDAQABAoIBAQDA88B3i/xWn0vX\nBVxFamCYoecuNjGwXXkSyZew616A+EOCu47bh4aTurdFbYL0YFaAtaWvzlaN2eHg\nDb+HDuTefE29+WkcGk6SshPmiz5T0XOCAICWw6wSVDkHmGwS4jZvbAFm7W8nwGk9\nYhxgxFiRngswJZFopOLoF5WXs2td8guIYNslMpo7tu50iFnBHwKO2ZsPAk8t9nnS\nxlDavKruymEmqHCr3+dtio5eaenJcp3fjoXBQOKUk3ipII29XRB8NqeCVV/7Kxwq\nckqOBEbRwBclckyIbD+RiAgKvOelORjEiE9R42vuqvxRA6k9kd9o7utlX0AUtpEn\n3gZc6LepAoGBAP9ael5Y75+sK2JJUNOOhO8ae45cdsilp2yI0X+UBaSuQs2+dyPp\nkpEHAxd4pmmSvn/8c9TlEZhr+qYbABXVPlDncxpIuw2Ajbk7s/S4XaSKsRqpXL57\nzj/QOqLkRk8+OVV9q6lMeQNqLtEj1u6JPviX70Ro+FQtRttNOYbfdP/fAoGBAMpA\nXjR5woV5sUb+REg9vE uYo8RSyOarxqKFCIXVUNsLOx+22+AK4+CQpbueWN7jotrl\nYD6uT6svWi3AAC7kiY0UI/fjVPRCUi8tVoQUE0TaU5VLITaYOB+W/bBaDE4M9560\n1NuDWO90baA5dfU44iuzva02rGJXK9+nS3o8nk/PAoGBALOL6djnDe4mwAaG6Jco\ncd4xr8jkyPzCRZuyBCSBbwphIUXLc7hDprPky064ncJD1UDmwIdkXd/fpMkg2QmA\n/CUk6LEFjMisqHojOaCL9gQZJPhLN5QUN2x1PJWGjs1vQh8Tkx0iUUCOa8bQPXNR\n+34OTsW6TUna4CSZAycLfhffAoGBAIggVsefBCvuQkF0NeUhmDCRZfhnd8y55RHR\n1HCvqKIlpv+rhcX/zmyBLuteopYyRJRsOiE2FW00i8+rIPRu4Z3Q5nybx7w3PzV9\noHN5R5baE9OyI4KpZWztpYYitZF67NcnAvVULHHOvVJQGnKYfLHJYmrJF7GA1ojM\nAuMdFbjFAoGAPxUhxwFy8gaqBahKUEZn4F81HFP5ihGhkT4QL6AFPO2e+JhIGjuR\n27+85hcFqQ+HHVtFsm81b/a+R7P4UuCRgc8eCjxQMoJ1Xl4n7VbjPbHMnIN0Ryvd\nO4ZpWDWYnCO021JTOUUOJ4J/y0416Bvkw0z59y7sNX7wDBBHHbK/XCc=\n-----END RSA PRIVATE KEY-----\n") - .defaultEndpoint("transientchef") - .defaultProperties(ChefApiMetadata.defaultProperties()) - .defaultModules( - ImmutableSet.<Class<? extends Module>> of(TransientChefApiModule.class, ChefParserModule.class, - ChefBootstrapModule.class, JMXOhaiModule.class)); - } - - @Override - public TransientChefApiMetadata build() { - return new TransientChefApiMetadata(this); - } - - @Override - protected Builder self() { - return this; - } - } -} http://git-wip-us.apache.org/repos/asf/jclouds/blob/2caf6ea8/apis/chef/src/main/java/org/jclouds/chef/test/config/TransientChefApiModule.java ---------------------------------------------------------------------- diff --git a/apis/chef/src/main/java/org/jclouds/chef/test/config/TransientChefApiModule.java b/apis/chef/src/main/java/org/jclouds/chef/test/config/TransientChefApiModule.java deleted file mode 100644 index bab35d0..0000000 --- a/apis/chef/src/main/java/org/jclouds/chef/test/config/TransientChefApiModule.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.chef.test.config; - -import static com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor; - -import java.io.IOException; -import java.security.PrivateKey; -import java.security.spec.InvalidKeySpecException; -import java.util.List; - -import javax.inject.Singleton; - -import org.jclouds.ContextBuilder; -import org.jclouds.blobstore.TransientApiMetadata; -import org.jclouds.blobstore.config.LocalBlobStore; -import org.jclouds.chef.ChefApi; -import org.jclouds.chef.config.Validator; -import org.jclouds.chef.domain.Client; -import org.jclouds.chef.functions.BootstrapConfigForGroup; -import org.jclouds.chef.functions.ClientForGroup; -import org.jclouds.chef.functions.RunListForGroup; -import org.jclouds.chef.test.TransientChefApi; -import org.jclouds.concurrent.config.ExecutorServiceModule; -import org.jclouds.crypto.Crypto; -import org.jclouds.domain.JsonBall; -import org.jclouds.rest.ConfiguresHttpApi; -import org.jclouds.rest.config.RestModule; - -import com.google.common.base.Optional; -import com.google.common.base.Supplier; -import com.google.common.cache.CacheLoader; -import com.google.common.collect.ImmutableSet; -import com.google.inject.AbstractModule; -import com.google.inject.Injector; -import com.google.inject.Module; -import com.google.inject.Provides; -import com.google.inject.name.Names; - -@ConfiguresHttpApi -public class TransientChefApiModule extends AbstractModule { - - @Override - protected void configure() { - install(new RestModule()); - bind(ChefApi.class).to(TransientChefApi.class); - bind(LocalBlobStore.class).annotatedWith(Names.named("databags")) - .toInstance( - ContextBuilder - .newBuilder(new TransientApiMetadata()) - .modules( - ImmutableSet.<Module> of(new ExecutorServiceModule(sameThreadExecutor(), - sameThreadExecutor()))).buildInjector().getInstance(LocalBlobStore.class)); - } - - @Provides - @Singleton - public Supplier<PrivateKey> supplyKey() { - return new Supplier<PrivateKey>() { - @Override - public PrivateKey get() { - return null; - } - }; - } - - @Provides - @Singleton - CacheLoader<String, List<String>> runListForGroup(RunListForGroup runListForGroup) { - return CacheLoader.from(runListForGroup); - } - - @Provides - @Singleton - CacheLoader<String, ? extends JsonBall> bootstrapConfigForGroup(BootstrapConfigForGroup bootstrapConfigForGroup) { - return CacheLoader.from(bootstrapConfigForGroup); - } - - @Provides - @Singleton - CacheLoader<String, Client> groupToClient(ClientForGroup clientForGroup) { - return CacheLoader.from(clientForGroup); - } - - @Provides - @Singleton - @Validator - public Optional<String> provideValidatorName(Injector injector) { - return Optional.absent(); - } - - @Provides - @Singleton - @Validator - public Optional<PrivateKey> provideValidatorCredential(Crypto crypto, Injector injector) - throws InvalidKeySpecException, IOException { - return Optional.absent(); - } - -} http://git-wip-us.apache.org/repos/asf/jclouds/blob/2caf6ea8/apis/chef/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata ---------------------------------------------------------------------- diff --git a/apis/chef/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata b/apis/chef/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata index 07e3240..c7a6f4e 100644 --- a/apis/chef/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata +++ b/apis/chef/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata @@ -1,2 +1 @@ -org.jclouds.chef.test.TransientChefApiMetadata org.jclouds.chef.ChefApiMetadata \ No newline at end of file http://git-wip-us.apache.org/repos/asf/jclouds/blob/2caf6ea8/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiIntegrationTest.java ---------------------------------------------------------------------- diff --git a/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiIntegrationTest.java b/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiIntegrationTest.java deleted file mode 100644 index ecd5d16..0000000 --- a/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiIntegrationTest.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.chef.test; - -import static org.testng.Assert.assertEquals; -import static org.testng.Assert.assertNotNull; - -import java.util.Properties; - -import org.jclouds.chef.ChefApi; -import org.jclouds.chef.domain.DatabagItem; -import org.jclouds.chef.internal.BaseChefLiveTest; -import org.testng.annotations.Test; - -/** - * Tests behavior of {@code TransientChefApi} - */ -@Test(groups = { "integration" }) -public class TransientChefApiIntegrationTest extends BaseChefLiveTest<ChefApi> { - public static final String PREFIX = System.getProperty("user.name") + "-jcloudstest"; - private DatabagItem databagItem; - - public TransientChefApiIntegrationTest() { - provider = "transientchef"; - } - - @Override - protected Properties setupProperties() { - return new Properties(); - } - - public void testCreateDatabag() { - api.deleteDatabag(PREFIX); - api.createDatabag(PREFIX); - } - - @Test(dependsOnMethods = { "testCreateDatabag" }) - public void testCreateDatabagItem() { - Properties config = new Properties(); - config.setProperty("foo", "bar"); - databagItem = api.createDatabagItem(PREFIX, new DatabagItem("config", json.toJson(config))); - assertNotNull(databagItem); - assertEquals(databagItem.getId(), "config"); - assertEquals(config, json.fromJson(databagItem.toString(), Properties.class)); - } - - @Test(dependsOnMethods = "testCreateDatabagItem") - public void testUpdateDatabagItem() { - for (String databagItemId : api.listDatabagItems(PREFIX)) { - DatabagItem databagItem = api.getDatabagItem(PREFIX, databagItemId); - api.updateDatabagItem(PREFIX, databagItem); - } - } - -} http://git-wip-us.apache.org/repos/asf/jclouds/blob/2caf6ea8/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiMetadataTest.java ---------------------------------------------------------------------- diff --git a/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiMetadataTest.java b/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiMetadataTest.java deleted file mode 100644 index eac33f3..0000000 --- a/apis/chef/src/test/java/org/jclouds/chef/test/TransientChefApiMetadataTest.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.chef.test; - -import org.jclouds.View; -import org.jclouds.rest.internal.BaseHttpApiMetadataTest; -import org.testng.annotations.Test; - -import com.google.common.collect.ImmutableSet; -import com.google.common.reflect.TypeToken; - -@Test(groups = "unit", testName = "TransientChefApiMetadataTest") -public class TransientChefApiMetadataTest extends BaseHttpApiMetadataTest { - - // no config management abstraction, yet - public TransientChefApiMetadataTest() { - super(new TransientChefApiMetadata(), ImmutableSet.<TypeToken<? extends View>> of()); - } -}
