rbzip2 0.1.0 → 0.2.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.
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbzip2
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 1
8
+ - 2
9
9
  - 0
10
- version: 0.1.0
10
+ version: 0.2.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Sebastian Staudt
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-11-09 00:00:00 Z
18
+ date: 2011-11-11 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  type: :development
@@ -107,6 +107,7 @@ extensions: []
107
107
  extra_rdoc_files: []
108
108
 
109
109
  files:
110
+ - .gemtest
110
111
  - .gitignore
111
112
  - .travis.yml
112
113
  - Gemfile
@@ -115,17 +116,22 @@ files:
115
116
  - README.md
116
117
  - Rakefile
117
118
  - lib/rbzip2.rb
119
+ - lib/rbzip2/compressor.rb
118
120
  - lib/rbzip2/constants.rb
119
121
  - lib/rbzip2/crc.rb
120
- - lib/rbzip2/data.rb
121
122
  - lib/rbzip2/decompressor.rb
123
+ - lib/rbzip2/input_data.rb
122
124
  - lib/rbzip2/io.rb
125
+ - lib/rbzip2/output_data.rb
123
126
  - lib/rbzip2/version.rb
124
127
  - rbzip2.gemspec
128
+ - spec/compressor_spec.rb
129
+ - spec/decompressor_spec.rb
130
+ - spec/fixtures/big_test.bz2
131
+ - spec/fixtures/big_test.txt
125
132
  - spec/fixtures/test.bz2
126
133
  - spec/fixtures/test.txt
127
134
  - spec/helper.rb
128
- - spec/io_spec.rb
129
135
  homepage: https://github.com/koraktor/rbzip2
130
136
  licenses: []
131
137
 
@@ -160,7 +166,10 @@ signing_key:
160
166
  specification_version: 3
161
167
  summary: Pure Ruby impementation of bzip2
162
168
  test_files:
169
+ - spec/compressor_spec.rb
170
+ - spec/decompressor_spec.rb
171
+ - spec/fixtures/big_test.bz2
172
+ - spec/fixtures/big_test.txt
163
173
  - spec/fixtures/test.bz2
164
174
  - spec/fixtures/test.txt
165
175
  - spec/helper.rb
166
- - spec/io_spec.rb
@@ -1,51 +0,0 @@
1
- # This code is free software; you can redistribute it and/or modify it under
2
- # the terms of the new BSD License.
3
- #
4
- # Copyright (c) 2011, Sebastian Staudt
5
-
6
- require 'rbzip2/constants'
7
-
8
- class RBzip2::Data
9
-
10
- attr_reader :base, :cftab, :get_and_move_to_front_decode_yy, :in_use,
11
- :limit, :ll8, :min_lens, :perm, :receive_decoding_tables_pos,
12
- :selector, :selector_mtf, :seq_to_unseq, :temp_char_array_2d,
13
- :unzftab, :tt
14
-
15
- def initialize(block_size)
16
- @in_use = Array.new 256, false
17
-
18
- @seq_to_unseq = Array.new 256, 0
19
- @selector = Array.new RBzip2::MAX_SELECTORS, 0
20
- @selector_mtf = Array.new RBzip2::MAX_SELECTORS, 0
21
-
22
- @unzftab = Array.new 256, 0
23
-
24
- @base = Array.new RBzip2::N_GROUPS
25
- RBzip2::N_GROUPS.times { |i| @base[i] = Array.new(RBzip2::MAX_ALPHA_SIZE, 0) }
26
- @limit = Array.new RBzip2::N_GROUPS
27
- RBzip2::N_GROUPS.times { |i| @limit[i] = Array.new(RBzip2::MAX_ALPHA_SIZE, 0) }
28
- @perm = Array.new RBzip2::N_GROUPS
29
- RBzip2:: N_GROUPS.times { |i| @perm[i] = Array.new(RBzip2::MAX_ALPHA_SIZE, 0) }
30
- @min_lens = Array.new RBzip2::N_GROUPS, 0
31
-
32
- @cftab = Array.new 257, 0
33
- @get_and_move_to_front_decode_yy = Array.new 256
34
- @temp_char_array_2d = Array.new RBzip2::N_GROUPS
35
- RBzip2::N_GROUPS.times { |i| @temp_char_array_2d[i] = Array.new(RBzip2::MAX_ALPHA_SIZE, 0) }
36
- @receive_decoding_tables_pos = Array.new RBzip2::N_GROUPS, 0
37
-
38
- @ll8 = Array.new block_size * RBzip2::BASEBLOCKSIZE
39
- end
40
-
41
- def init_tt(size)
42
- tt_shadow = @tt
43
-
44
- if tt_shadow.nil? || tt_shadow.size < size
45
- @tt = tt_shadow = Array.new(size)
46
- end
47
-
48
- tt_shadow
49
- end
50
-
51
- end
@@ -1,37 +0,0 @@
1
- # This code is free software; you can redistribute it and/or modify it under
2
- # the terms of the new BSD License.
3
- #
4
- # Copyright (c) 2011, Sebastian Staudt
5
-
6
- require 'helper'
7
-
8
- describe RBzip2::IO do
9
-
10
- before do
11
- @txt_file = File.new File.join(File.dirname(__FILE__), 'fixtures/test.txt')
12
- bz2_file = File.new File.join(File.dirname(__FILE__), 'fixtures/test.bz2')
13
- @bz2_io = RBzip2::IO.new bz2_file
14
- end
15
-
16
- it 'allows decompressing data' do
17
- RBzip2::IO.should include(Decompressor)
18
- end
19
-
20
- it 'acts like a standard IO' do
21
- methods = RBzip2::IO.instance_methods.map { |m| m.to_sym }
22
- methods.should include(:read, :close)
23
- end
24
-
25
- it 'knows its size' do
26
- @bz2_io.size.should be(375)
27
- end
28
-
29
- it 'knows the size of the uncompressed data' do
30
- @bz2_io.uncompressed.should be(704)
31
- end
32
-
33
- it 'should be able to decompress compressed data' do
34
- @bz2_io.read.should eq(@txt_file.read)
35
- end
36
-
37
- end