embulk-decoder-commons-compress 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +7 -0
- data/LICENSE.txt +23 -0
- data/README.md +70 -0
- data/build.gradle +63 -0
- data/gradle/wrapper/gradle-wrapper.jar +0 -0
- data/gradle/wrapper/gradle-wrapper.properties +6 -0
- data/gradlew +164 -0
- data/gradlew.bat +90 -0
- data/lib/embulk/decoder/commons-compress.rb +3 -0
- data/src/main/java/org/embulk/decoder/ArchiveInputStreamIterator.java +68 -0
- data/src/main/java/org/embulk/decoder/CommonsCompressDecoderPlugin.java +52 -0
- data/src/main/java/org/embulk/decoder/CommonsCompressFileInput.java +73 -0
- data/src/main/java/org/embulk/decoder/CommonsCompressProvider.java +182 -0
- data/src/main/java/org/embulk/decoder/CommonsCompressUtil.java +135 -0
- data/src/test/java/org/embulk/decoder/TestArchiveInputStreamIterator.java +106 -0
- data/src/test/java/org/embulk/decoder/TestCommonsCompressDecoderPlugin.java +593 -0
- data/src/test/java/org/embulk/decoder/TestCommonsCompressFileInput.java +152 -0
- data/src/test/java/org/embulk/decoder/TestCommonsCompressProvider.java +369 -0
- data/src/test/java/org/embulk/decoder/TestCommonsCompressUtil.java +80 -0
- data/src/test/resources/org/embulk/decoder/sample_0.tar +0 -0
- data/src/test/resources/org/embulk/decoder/sample_1.csv +1 -0
- data/src/test/resources/org/embulk/decoder/sample_1.csv.bz2 +0 -0
- data/src/test/resources/org/embulk/decoder/sample_1.tar +0 -0
- data/src/test/resources/org/embulk/decoder/sample_2.csv +1 -0
- data/src/test/resources/org/embulk/decoder/samples.ar +5 -0
- data/src/test/resources/org/embulk/decoder/samples.tar +0 -0
- data/src/test/resources/org/embulk/decoder/samples.tar.Z +0 -0
- data/src/test/resources/org/embulk/decoder/samples.tar.bz2 +0 -0
- data/src/test/resources/org/embulk/decoder/samples.tar.gz +0 -0
- data/src/test/resources/org/embulk/decoder/samples.tar.xz +0 -0
- data/src/test/resources/org/embulk/decoder/samples.tgz +0 -0
- data/src/test/resources/org/embulk/decoder/samples.zip +0 -0
- metadata +106 -0
@@ -0,0 +1,80 @@
|
|
1
|
+
package org.embulk.decoder;
|
2
|
+
|
3
|
+
import static org.junit.Assert.assertEquals;
|
4
|
+
import static org.junit.Assert.assertFalse;
|
5
|
+
import static org.junit.Assert.assertNull;
|
6
|
+
import static org.junit.Assert.assertTrue;
|
7
|
+
|
8
|
+
import org.apache.commons.compress.archivers.ArchiveStreamFactory;
|
9
|
+
import org.apache.commons.compress.compressors.CompressorStreamFactory;
|
10
|
+
import org.junit.Test;
|
11
|
+
|
12
|
+
public class TestCommonsCompressUtil {
|
13
|
+
|
14
|
+
@Test
|
15
|
+
public void testIsArchiveFormat() {
|
16
|
+
for (String format : CommonsCompressUtil.archiveFormats) {
|
17
|
+
assertTrue("Archive formats should return true.", CommonsCompressUtil.isArchiveFormat(format));
|
18
|
+
}
|
19
|
+
for (String format : CommonsCompressUtil.compressorFormats) {
|
20
|
+
assertFalse("Compressor formats should return false.", CommonsCompressUtil.isArchiveFormat(format));
|
21
|
+
}
|
22
|
+
assertFalse("Auto-detect should return false.", CommonsCompressUtil.isArchiveFormat(""));
|
23
|
+
}
|
24
|
+
|
25
|
+
@Test
|
26
|
+
public void testIsCompressorFormat() {
|
27
|
+
for (String format : CommonsCompressUtil.archiveFormats) {
|
28
|
+
assertFalse("Archive formats should return false.", CommonsCompressUtil.isCompressorFormat(format));
|
29
|
+
}
|
30
|
+
for (String format : CommonsCompressUtil.compressorFormats) {
|
31
|
+
assertTrue("Compressor formats should return true.", CommonsCompressUtil.isCompressorFormat(format));
|
32
|
+
}
|
33
|
+
assertFalse("Auto-detect should return false.", CommonsCompressUtil.isArchiveFormat(""));
|
34
|
+
}
|
35
|
+
|
36
|
+
@Test
|
37
|
+
public void testIsAutoDetect() {
|
38
|
+
for (String format : CommonsCompressUtil.archiveFormats) {
|
39
|
+
assertFalse("Archive formats should return false.", CommonsCompressUtil.isAutoDetect(format));
|
40
|
+
}
|
41
|
+
for (String format : CommonsCompressUtil.compressorFormats) {
|
42
|
+
assertFalse("Compressor formats should return false.", CommonsCompressUtil.isAutoDetect(format));
|
43
|
+
}
|
44
|
+
assertTrue("Verify auto detect format.", CommonsCompressUtil.isAutoDetect(null));
|
45
|
+
assertTrue("Verify auto detect format.", CommonsCompressUtil.isAutoDetect(""));
|
46
|
+
}
|
47
|
+
|
48
|
+
@Test
|
49
|
+
public void testToFormatsForAutoDetect() {
|
50
|
+
assertNull("null returns null.", CommonsCompressUtil.toFormats(null));
|
51
|
+
assertNull("zero length string returns null.", CommonsCompressUtil.toFormats(""));
|
52
|
+
}
|
53
|
+
|
54
|
+
@Test
|
55
|
+
public void testToFormatsForSingleFormat() {
|
56
|
+
String format = ArchiveStreamFactory.TAR;
|
57
|
+
String[] formats = CommonsCompressUtil.toFormats(format);
|
58
|
+
assertEquals("a single format returns 1 length array.", 1, formats.length);
|
59
|
+
assertEquals("a single format returns tar.", ArchiveStreamFactory.TAR, formats[0]);
|
60
|
+
}
|
61
|
+
|
62
|
+
@Test
|
63
|
+
public void testToFormatsForSolidCompressionFormat() {
|
64
|
+
String format = "tgz";
|
65
|
+
String[] formats = CommonsCompressUtil.toFormats(format);
|
66
|
+
assertEquals("solid compresson format returns 2 length array.", 2, formats.length);
|
67
|
+
assertEquals("solid compresson format returns gzip for 1st element.", CompressorStreamFactory.GZIP, formats[0]);
|
68
|
+
assertEquals("solid compresson format returns tar for 2st element.", ArchiveStreamFactory.TAR, formats[1]);
|
69
|
+
}
|
70
|
+
|
71
|
+
@Test
|
72
|
+
public void testToFormatsForMultipleFormats() {
|
73
|
+
String format = ArchiveStreamFactory.TAR + " " + CompressorStreamFactory.BZIP2;
|
74
|
+
String[] formats = CommonsCompressUtil.toFormats(format);
|
75
|
+
assertEquals("Two format text returns 2 length array.", 2, formats.length);
|
76
|
+
assertEquals("Two format text returns bzip2 for 1st element.", CompressorStreamFactory.BZIP2, formats[0]);
|
77
|
+
assertEquals("Two format text returns tar for 1st element.", ArchiveStreamFactory.TAR, formats[1]);
|
78
|
+
}
|
79
|
+
|
80
|
+
}
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
1,foo
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
2,bar
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
ADDED
@@ -0,0 +1,106 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: embulk-decoder-commons-compress
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Hiroki Ata
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-03-02 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
version_requirements: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
requirement: !ruby/object:Gem::Requirement
|
21
|
+
requirements:
|
22
|
+
- - ~>
|
23
|
+
- !ruby/object:Gem::Version
|
24
|
+
version: '1.0'
|
25
|
+
prerelease: false
|
26
|
+
type: :development
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
35
|
+
requirements:
|
36
|
+
- - '>='
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: '10.0'
|
39
|
+
prerelease: false
|
40
|
+
type: :development
|
41
|
+
description: Commons Compress decoder plugin is an Embulk plugin that decodes files using Apache Commons Compress library. It is read by any file input plugins. Search the file input plugins by 'embulk-input file' keywords.
|
42
|
+
email:
|
43
|
+
- hiroki.ata@gmail.com
|
44
|
+
executables: []
|
45
|
+
extensions: []
|
46
|
+
extra_rdoc_files: []
|
47
|
+
files:
|
48
|
+
- .gitignore
|
49
|
+
- LICENSE.txt
|
50
|
+
- README.md
|
51
|
+
- build.gradle
|
52
|
+
- gradle/wrapper/gradle-wrapper.jar
|
53
|
+
- gradle/wrapper/gradle-wrapper.properties
|
54
|
+
- gradlew
|
55
|
+
- gradlew.bat
|
56
|
+
- lib/embulk/decoder/commons-compress.rb
|
57
|
+
- src/main/java/org/embulk/decoder/ArchiveInputStreamIterator.java
|
58
|
+
- src/main/java/org/embulk/decoder/CommonsCompressDecoderPlugin.java
|
59
|
+
- src/main/java/org/embulk/decoder/CommonsCompressFileInput.java
|
60
|
+
- src/main/java/org/embulk/decoder/CommonsCompressProvider.java
|
61
|
+
- src/main/java/org/embulk/decoder/CommonsCompressUtil.java
|
62
|
+
- src/test/java/org/embulk/decoder/TestArchiveInputStreamIterator.java
|
63
|
+
- src/test/java/org/embulk/decoder/TestCommonsCompressDecoderPlugin.java
|
64
|
+
- src/test/java/org/embulk/decoder/TestCommonsCompressFileInput.java
|
65
|
+
- src/test/java/org/embulk/decoder/TestCommonsCompressProvider.java
|
66
|
+
- src/test/java/org/embulk/decoder/TestCommonsCompressUtil.java
|
67
|
+
- src/test/resources/org/embulk/decoder/sample_0.tar
|
68
|
+
- src/test/resources/org/embulk/decoder/sample_1.csv
|
69
|
+
- src/test/resources/org/embulk/decoder/sample_1.csv.bz2
|
70
|
+
- src/test/resources/org/embulk/decoder/sample_1.tar
|
71
|
+
- src/test/resources/org/embulk/decoder/sample_2.csv
|
72
|
+
- src/test/resources/org/embulk/decoder/samples.ar
|
73
|
+
- src/test/resources/org/embulk/decoder/samples.tar
|
74
|
+
- src/test/resources/org/embulk/decoder/samples.tar.Z
|
75
|
+
- src/test/resources/org/embulk/decoder/samples.tar.bz2
|
76
|
+
- src/test/resources/org/embulk/decoder/samples.tar.gz
|
77
|
+
- src/test/resources/org/embulk/decoder/samples.tar.xz
|
78
|
+
- src/test/resources/org/embulk/decoder/samples.tgz
|
79
|
+
- src/test/resources/org/embulk/decoder/samples.zip
|
80
|
+
- classpath/commons-compress-1.9.jar
|
81
|
+
- classpath/embulk-decoder-commons-compress-0.3.0.jar
|
82
|
+
homepage: https://github.com/hata/embulk-decoder-commons-compress
|
83
|
+
licenses:
|
84
|
+
- MIT
|
85
|
+
metadata: {}
|
86
|
+
post_install_message:
|
87
|
+
rdoc_options: []
|
88
|
+
require_paths:
|
89
|
+
- lib
|
90
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
91
|
+
requirements:
|
92
|
+
- - '>='
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: '0'
|
95
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
96
|
+
requirements:
|
97
|
+
- - '>='
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: '0'
|
100
|
+
requirements: []
|
101
|
+
rubyforge_project:
|
102
|
+
rubygems_version: 2.1.9
|
103
|
+
signing_key:
|
104
|
+
specification_version: 4
|
105
|
+
summary: Commons Compress decoder plugin for Embulk
|
106
|
+
test_files: []
|