bindata 2.4.10 → 2.5.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 +4 -4
- data/ChangeLog.rdoc +39 -0
- data/LICENSE +25 -0
- data/NEWS.rdoc +5 -0
- data/README.md +6 -9
- data/bindata.gemspec +9 -4
- data/examples/NBT.txt +1 -1
- data/examples/list.rb +1 -1
- data/lib/bindata/alignment.rb +15 -7
- data/lib/bindata/array.rb +54 -54
- data/lib/bindata/base.rb +14 -25
- data/lib/bindata/base_primitive.rb +24 -20
- data/lib/bindata/bits.rb +15 -15
- data/lib/bindata/buffer.rb +89 -11
- data/lib/bindata/choice.rb +9 -6
- data/lib/bindata/count_bytes_remaining.rb +1 -1
- data/lib/bindata/delayed_io.rb +18 -10
- data/lib/bindata/dsl.rb +37 -35
- data/lib/bindata/float.rb +3 -3
- data/lib/bindata/framework.rb +8 -10
- data/lib/bindata/int.rb +14 -16
- data/lib/bindata/io.rb +276 -253
- data/lib/bindata/name.rb +1 -1
- data/lib/bindata/params.rb +9 -7
- data/lib/bindata/primitive.rb +3 -3
- data/lib/bindata/registry.rb +18 -18
- data/lib/bindata/rest.rb +1 -1
- data/lib/bindata/sanitize.rb +9 -16
- data/lib/bindata/section.rb +97 -0
- data/lib/bindata/skip.rb +140 -51
- data/lib/bindata/string.rb +9 -9
- data/lib/bindata/stringz.rb +12 -10
- data/lib/bindata/struct.rb +92 -68
- data/lib/bindata/trace.rb +35 -42
- data/lib/bindata/transform/brotli.rb +35 -0
- data/lib/bindata/transform/lz4.rb +35 -0
- data/lib/bindata/transform/lzma.rb +35 -0
- data/lib/bindata/transform/xor.rb +19 -0
- data/lib/bindata/transform/xz.rb +35 -0
- data/lib/bindata/transform/zlib.rb +33 -0
- data/lib/bindata/transform/zstd.rb +35 -0
- data/lib/bindata/uint8_array.rb +2 -2
- data/lib/bindata/version.rb +1 -1
- data/lib/bindata/virtual.rb +4 -7
- data/lib/bindata/warnings.rb +1 -1
- data/lib/bindata.rb +1 -0
- data/test/alignment_test.rb +8 -8
- data/test/array_test.rb +98 -96
- data/test/base_primitive_test.rb +47 -47
- data/test/base_test.rb +24 -24
- data/test/bits_test.rb +15 -15
- data/test/buffer_test.rb +31 -22
- data/test/choice_test.rb +32 -32
- data/test/count_bytes_remaining_test.rb +8 -8
- data/test/delayed_io_test.rb +91 -30
- data/test/float_test.rb +8 -8
- data/test/int_test.rb +14 -14
- data/test/io_test.rb +110 -302
- data/test/lazy_test.rb +38 -38
- data/test/params_test.rb +19 -19
- data/test/primitive_test.rb +26 -26
- data/test/record_test.rb +99 -99
- data/test/registry_test.rb +43 -43
- data/test/rest_test.rb +5 -5
- data/test/section_test.rb +111 -0
- data/test/skip_test.rb +71 -26
- data/test/string_test.rb +60 -60
- data/test/stringz_test.rb +34 -26
- data/test/struct_test.rb +167 -92
- data/test/system_test.rb +159 -41
- data/test/test_helper.rb +24 -13
- data/test/uint8_array_test.rb +6 -6
- data/test/virtual_test.rb +7 -7
- data/test/warnings_test.rb +14 -2
- metadata +19 -22
- data/.gitignore +0 -2
- data/.travis.yml +0 -15
- data/BSDL +0 -22
- data/COPYING +0 -52
- data/INSTALL +0 -12
- data/lib/bindata/offset.rb +0 -94
- data/test/offset_test.rb +0 -100
data/test/float_test.rb
CHANGED
@@ -4,21 +4,21 @@ require File.expand_path(File.join(File.dirname(__FILE__), "test_helper"))
|
|
4
4
|
|
5
5
|
module FloatTest
|
6
6
|
def test_num_bytes
|
7
|
-
@obj.num_bytes.must_equal 4
|
7
|
+
_(@obj.num_bytes).must_equal 4
|
8
8
|
end
|
9
9
|
|
10
10
|
def test_writing_then_reading
|
11
|
-
@obj.value_read_from_written.must_be_close_to Math::PI, 0.000001
|
11
|
+
_(@obj.value_read_from_written).must_be_close_to Math::PI, 0.000001
|
12
12
|
end
|
13
13
|
end
|
14
14
|
|
15
15
|
module DoubleTest
|
16
16
|
def test_num_bytes
|
17
|
-
@obj.num_bytes.must_equal 8
|
17
|
+
_(@obj.num_bytes).must_equal 8
|
18
18
|
end
|
19
19
|
|
20
20
|
def test_writing_then_reading
|
21
|
-
@obj.value_read_from_written.must_be_close_to Math::PI, 0.0000000000000001
|
21
|
+
_(@obj.value_read_from_written).must_be_close_to Math::PI, 0.0000000000000001
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
@@ -30,7 +30,7 @@ describe "A FloatLe" do
|
|
30
30
|
end
|
31
31
|
|
32
32
|
it "#to_binary_s" do
|
33
|
-
@obj.to_binary_s.must_equal_binary [Math::PI].pack('e')
|
33
|
+
_(@obj.to_binary_s).must_equal_binary [Math::PI].pack('e')
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
@@ -42,7 +42,7 @@ describe "A FloatBe" do
|
|
42
42
|
end
|
43
43
|
|
44
44
|
it "#to_binary_s" do
|
45
|
-
@obj.to_binary_s.must_equal_binary [Math::PI].pack('g')
|
45
|
+
_(@obj.to_binary_s).must_equal_binary [Math::PI].pack('g')
|
46
46
|
end
|
47
47
|
end
|
48
48
|
|
@@ -54,7 +54,7 @@ describe "A DoubleLe" do
|
|
54
54
|
end
|
55
55
|
|
56
56
|
it "#to_binary_s" do
|
57
|
-
@obj.to_binary_s.must_equal_binary [Math::PI].pack('E')
|
57
|
+
_(@obj.to_binary_s).must_equal_binary [Math::PI].pack('E')
|
58
58
|
end
|
59
59
|
end
|
60
60
|
|
@@ -67,6 +67,6 @@ describe "A DoubleBe" do
|
|
67
67
|
end
|
68
68
|
|
69
69
|
it "#to_binary_s" do
|
70
|
-
@obj.to_binary_s.must_equal_binary [Math::PI].pack('G')
|
70
|
+
_(@obj.to_binary_s).must_equal_binary [Math::PI].pack('G')
|
71
71
|
end
|
72
72
|
end
|
data/test/int_test.rb
CHANGED
@@ -6,13 +6,13 @@ module AllIntegers
|
|
6
6
|
|
7
7
|
def test_have_correct_num_bytes
|
8
8
|
all_classes do |int_class|
|
9
|
-
int_class.new.num_bytes.must_equal @nbytes
|
9
|
+
_(int_class.new.num_bytes).must_equal @nbytes
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
13
13
|
def test_have_a_sensible_value_of_zero
|
14
14
|
all_classes do |int_class|
|
15
|
-
int_class.new.must_equal 0
|
15
|
+
_(int_class.new).must_equal 0
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
@@ -21,7 +21,7 @@ module AllIntegers
|
|
21
21
|
subject = int_class.new
|
22
22
|
subject.assign(min_value - 1)
|
23
23
|
|
24
|
-
subject.must_equal min_value
|
24
|
+
_(subject).must_equal min_value
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
@@ -30,7 +30,7 @@ module AllIntegers
|
|
30
30
|
subject = int_class.new
|
31
31
|
subject.assign(max_value + 1)
|
32
32
|
|
33
|
-
subject.must_equal max_value
|
33
|
+
_(subject).must_equal max_value
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
@@ -40,7 +40,7 @@ module AllIntegers
|
|
40
40
|
test_int = gen_test_int
|
41
41
|
subject.assign(test_int)
|
42
42
|
|
43
|
-
subject.must_equal test_int
|
43
|
+
_(subject).must_equal test_int
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
@@ -51,7 +51,7 @@ module AllIntegers
|
|
51
51
|
|
52
52
|
subject = int_class.new
|
53
53
|
subject.assign(src)
|
54
|
-
subject.must_equal src
|
54
|
+
_(subject).must_equal src
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
@@ -60,7 +60,7 @@ module AllIntegers
|
|
60
60
|
subject = int_class.new
|
61
61
|
subject.assign(gen_test_int)
|
62
62
|
|
63
|
-
subject.value_read_from_written.must_equal subject
|
63
|
+
_(subject.value_read_from_written).must_equal subject
|
64
64
|
end
|
65
65
|
end
|
66
66
|
|
@@ -70,7 +70,7 @@ module AllIntegers
|
|
70
70
|
subject = int_class.new
|
71
71
|
subject.assign(-gen_test_int)
|
72
72
|
|
73
|
-
subject.value_read_from_written.must_equal subject
|
73
|
+
_(subject.value_read_from_written).must_equal subject
|
74
74
|
end
|
75
75
|
end
|
76
76
|
end
|
@@ -82,7 +82,7 @@ module AllIntegers
|
|
82
82
|
subject = int_class.new
|
83
83
|
subject.assign(val)
|
84
84
|
|
85
|
-
subject.to_binary_s.must_equal_binary int_to_binary_str(val)
|
85
|
+
_(subject.to_binary_s).must_equal_binary int_to_binary_str(val)
|
86
86
|
end
|
87
87
|
end
|
88
88
|
|
@@ -94,7 +94,7 @@ module AllIntegers
|
|
94
94
|
subject = int_class.new
|
95
95
|
subject.assign(val)
|
96
96
|
|
97
|
-
subject.to_binary_s.must_equal_binary int_to_binary_str(val)
|
97
|
+
_(subject.to_binary_s).must_equal_binary int_to_binary_str(val)
|
98
98
|
end
|
99
99
|
end
|
100
100
|
end
|
@@ -195,12 +195,12 @@ end
|
|
195
195
|
|
196
196
|
describe "Custom defined integers" do
|
197
197
|
it "fail unless bits are a multiple of 8" do
|
198
|
-
|
198
|
+
_ { BinData::Uint7le }.must_raise NameError
|
199
199
|
|
200
|
-
|
200
|
+
_ { BinData::Uint7be }.must_raise NameError
|
201
201
|
|
202
|
-
|
202
|
+
_ { BinData::Int7le }.must_raise NameError
|
203
203
|
|
204
|
-
|
204
|
+
_ { BinData::Int7be }.must_raise NameError
|
205
205
|
end
|
206
206
|
end
|