summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorgfyoung <gfyoung17@gmail.com>2016-06-11 22:32:11 +0100
committerAli Beyad <ali@elastic.co>2016-07-22 13:48:45 -0400
commitd98fd36dad335a47f581ff0c2f3c489bbf2bd718 (patch)
tree22ea96a363bff96fd9391b490a91dd5a1128f6bd /plugins
parentb02a6da8fd69e89ef7d916c239d61aa38f1f9096 (diff)
Added deleteBlob IOException test
Diffstat (limited to 'plugins')
-rw-r--r--plugins/repository-azure/src/test/java/org/elasticsearch/repositories/azure/AzureBlobStoreContainerTests.java58
-rw-r--r--plugins/repository-hdfs/src/test/java/org/elasticsearch/repositories/hdfs/HdfsBlobStoreContainerTests.java33
-rw-r--r--plugins/repository-s3/src/test/java/org/elasticsearch/cloud/aws/blobstore/S3BlobStoreContainerTests.java46
3 files changed, 137 insertions, 0 deletions
diff --git a/plugins/repository-azure/src/test/java/org/elasticsearch/repositories/azure/AzureBlobStoreContainerTests.java b/plugins/repository-azure/src/test/java/org/elasticsearch/repositories/azure/AzureBlobStoreContainerTests.java
new file mode 100644
index 0000000000..48c1c21258
--- /dev/null
+++ b/plugins/repository-azure/src/test/java/org/elasticsearch/repositories/azure/AzureBlobStoreContainerTests.java
@@ -0,0 +1,58 @@
+/*
+ * Licensed to Elasticsearch under one or more contributor
+ * license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright
+ * ownership. Elasticsearch 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.elasticsearch.repositories.azure;
+
+import com.microsoft.azure.storage.StorageException;
+import org.elasticsearch.cloud.azure.blobstore.AzureBlobStore;
+import org.elasticsearch.cloud.azure.storage.AzureStorageService;
+import org.elasticsearch.cloud.azure.storage.AzureStorageServiceImpl;
+import org.elasticsearch.common.blobstore.BlobStore;
+import org.elasticsearch.common.settings.Settings;
+import org.elasticsearch.repositories.ESBlobStoreContainerTestCase;
+import org.elasticsearch.repositories.RepositoryName;
+import org.elasticsearch.repositories.RepositorySettings;
+import org.elasticsearch.test.ESIntegTestCase;
+
+import java.io.IOException;
+import java.net.URISyntaxException;
+
+import static org.elasticsearch.cloud.azure.AzureTestUtils.readSettingsFromFile;
+
+/**
+ * You must specify {@code -Dtests.thirdparty=true -Dtests.config=/path/to/elasticsearch.yml}
+ * in order to run these tests.
+ */
+@ESIntegTestCase.ThirdParty
+public class AzureBlobStoreContainerTests extends ESBlobStoreContainerTestCase {
+ @Override
+ protected BlobStore newBlobStore() throws IOException {
+ try {
+ RepositoryName repositoryName = new RepositoryName("azure", "ittest");
+ Settings settings = readSettingsFromFile();
+ RepositorySettings repositorySettings = new RepositorySettings(settings, Settings.builder().build());
+ AzureStorageService storageService = new AzureStorageServiceImpl(settings);
+ AzureBlobStore blobStore = new AzureBlobStore(repositoryName, settings, repositorySettings, storageService);
+ blobStore.createContainer(blobStore.container());
+ return blobStore;
+ } catch (URISyntaxException | StorageException e) {
+ throw new IOException(e);
+ }
+ }
+}
diff --git a/plugins/repository-hdfs/src/test/java/org/elasticsearch/repositories/hdfs/HdfsBlobStoreContainerTests.java b/plugins/repository-hdfs/src/test/java/org/elasticsearch/repositories/hdfs/HdfsBlobStoreContainerTests.java
new file mode 100644
index 0000000000..9b490175e1
--- /dev/null
+++ b/plugins/repository-hdfs/src/test/java/org/elasticsearch/repositories/hdfs/HdfsBlobStoreContainerTests.java
@@ -0,0 +1,33 @@
+/*
+ * Licensed to Elasticsearch under one or more contributor
+ * license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright
+ * ownership. Elasticsearch 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.elasticsearch.repositories.hdfs;
+
+import org.apache.hadoop.fs.FileContext;
+import org.elasticsearch.common.blobstore.BlobStore;
+import org.elasticsearch.repositories.ESBlobStoreContainerTestCase;
+
+import java.io.IOException;
+
+public class HdfsBlobStoreContainerTests extends ESBlobStoreContainerTestCase {
+
+ @Override
+ protected BlobStore newBlobStore() throws IOException {
+ return new HdfsBlobStore(FileContext.getFileContext(), "", 100);
+ }
+}
diff --git a/plugins/repository-s3/src/test/java/org/elasticsearch/cloud/aws/blobstore/S3BlobStoreContainerTests.java b/plugins/repository-s3/src/test/java/org/elasticsearch/cloud/aws/blobstore/S3BlobStoreContainerTests.java
new file mode 100644
index 0000000000..8f9333aa8b
--- /dev/null
+++ b/plugins/repository-s3/src/test/java/org/elasticsearch/cloud/aws/blobstore/S3BlobStoreContainerTests.java
@@ -0,0 +1,46 @@
+/*
+ * Licensed to Elasticsearch under one or more contributor
+ * license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright
+ * ownership. Elasticsearch 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.elasticsearch.cloud.aws.blobstore;
+
+import com.amazonaws.Protocol;
+import com.amazonaws.services.s3.AmazonS3;
+import org.elasticsearch.cloud.aws.InternalAwsS3Service;
+import org.elasticsearch.common.blobstore.BlobStore;
+import org.elasticsearch.common.settings.Settings;
+import org.elasticsearch.common.unit.ByteSizeValue;
+import org.elasticsearch.repositories.ESBlobStoreContainerTestCase;
+
+import java.io.IOException;
+import java.util.Locale;
+
+public class S3BlobStoreContainerTests extends ESBlobStoreContainerTestCase {
+ protected BlobStore newBlobStore() throws IOException {
+ int maxRetries = 5;
+ String region = null;
+ Settings settings = Settings.EMPTY;
+
+ InternalAwsS3Service service = new InternalAwsS3Service(settings);
+ AmazonS3 client = service.client(null, Protocol.HTTPS, region, null, null, maxRetries);
+ String bucket = randomAsciiOfLength(randomIntBetween(1, 10)).toLowerCase(Locale.ROOT);
+
+ return new S3BlobStore(settings, client, bucket, region, false,
+ new ByteSizeValue(100), maxRetries, "public-read-write", "standard");
+ }
+}