src/test/java/org/embulk/input/s3/TestS3FileInputPlugin.java in embulk-input-s3-0.3.3 vs src/test/java/org/embulk/input/s3/TestS3FileInputPlugin.java in embulk-input-s3-0.3.4

- old
+ new

@@ -1,18 +1,13 @@ package org.embulk.input.s3; import com.amazonaws.services.s3.AmazonS3; -import com.amazonaws.services.s3.model.ListObjectsRequest; -import com.amazonaws.services.s3.model.ObjectListing; import com.amazonaws.services.s3.model.Region; -import com.amazonaws.services.s3.model.S3ObjectSummary; -import com.amazonaws.services.s3.model.StorageClass; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import org.embulk.EmbulkTestRuntime; import org.embulk.config.ConfigDiff; -import org.embulk.config.ConfigException; import org.embulk.config.ConfigSource; import org.embulk.config.TaskReport; import org.embulk.config.TaskSource; import org.embulk.spi.FileInputRunner; import org.embulk.spi.InputPlugin; @@ -23,25 +18,19 @@ import org.embulk.standards.CsvParserPlugin; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Rule; import org.junit.Test; -import org.mockito.Mockito; -import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; -import java.util.Optional; import static org.embulk.input.s3.S3FileInputPlugin.S3PluginTask; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; import static org.junit.Assume.assumeNotNull; -import static org.mockito.Matchers.any; -import static org.mockito.Mockito.doReturn; -import static org.mockito.Mockito.mock; public class TestS3FileInputPlugin { private static String EMBULK_S3_TEST_BUCKET; private static String EMBULK_S3_TEST_ACCESS_KEY_ID; @@ -95,11 +84,10 @@ assertRecords(config, output); } @Test public void useLastPath() - throws Exception { ConfigSource config = this.config.deepCopy().set("last_path", EMBULK_S3_TEST_PATH_PREFIX + "/sample_01.csv"); ConfigDiff configDiff = runner.transaction(config, new Control(runner, output)); assertEquals(EMBULK_S3_TEST_PATH_PREFIX + "/sample_01.csv", configDiff.get(String.class, "last_path")); @@ -115,11 +103,10 @@ assertFalse(configDiff.has("last_path")); } @Test public void emptyFilesWithLastPath() - throws Exception { ConfigSource config = this.config.deepCopy() .set("path_prefix", "empty_files_prefix") .set("last_path", EMBULK_S3_TEST_PATH_PREFIX + "/sample_01.csv"); ConfigDiff configDiff = runner.transaction(config, new Control(runner, output)); @@ -128,22 +115,20 @@ assertEquals(0, getRecords(config, output).size()); } @Test public void useTotalFileCountLimit() - throws Exception { ConfigSource config = this.config.deepCopy().set("total_file_count_limit", 0); ConfigDiff configDiff = runner.transaction(config, new Control(runner, output)); assertNull(configDiff.get(String.class, "last_path")); assertEquals(0, getRecords(config, output).size()); } @Test public void usePathMatchPattern() - throws Exception { { // match pattern ConfigSource config = this.config.deepCopy().set("path_match_pattern", "/sample_01"); ConfigDiff configDiff = runner.transaction(config, new Control(runner, output)); @@ -223,47 +208,9 @@ // US Standard region is a 'generic' one (s3.amazonaws.com), the expectation here that // the S3 client should not eagerly resolves for a specific region on client side. // Please refer to org.embulk.input.s3.S3FileInputPlugin#newS3Client for the details. assertEquals(s3Client.getRegion(), Region.US_Standard); - } - - @Test(expected = ConfigException.class) - public void useSkipGlacierObjects() throws Exception - { - AmazonS3 client; - client = mock(AmazonS3.class); - doReturn(s3objectList("in/aa/a", StorageClass.Glacier)).when(client).listObjects(any(ListObjectsRequest.class)); - - AbstractS3FileInputPlugin plugin = Mockito.mock(AbstractS3FileInputPlugin.class, Mockito.CALLS_REAL_METHODS); - plugin.listS3FilesByPrefix(newFileList(config, "sample_00", 100L), client, "test_bucket", "test_prefix", Optional.empty(), false); - } - - private FileList.Builder newFileList(ConfigSource config, Object... nameAndSize) - { - FileList.Builder builder = new FileList.Builder(config); - for (int i = 0; i < nameAndSize.length; i += 2) { - builder.add((String) nameAndSize[i], (long) nameAndSize[i + 1]); - } - return builder; - } - - private ObjectListing s3objectList(String key, StorageClass storageClass) throws Exception - { - ObjectListing list = new ObjectListing(); - - S3ObjectSummary element = new S3ObjectSummary(); - element.setKey(key); - element.setStorageClass(storageClass.toString()); - - List<S3ObjectSummary> objectSummaries = new ArrayList<>(); - objectSummaries.add(element); - - Field field = list.getClass().getDeclaredField("objectSummaries"); - field.setAccessible(true); - field.set(list, objectSummaries); - - return list; } static class Control implements InputPlugin.Control {