iostreams 1.1.0 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/Rakefile +7 -7
  4. data/lib/io_streams/builder.rb +4 -3
  5. data/lib/io_streams/bzip2/reader.rb +1 -1
  6. data/lib/io_streams/bzip2/writer.rb +1 -1
  7. data/lib/io_streams/deprecated.rb +2 -3
  8. data/lib/io_streams/encode/reader.rb +5 -8
  9. data/lib/io_streams/encode/writer.rb +1 -1
  10. data/lib/io_streams/io_streams.rb +5 -2
  11. data/lib/io_streams/line/reader.rb +2 -1
  12. data/lib/io_streams/path.rb +4 -4
  13. data/lib/io_streams/paths/http.rb +8 -10
  14. data/lib/io_streams/paths/matcher.rb +10 -11
  15. data/lib/io_streams/paths/s3.rb +6 -6
  16. data/lib/io_streams/paths/sftp.rb +38 -23
  17. data/lib/io_streams/pgp.rb +45 -35
  18. data/lib/io_streams/pgp/reader.rb +4 -6
  19. data/lib/io_streams/pgp/writer.rb +1 -2
  20. data/lib/io_streams/reader.rb +2 -2
  21. data/lib/io_streams/record/writer.rb +2 -4
  22. data/lib/io_streams/row/writer.rb +3 -5
  23. data/lib/io_streams/stream.rb +6 -6
  24. data/lib/io_streams/symmetric_encryption/reader.rb +1 -3
  25. data/lib/io_streams/symmetric_encryption/writer.rb +2 -6
  26. data/lib/io_streams/tabular.rb +12 -10
  27. data/lib/io_streams/tabular/header.rb +4 -4
  28. data/lib/io_streams/tabular/parser/array.rb +2 -4
  29. data/lib/io_streams/tabular/parser/csv.rb +3 -5
  30. data/lib/io_streams/tabular/parser/fixed.rb +4 -3
  31. data/lib/io_streams/tabular/parser/hash.rb +2 -4
  32. data/lib/io_streams/tabular/parser/json.rb +2 -4
  33. data/lib/io_streams/tabular/parser/psv.rb +5 -7
  34. data/lib/io_streams/tabular/utility/csv_row.rb +9 -17
  35. data/lib/io_streams/utils.rb +3 -3
  36. data/lib/io_streams/utils/reliable_http.rb +98 -0
  37. data/lib/io_streams/version.rb +1 -1
  38. data/lib/io_streams/writer.rb +1 -1
  39. data/lib/io_streams/xlsx/reader.rb +5 -5
  40. data/lib/io_streams/zip/reader.rb +1 -1
  41. data/lib/io_streams/zip/writer.rb +2 -2
  42. data/lib/iostreams.rb +34 -34
  43. data/test/builder_test.rb +74 -74
  44. data/test/bzip2_reader_test.rb +8 -13
  45. data/test/bzip2_writer_test.rb +8 -9
  46. data/test/deprecated_test.rb +25 -29
  47. data/test/encode_reader_test.rb +14 -18
  48. data/test/encode_writer_test.rb +29 -30
  49. data/test/gzip_reader_test.rb +8 -13
  50. data/test/gzip_writer_test.rb +10 -11
  51. data/test/io_streams_test.rb +35 -35
  52. data/test/line_reader_test.rb +35 -39
  53. data/test/line_writer_test.rb +8 -9
  54. data/test/minimal_file_reader.rb +1 -1
  55. data/test/path_test.rb +24 -24
  56. data/test/paths/file_test.rb +42 -42
  57. data/test/paths/http_test.rb +5 -5
  58. data/test/paths/matcher_test.rb +11 -12
  59. data/test/paths/s3_test.rb +44 -46
  60. data/test/paths/sftp_test.rb +18 -18
  61. data/test/pgp_reader_test.rb +13 -15
  62. data/test/pgp_test.rb +43 -44
  63. data/test/pgp_writer_test.rb +27 -28
  64. data/test/record_reader_test.rb +9 -10
  65. data/test/record_writer_test.rb +10 -11
  66. data/test/row_reader_test.rb +5 -6
  67. data/test/row_writer_test.rb +7 -8
  68. data/test/stream_test.rb +60 -62
  69. data/test/tabular_test.rb +111 -111
  70. data/test/test_helper.rb +22 -22
  71. data/test/utils_test.rb +7 -7
  72. data/test/xlsx_reader_test.rb +12 -12
  73. data/test/zip_reader_test.rb +14 -21
  74. data/test/zip_writer_test.rb +10 -10
  75. metadata +4 -3
@@ -1,31 +1,31 @@
1
- require_relative 'test_helper'
2
- require 'csv'
1
+ require_relative "test_helper"
2
+ require "csv"
3
3
 
4
4
  class XlsxReaderTest
5
5
  describe IOStreams::Xlsx::Reader do
6
6
  let :file_name do
7
- File.join(File.dirname(__FILE__), 'files', 'spreadsheet.xlsx')
7
+ File.join(File.dirname(__FILE__), "files", "spreadsheet.xlsx")
8
8
  end
9
9
 
10
10
  let :xlsx_contents do
11
11
  [
12
- ['first column', 'second column', 'third column'],
13
- ['data 1', 'data 2', 'more data']
12
+ ["first column", "second column", "third column"],
13
+ ["data 1", "data 2", "more data"]
14
14
  ]
15
15
  end
16
16
 
17
- describe '.file' do
18
- describe 'with a file path' do
19
- it 'returns the contents of the file' do
17
+ describe ".file" do
18
+ describe "with a file path" do
19
+ it "returns the contents of the file" do
20
20
  csv = IOStreams::Xlsx::Reader.file(file_name, &:read)
21
21
  assert_equal xlsx_contents, CSV.parse(csv)
22
22
  end
23
23
  end
24
24
 
25
- describe 'with a file stream' do
26
- it 'returns the contents of the file' do
27
- csv = ''
28
- File.open(file_name, 'rb') do |file|
25
+ describe "with a file stream" do
26
+ it "returns the contents of the file" do
27
+ csv = ""
28
+ File.open(file_name, "rb") do |file|
29
29
  csv = IOStreams::Xlsx::Reader.stream(file, &:read)
30
30
  end
31
31
 
@@ -1,48 +1,42 @@
1
- require_relative 'test_helper'
2
- require_relative 'minimal_file_reader'
3
- require 'zip'
1
+ require_relative "test_helper"
2
+ require_relative "minimal_file_reader"
3
+ require "zip"
4
4
 
5
5
  class ZipReaderTest < Minitest::Test
6
6
  describe IOStreams::Zip::Reader do
7
7
  let :file_name do
8
- File.join(File.dirname(__FILE__), 'files', 'text.zip')
8
+ File.join(File.dirname(__FILE__), "files", "text.zip")
9
9
  end
10
10
 
11
11
  let :multiple_zip_file_name do
12
- File.join(File.dirname(__FILE__), 'files', 'multiple_files.zip')
12
+ File.join(File.dirname(__FILE__), "files", "multiple_files.zip")
13
13
  end
14
14
 
15
15
  let :contents_test_txt do
16
- File.read(File.join(File.dirname(__FILE__), 'files', 'text.txt'))
16
+ File.read(File.join(File.dirname(__FILE__), "files", "text.txt"))
17
17
  end
18
18
 
19
19
  let :contents_test_json do
20
- File.read(File.join(File.dirname(__FILE__), 'files', 'test.json'))
20
+ File.read(File.join(File.dirname(__FILE__), "files", "test.json"))
21
21
  end
22
22
 
23
23
  let :decompressed do
24
24
  Zip::File.open(file_name) { |zip_file| zip_file.first.get_input_stream.read }
25
25
  end
26
26
 
27
- describe '.file' do
28
- it 'reads the first file' do
29
- result = IOStreams::Zip::Reader.file(file_name) do |io|
30
- io.read
31
- end
27
+ describe ".file" do
28
+ it "reads the first file" do
29
+ result = IOStreams::Zip::Reader.file(file_name, &:read)
32
30
  assert_equal decompressed, result
33
31
  end
34
32
 
35
- it 'reads entry within zip file' do
36
- result = IOStreams::Zip::Reader.file(multiple_zip_file_name, entry_file_name: 'text.txt') do |io|
37
- io.read
38
- end
33
+ it "reads entry within zip file" do
34
+ result = IOStreams::Zip::Reader.file(multiple_zip_file_name, entry_file_name: "text.txt", &:read)
39
35
  assert_equal contents_test_txt, result
40
36
  end
41
37
 
42
- it 'reads another entry within zip file' do
43
- result = IOStreams::Zip::Reader.file(multiple_zip_file_name, entry_file_name: 'test.json') do |io|
44
- io.read
45
- end
38
+ it "reads another entry within zip file" do
39
+ result = IOStreams::Zip::Reader.file(multiple_zip_file_name, entry_file_name: "test.json", &:read)
46
40
  assert_equal contents_test_json, result
47
41
  end
48
42
 
@@ -55,6 +49,5 @@ class ZipReaderTest < Minitest::Test
55
49
  # assert_equal decompressed, result
56
50
  # end
57
51
  end
58
-
59
52
  end
60
53
  end
@@ -1,10 +1,10 @@
1
- require_relative 'test_helper'
2
- require 'zip'
1
+ require_relative "test_helper"
2
+ require "zip"
3
3
 
4
4
  class ZipWriterTest < Minitest::Test
5
5
  describe IOStreams::Zip::Writer do
6
6
  let :temp_file do
7
- Tempfile.new('iostreams')
7
+ Tempfile.new("iostreams")
8
8
  end
9
9
 
10
10
  let :file_name do
@@ -12,28 +12,28 @@ class ZipWriterTest < Minitest::Test
12
12
  end
13
13
 
14
14
  let :decompressed do
15
- ::File.read(File.join(File.dirname(__FILE__), 'files', 'text.txt'))
15
+ ::File.read(File.join(File.dirname(__FILE__), "files", "text.txt"))
16
16
  end
17
17
 
18
18
  after do
19
19
  temp_file.delete
20
20
  end
21
21
 
22
- describe '.file' do
23
- it 'file' do
24
- IOStreams::Zip::Writer.file(file_name, entry_file_name: 'text.txt') do |io|
22
+ describe ".file" do
23
+ it "file" do
24
+ IOStreams::Zip::Writer.file(file_name, entry_file_name: "text.txt") do |io|
25
25
  io.write(decompressed)
26
26
  end
27
27
  result = IOStreams::Zip::Reader.file(file_name, &:read)
28
28
  assert_equal decompressed, result
29
29
  end
30
30
 
31
- it 'stream' do
32
- io_string = StringIO.new(''.b)
31
+ it "stream" do
32
+ io_string = StringIO.new("".b)
33
33
  IOStreams::Zip::Writer.stream(io_string) do |io|
34
34
  io.write(decompressed)
35
35
  end
36
- io = StringIO.new(io_string.string)
36
+ io = StringIO.new(io_string.string)
37
37
  result = IOStreams::Zip::Reader.stream(io, &:read)
38
38
  assert_equal decompressed, result
39
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iostreams
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Reid Morrison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-24 00:00:00.000000000 Z
11
+ date: 2020-04-04 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email:
@@ -60,6 +60,7 @@ files:
60
60
  - lib/io_streams/tabular/parser/psv.rb
61
61
  - lib/io_streams/tabular/utility/csv_row.rb
62
62
  - lib/io_streams/utils.rb
63
+ - lib/io_streams/utils/reliable_http.rb
63
64
  - lib/io_streams/version.rb
64
65
  - lib/io_streams/writer.rb
65
66
  - lib/io_streams/xlsx/reader.rb
@@ -130,7 +131,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
130
131
  - !ruby/object:Gem::Version
131
132
  version: '0'
132
133
  requirements: []
133
- rubygems_version: 3.0.6
134
+ rubygems_version: 3.1.2
134
135
  signing_key:
135
136
  specification_version: 4
136
137
  summary: Input and Output streaming for Ruby.