pr-zlib 1.0.5 → 1.1.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.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/{CHANGES → CHANGES.md} +19 -6
  4. data/Gemfile +6 -0
  5. data/MANIFEST.md +20 -0
  6. data/{README → README.md} +29 -12
  7. data/Rakefile +11 -61
  8. data/bin/{minizip.rb → minirbgzip} +77 -65
  9. data/lib/pr/rbzlib/bytef.rb +16 -0
  10. data/lib/pr/rbzlib/bytef_arr.rb +29 -0
  11. data/lib/pr/rbzlib/bytef_str.rb +52 -0
  12. data/lib/pr/rbzlib/posf.rb +33 -0
  13. data/lib/pr/rbzlib.rb +1758 -1855
  14. data/lib/pr/zlib/deflate.rb +99 -0
  15. data/lib/pr/zlib/errors.rb +27 -0
  16. data/lib/pr/zlib/gzipfile.rb +315 -0
  17. data/lib/pr/zlib/gzipfile_errors.rb +19 -0
  18. data/lib/pr/zlib/gzipreader.rb +338 -0
  19. data/lib/pr/zlib/gzipwriter.rb +167 -0
  20. data/lib/pr/zlib/inflate.rb +114 -0
  21. data/lib/pr/zlib/zstream.rb +417 -0
  22. data/lib/pr/zlib.rb +25 -1466
  23. data/pr-zlib.gemspec +15 -15
  24. data/profile/bench_pr_zlib.rb +7 -5
  25. data/profile/bench_zlib.rb +7 -5
  26. data/profile/profile_pr_zlib_read.rb +3 -3
  27. data/profile/profile_pr_zlib_write.rb +3 -3
  28. data/spec/README.md +46 -0
  29. data/spec/rbzlib/bytef_arr_spec.rb +82 -0
  30. data/spec/rbzlib/bytef_spec.rb +72 -0
  31. data/spec/rbzlib/bytef_str_spec.rb +113 -0
  32. data/spec/rbzlib/posf_spec.rb +83 -0
  33. data/spec/rbzlib_spec.rb +170 -0
  34. data/spec/spec_helper.rb +27 -0
  35. data/spec/zlib/deflate_spec.rb +44 -0
  36. data/spec/zlib/gzip_file_spec.rb +86 -0
  37. data/spec/zlib/gzip_reader_spec.rb +276 -0
  38. data/spec/zlib/gzip_writer_spec.rb +275 -0
  39. data/spec/zlib/inflate_spec.rb +44 -0
  40. data/spec/zlib/zstream_spec.rb +156 -0
  41. data/spec/zlib_spec.rb +195 -0
  42. data.tar.gz.sig +0 -0
  43. metadata +68 -55
  44. metadata.gz.sig +0 -0
  45. data/MANIFEST +0 -20
  46. data/test/test_rbzlib.rb +0 -133
  47. data/test/test_rbzlib_bytef.rb +0 -76
  48. data/test/test_rbzlib_posf.rb +0 -56
  49. data/test/test_zlib.rb +0 -162
  50. data/test/test_zlib_deflate.rb +0 -55
  51. data/test/test_zlib_gzip_file.rb +0 -93
  52. data/test/test_zlib_gzip_reader.rb +0 -183
  53. data/test/test_zlib_gzip_writer.rb +0 -186
  54. data/test/test_zlib_inflate.rb +0 -55
  55. data/test/test_zlib_zstream.rb +0 -146
@@ -1,93 +0,0 @@
1
- ########################################################################
2
- # test_zlib_gzip_file.rb
3
- #
4
- # Test case for the Zlib::GzipFile base class.
5
- ########################################################################
6
- require 'pr/zlib'
7
- require 'test-unit'
8
-
9
- class TC_Zlib_GzipFile < Test::Unit::TestCase
10
- def self.startup
11
- end
12
-
13
- def setup
14
- @gz_file = Zlib::GzipFile.new
15
- end
16
-
17
- def test_gzip_file_constants
18
- assert_equal(Zlib::GzipFile::GZ_MAGIC1, 0x1f)
19
- assert_equal(Zlib::GzipFile::GZ_MAGIC2, 0x8b)
20
- assert_equal(Zlib::GzipFile::GZ_METHOD_DEFLATE, 8)
21
- assert_equal(Zlib::GzipFile::GZ_FLAG_MULTIPART, 0x2)
22
- assert_equal(Zlib::GzipFile::GZ_FLAG_EXTRA, 0x4)
23
- assert_equal(Zlib::GzipFile::GZ_FLAG_ORIG_NAME, 0x8)
24
- assert_equal(Zlib::GzipFile::GZ_FLAG_COMMENT, 0x10)
25
- assert_equal(Zlib::GzipFile::GZ_FLAG_ENCRYPT, 0x20)
26
- assert_equal(Zlib::GzipFile::GZ_FLAG_UNKNOWN_MASK, 0xc0)
27
- assert_equal(Zlib::GzipFile::GZ_EXTRAFLAG_FAST, 0x4)
28
- assert_equal(Zlib::GzipFile::GZ_EXTRAFLAG_SLOW, 0x2)
29
- end
30
-
31
- def test_gzfile_is_finished
32
- assert_respond_to(@gz_file, :GZFILE_IS_FINISHED)
33
- end
34
-
35
- def test_gzfile_close_basic
36
- assert_respond_to(@gz_file, :gzfile_close)
37
- end
38
-
39
- def test_to_io_basic
40
- assert_respond_to(@gz_file, :to_io)
41
- end
42
-
43
- def test_crc_basic
44
- assert_respond_to(@gz_file, :crc)
45
- end
46
-
47
- def test_mtime_basic
48
- assert_respond_to(@gz_file, :mtime)
49
- end
50
-
51
- def test_level_basic
52
- assert_respond_to(@gz_file, :level)
53
- end
54
-
55
- def test_os_code_basic
56
- assert_respond_to(@gz_file, :os_code)
57
- end
58
-
59
- def test_orig_name_basic
60
- assert_respond_to(@gz_file, :orig_name)
61
- end
62
-
63
- def test_comment_basic
64
- assert_respond_to(@gz_file, :comment)
65
- end
66
-
67
- def test_close_basic
68
- assert_respond_to(@gz_file, :close)
69
- end
70
-
71
- def test_finish_basic
72
- assert_respond_to(@gz_file, :finish)
73
- end
74
-
75
- def test_is_closed_basic
76
- assert_respond_to(@gz_file, :closed?)
77
- end
78
-
79
- def test_sync_get_basic
80
- assert_respond_to(@gz_file, :sync)
81
- end
82
-
83
- def test_sync_set_basic
84
- assert_respond_to(@gz_file, :sync=)
85
- end
86
-
87
- def teardown
88
- @gz_file = nil
89
- end
90
-
91
- def self.shutdown
92
- end
93
- end
@@ -1,183 +0,0 @@
1
- ########################################################################
2
- # test_zlib_gzip_reader.rb
3
- #
4
- # Tests for the GzipReader class.
5
- ########################################################################
6
- require 'test-unit'
7
- require 'fileutils'
8
- require 'pr/zlib'
9
-
10
- class TC_GzipReader < Test::Unit::TestCase
11
- def self.startup
12
- Dir.chdir('test') if File.basename(Dir.pwd) != 'test'
13
- File.open('test.txt', 'wb'){ |fh| fh.puts 'Test file' }
14
- system('gzip *.txt')
15
- @@gz_file = 'test.txt.gz'
16
- end
17
-
18
- def setup
19
- @handle = File.open(@@gz_file)
20
- @gz_reader = Zlib::GzipReader.new(@handle)
21
- end
22
-
23
- def test_constructor_expected_errors
24
- assert_raise(ArgumentError){ Zlib::GzipReader.new }
25
- assert_raise(NoMethodError){ Zlib::GzipReader.new(1) }
26
- end
27
-
28
- def test_lineno_get_basic
29
- assert_respond_to(@gz_reader, :lineno)
30
- assert_nothing_raised{ @gz_reader.lineno }
31
- end
32
-
33
- def test_lineno_get
34
- assert_kind_of(Integer, @gz_reader.lineno)
35
- assert_equal(0, @gz_reader.lineno)
36
- end
37
-
38
- def test_lineno_set_basic
39
- assert_respond_to(@gz_reader, :lineno=)
40
- assert_nothing_raised{ @gz_reader.lineno = 0 }
41
- end
42
-
43
- def test_lineno_set
44
- assert_kind_of(Integer, @gz_reader.lineno = 0)
45
- assert_equal(0, @gz_reader.lineno = 0)
46
- end
47
-
48
- def test_eof_basic
49
- assert_respond_to(@gz_reader, :eof)
50
- assert_nothing_raised{ @gz_reader.eof }
51
- end
52
-
53
- def test_pos_basic
54
- assert_respond_to(@gz_reader, :pos)
55
- assert_nothing_raised{ @gz_reader.pos }
56
- end
57
-
58
- def test_pos
59
- assert_kind_of(Integer, @gz_reader.pos)
60
- end
61
-
62
- def test_rewind_basic
63
- assert_respond_to(@gz_reader, :rewind)
64
- assert_nothing_raised{ @gz_reader.rewind }
65
- end
66
-
67
- def test_rewind
68
- assert_equal(0, @gz_reader.rewind)
69
- end
70
-
71
- def test_unused_basic
72
- assert_respond_to(@gz_reader, :unused)
73
- assert_nothing_raised{ @gz_reader.unused }
74
- end
75
-
76
- def test_unused
77
- assert_nil(@gz_reader.unused)
78
- end
79
-
80
- def test_read_basic
81
- assert_respond_to(@gz_reader, :read)
82
- assert_nothing_raised{ @gz_reader.read }
83
- end
84
-
85
- def test_read
86
- assert_equal("Test file\n", @gz_reader.read)
87
- end
88
-
89
- def test_read_with_length
90
- assert_equal("Test", @gz_reader.read(4))
91
- end
92
-
93
- def test_read_expected_errors
94
- assert_raise(ArgumentError){ @gz_reader.read(-1) }
95
- end
96
-
97
- def test_getc_basic
98
- assert_respond_to(@gz_reader, :getc)
99
- assert_nothing_raised{ @gz_reader.getc }
100
- end
101
-
102
- def test_getc
103
- expected = RUBY_VERSION.to_f >= 1.9 ? 'T' : 84
104
- assert_equal(expected, @gz_reader.getc)
105
- end
106
-
107
- def test_readchar_basic
108
- assert_respond_to(@gz_reader, :readchar)
109
- assert_nothing_raised{ @gz_reader.readchar }
110
- end
111
-
112
- def test_readchar
113
- expected = RUBY_VERSION.to_f >= 1.9 ? 'T' : 84
114
- assert_equal(expected, @gz_reader.readchar)
115
- end
116
-
117
- def test_each_byte_basic
118
- assert_respond_to(@gz_reader, :each_byte)
119
- assert_nothing_raised{ @gz_reader.each_byte{} }
120
- end
121
-
122
- def test_each_byte
123
- assert_nil(@gz_reader.each_byte{})
124
- end
125
-
126
- def test_ungetc_basic
127
- assert_respond_to(@gz_reader, :ungetc)
128
- assert_nothing_raised{ @gz_reader.ungetc(99) }
129
- end
130
-
131
- def test_ungetc
132
- assert_nil(@gz_reader.ungetc(99))
133
- end
134
-
135
- def test_gets_basic
136
- assert_respond_to(@gz_reader, :gets)
137
- assert_nothing_raised{ @gz_reader.gets }
138
- end
139
-
140
- def test_gets
141
- assert_equal("Test file\n", @gz_reader.gets)
142
- omit('Skipping $_ test')
143
- assert_equal("Test file\n", $_)
144
- end
145
-
146
- def test_readline_basic
147
- assert_respond_to(@gz_reader, :readline)
148
- assert_nothing_raised{ @gz_reader.readline }
149
- end
150
-
151
- def test_readline
152
- assert_equal("Test file\n", @gz_reader.readline)
153
- end
154
-
155
- def test_each_basic
156
- assert_respond_to(@gz_reader, :each)
157
- assert_nothing_raised{ @gz_reader.each{} }
158
- end
159
-
160
- def test_each
161
- assert_not_nil(@gz_reader.each{})
162
- end
163
-
164
- def test_readlines_basic
165
- assert_respond_to(@gz_reader, :readlines)
166
- assert_nothing_raised{ @gz_reader.readlines }
167
- end
168
-
169
- def test_readlines
170
- assert_equal(["Test file\n"], @gz_reader.readlines)
171
- end
172
-
173
- def teardown
174
- @handle.close if @handle && !@handle.closed?
175
- @handle = nil
176
- @gz_reader = nil
177
- end
178
-
179
- def self.shutdown
180
- File.delete(@@gz_file) if File.exist?(@@gz_file)
181
- @@gz_file = nil
182
- end
183
- end
@@ -1,186 +0,0 @@
1
- ########################################################################
2
- # test_zlib_gzip_writer.rb
3
- #
4
- # Test case for the Zlib::GzipWriter class.
5
- ########################################################################
6
- require 'pr/zlib'
7
- require 'test-unit'
8
-
9
- class TC_Zlib_GzipWriter < Test::Unit::TestCase
10
- def self.startup
11
- @@file = 'gzip_writer_test.gz'
12
- end
13
-
14
- def setup
15
- @handle = File.new(@@file, 'w')
16
- @writer = Zlib::GzipWriter.new(@handle)
17
- @time = Time.now
18
- end
19
-
20
- def test_constructor
21
- assert_nothing_raised{ @writer = Zlib::GzipWriter.new(@handle) }
22
- assert_nothing_raised{ @writer = Zlib::GzipWriter.new(@handle, nil) }
23
- assert_nothing_raised{ @writer = Zlib::GzipWriter.new(@handle, nil, nil) }
24
- end
25
-
26
- def test_constructor_expected_errors
27
- assert_raise(ArgumentError){ Zlib::GzipWriter.new }
28
- end
29
-
30
- def test_level
31
- assert_respond_to(@writer, :level)
32
- assert_equal(Z_DEFAULT_COMPRESSION, @writer.level)
33
- end
34
-
35
- def test_mtime_get_basic
36
- assert_respond_to(@writer, :mtime)
37
- assert_nothing_raised{ @writer.mtime }
38
- end
39
-
40
- def test_mtime_get
41
- assert_kind_of(Time, @writer.mtime)
42
- assert_equal(Time.at(0), @writer.mtime)
43
- end
44
-
45
- def test_mtime_set_basic
46
- assert_respond_to(@writer, :mtime=)
47
- assert_nothing_raised{ @writer.mtime = @time }
48
- end
49
-
50
- def test_mtime_set
51
- assert_equal(@time, @writer.mtime = @time)
52
- end
53
-
54
- def test_orig_name_get_basic
55
- assert_respond_to(@writer, :orig_name)
56
- assert_nothing_raised{ @writer.orig_name }
57
- end
58
-
59
- def test_orig_name_get
60
- assert_nil(@writer.orig_name)
61
- end
62
-
63
- def test_orig_name_set_basic
64
- assert_respond_to(@writer, :orig_name=)
65
- assert_nothing_raised{ @writer.orig_name = 'test' }
66
- end
67
-
68
- def test_orig_name_set
69
- assert_equal('test', @writer.orig_name = 'test')
70
- assert_equal('test', @writer.orig_name)
71
- end
72
-
73
- def test_comment_get_basic
74
- assert_respond_to(@writer, :comment)
75
- assert_nothing_raised{ @writer.comment }
76
- end
77
-
78
- def test_comment_get
79
- assert_nil(@writer.comment)
80
- end
81
-
82
- def test_comment_set_basic
83
- assert_respond_to(@writer, :comment=)
84
- assert_nothing_raised{ @writer.comment = 'test' }
85
- end
86
-
87
- def test_comment_set
88
- assert_equal('test', @writer.comment = 'test')
89
- assert_equal('test', @writer.comment)
90
- end
91
-
92
- def test_pos_basic
93
- assert_respond_to(@writer, :pos)
94
- assert_nothing_raised{ @writer.pos }
95
- assert_kind_of(Integer, @writer.pos)
96
- end
97
-
98
- def test_pos
99
- assert_equal(0, @writer.pos)
100
- assert_nothing_raised{ @writer.write('test') }
101
- assert_equal(4, @writer.pos)
102
- end
103
-
104
- def test_tell_alias
105
- assert_alias_method(@writer, :pos, :tell)
106
- end
107
-
108
- def test_open_basic
109
- assert_respond_to(Zlib::GzipWriter, :open)
110
- assert_nothing_raised{ Zlib::GzipWriter.open(@@file){} }
111
- end
112
-
113
- def test_flush_basic
114
- assert_respond_to(@writer, :flush)
115
- assert_nothing_raised{ @writer.flush }
116
- end
117
-
118
- def test_flush
119
- assert_equal(@writer, @writer.flush)
120
- end
121
-
122
- def test_write_basic
123
- assert_respond_to(@writer, :write)
124
- assert_nothing_raised{ @writer.write('test') }
125
- end
126
-
127
- def test_write
128
- assert_equal(4, @writer.write('test'))
129
- assert_equal(3, @writer.write(999))
130
- end
131
-
132
- def test_write_expected_errors
133
- assert_raise(ArgumentError){ @writer.write }
134
- end
135
-
136
- def test_putc_basic
137
- assert_respond_to(@writer, :putc)
138
- assert_nothing_raised{ @writer.putc(97) }
139
- end
140
-
141
- def test_putc
142
- assert_equal(97, @writer.putc(97))
143
- end
144
-
145
- def test_putc_expected_errors
146
- assert_raise(ArgumentError){ @writer.putc }
147
- end
148
-
149
- def test_append_basic
150
- assert_respond_to(@writer, :<<)
151
- assert_nothing_raised{ @writer << 'test' }
152
- end
153
-
154
- def test_append_expected_errors
155
- assert_raise(ArgumentError){ @writer.send(:<<) }
156
- end
157
-
158
- def test_printf_basic
159
- assert_respond_to(@writer, :printf)
160
- assert_nothing_raised{ @writer.printf('%s', 'test') }
161
- end
162
-
163
- def test_printf_expected_errors
164
- assert_raise(ArgumentError){ @writer.printf }
165
- end
166
-
167
- def test_puts_basic
168
- assert_respond_to(@writer, :puts)
169
- assert_nothing_raised{ @writer.puts('test') }
170
- end
171
-
172
- def test_puts_expected_errors
173
- assert_raise(ArgumentError){ @writer.puts }
174
- assert_raise(ArgumentError){ @writer.puts('test1', 'test2') }
175
- end
176
-
177
- def teardown
178
- @handle.close if @handle && !@handle.closed?
179
- @handle = nil
180
- @time = nil
181
- end
182
-
183
- def self.shutdown
184
- File.delete(@@file) if File.exist?(@@file)
185
- end
186
- end
@@ -1,55 +0,0 @@
1
- ########################################################################
2
- # test_zlib_inflate.rb
3
- #
4
- # Test case for the Zlib::Inflate class.
5
- ########################################################################
6
- require 'pr/zlib'
7
- require 'test-unit'
8
-
9
- class TC_Zlib_Inflate < Test::Unit::TestCase
10
- def self.startup
11
- end
12
-
13
- def setup
14
- @inflate = Zlib::Inflate.new
15
- end
16
-
17
- def test_inflate_run_singleton_basic
18
- assert_respond_to(Zlib::Inflate, :inflate_run)
19
- end
20
-
21
- def test_inflate_singleton_basic
22
- assert_respond_to(Zlib::Inflate, :inflate)
23
- end
24
-
25
- #def test_initialize_copy_basic
26
- #assert_respond_to(@inflate, :initialize_copy)
27
- #end
28
-
29
- def test_inflate_basic
30
- assert_respond_to(@inflate, :inflate)
31
- end
32
-
33
- def test_append_basic
34
- assert_respond_to(@inflate, :<<)
35
- end
36
-
37
- def test_sync_basic
38
- assert_respond_to(@inflate, :sync)
39
- end
40
-
41
- def test_is_sync_point_basic
42
- assert_respond_to(@inflate, :sync_point?)
43
- end
44
-
45
- def test_set_dictionary_basic
46
- assert_respond_to(@inflate, :set_dictionary)
47
- end
48
-
49
- def teardown
50
- @inflate = nil
51
- end
52
-
53
- def self.shutdown
54
- end
55
- end
@@ -1,146 +0,0 @@
1
- require 'test-unit'
2
- require 'pr/zlib'
3
-
4
- class TC_Zlib_Zstream < Test::Unit::TestCase
5
- def self.startup
6
- end
7
-
8
- def setup
9
- @zstream = Zlib::ZStream.new
10
- @zfunc = Zlib::ZStreamFuncs.new
11
- @zstream.zstream_init(@zfunc)
12
- @src = Array.new(128, 0.chr)
13
- end
14
-
15
- def test_flags
16
- assert_respond_to(@zstream, :flags)
17
- assert_respond_to(@zstream, :flags=)
18
- end
19
-
20
- def test_buf
21
- assert_respond_to(@zstream, :buf)
22
- assert_respond_to(@zstream, :buf=)
23
- end
24
-
25
- def test_input
26
- assert_respond_to(@zstream, :input)
27
- assert_respond_to(@zstream, :input=)
28
- end
29
-
30
- def test_stream
31
- assert_respond_to(@zstream, :stream)
32
- assert_respond_to(@zstream, :stream=)
33
- end
34
-
35
- def test_func
36
- assert_respond_to(@zstream, :func)
37
- assert_respond_to(@zstream, :func=)
38
- end
39
-
40
- def test_raise_zlib_error_basic
41
- assert_respond_to(@zstream, :raise_zlib_error)
42
- end
43
-
44
- def test_raise_zlib_error_stream_end
45
- assert_raise(Zlib::StreamEnd){ @zstream.raise_zlib_error(Z_STREAM_END, nil) }
46
- assert_raise_message('stream end'){ @zstream.raise_zlib_error(Z_STREAM_END, nil) }
47
- end
48
-
49
- def test_raise_zlib_error_need_dict
50
- assert_raise(Zlib::NeedDict){ @zstream.raise_zlib_error(Z_NEED_DICT, nil) }
51
- assert_raise_message('need dictionary'){ @zstream.raise_zlib_error(Z_NEED_DICT, nil) }
52
- end
53
-
54
- def test_raise_zlib_error_stream_error
55
- assert_raise(Zlib::StreamError){ @zstream.raise_zlib_error(Z_STREAM_ERROR, nil) }
56
- assert_raise_message('stream error'){ @zstream.raise_zlib_error(Z_STREAM_ERROR, nil) }
57
- end
58
-
59
- def test_raise_zlib_error_data_error
60
- assert_raise(Zlib::DataError){ @zstream.raise_zlib_error(Z_DATA_ERROR, nil) }
61
- assert_raise_message('data error'){ @zstream.raise_zlib_error(Z_DATA_ERROR, nil) }
62
- end
63
-
64
- def test_raise_zlib_error_buf_error
65
- assert_raise(Zlib::BufError){ @zstream.raise_zlib_error(Z_BUF_ERROR, nil) }
66
- assert_raise_message('buffer error'){ @zstream.raise_zlib_error(Z_BUF_ERROR, nil) }
67
- end
68
-
69
- def test_raise_zlib_error_version_error
70
- assert_raise(Zlib::VersionError){ @zstream.raise_zlib_error(Z_VERSION_ERROR, nil) }
71
- assert_raise_message('incompatible version'){ @zstream.raise_zlib_error(Z_VERSION_ERROR, nil) }
72
- end
73
-
74
- def test_raise_zlib_error_mem_error
75
- assert_raise(Zlib::MemError){ @zstream.raise_zlib_error(Z_MEM_ERROR, nil) }
76
- assert_raise_message('insufficient memory'){ @zstream.raise_zlib_error(Z_MEM_ERROR, nil) }
77
- end
78
-
79
- def test_raise_zlib_error_errno
80
- assert_raise(SystemCallError){ @zstream.raise_zlib_error(Z_ERRNO, nil) }
81
- assert_raise_message('unknown error - file error'){ @zstream.raise_zlib_error(Z_ERRNO, nil) }
82
- end
83
-
84
- def test_raise_zlib_error_unknown
85
- #notify('I think there might be a problem here - need to investigate')
86
- assert_raise(Zlib::Error){ @zstream.raise_zlib_error(999, nil) }
87
- assert_raise_message('unknown error - file error'){ @zstream.raise_zlib_error(Z_ERRNO, nil) }
88
- end
89
-
90
- def test_zstream_expand_buffer_basic
91
- assert_respond_to(@zstream, :zstream_expand_buffer)
92
- assert_nothing_raised{ @zstream.zstream_expand_buffer }
93
- end
94
-
95
- # @zstream.buf set after call
96
- def test_zstream_expand_buffer
97
- assert_nil(@zstream.buf)
98
- assert_nil(@zstream.zstream_expand_buffer)
99
- assert_kind_of(Bytef_str, @zstream.buf)
100
- end
101
-
102
- def test_zstream_expand_buffer_expected_errors
103
- #notify("Modify zstream_expand_buffer method to explicitly handle a nil @stream")
104
- assert_raise(ArgumentError){ @zstream.zstream_expand_buffer(1) }
105
- end
106
-
107
- def test_zstream_append_buffer_basic
108
- assert_respond_to(@zstream, :zstream_append_buffer)
109
- assert_nothing_raised{ @zstream.zstream_append_buffer(@src, @src.length) }
110
- end
111
-
112
- # @zstream.buf set after call
113
- def test_zstream_append_buffer
114
- assert_nil(@zstream.buf)
115
- assert_nil(@zstream.zstream_append_buffer(@src, @src.length))
116
- assert_kind_of(Bytef_arr, @zstream.buf)
117
- end
118
-
119
- def test_zstream_append_buffer_expected_errors
120
- assert_raise(ArgumentError){ @zstream.zstream_append_buffer }
121
- end
122
-
123
- def test_zstream_detach_buffer_basic
124
- assert_respond_to(@zstream, :zstream_detach_buffer)
125
- assert_nothing_raised{ @zstream.zstream_detach_buffer }
126
- end
127
-
128
- def test_zstream_detach_buffer
129
- assert_kind_of(String, @zstream.zstream_detach_buffer)
130
- assert_not_nil(@zstream.buf)
131
- end
132
-
133
- def test_zstream_shift_buffer_basic
134
- @zstream.buf = Bytef.new(0.chr * Zlib::ZSTREAM_INITIAL_BUFSIZE)
135
- assert_respond_to(@zstream, :zstream_shift_buffer)
136
- assert_nothing_raised{ @zstream.zstream_shift_buffer(1) }
137
- end
138
-
139
- def teardown
140
- @zstream = nil
141
- @src = nil
142
- end
143
-
144
- def self.shutdown
145
- end
146
- end