redns 0.1.3 → 0.1.4

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
data/lib/redns/buffer.rb CHANGED
@@ -45,6 +45,9 @@ class ReDNS::Buffer < String
45
45
  data = to_s.unpack(format)
46
46
  advance(data.pack(format).length)
47
47
  data
48
+
49
+ rescue TypeError
50
+ [ ]
48
51
  end
49
52
 
50
53
  def pack(contents, format)
data/redns.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{redns}
8
- s.version = "0.1.3"
8
+ s.version = "0.1.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["tadman"]
12
- s.date = %q{2010-08-16}
12
+ s.date = %q{2010-08-17}
13
13
  s.description = %q{ReDNS is a pure Ruby DNS library with drivers for reactor-model engines such as EventMachine}
14
14
  s.email = %q{github@tadman.ca}
15
15
  s.extra_rdoc_files = [
@@ -136,6 +136,21 @@ class TestReDNSBuffer < Test::Unit::TestCase
136
136
  assert_equal [ (127 << 24 | 255) ], buffer.unpack('N')
137
137
  end
138
138
 
139
+ def test_unpack_exhausted_buffer
140
+ buffer = ReDNS::Buffer.new([ 127, 0, 0 ].pack('CCC'))
141
+
142
+ assert_equal [ ], buffer.unpack('CCCC')
143
+
144
+ assert_equal [ 127, 0, 0 ], buffer.unpack('CCC')
145
+
146
+ assert_equal 3, buffer.offset
147
+ assert_equal 0, buffer.length
148
+
149
+ buffer.rewind
150
+
151
+ assert_equal [ ], buffer.unpack('N')
152
+ end
153
+
139
154
  def test_pack
140
155
  buffer = ReDNS::Buffer.new
141
156
 
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 3
9
- version: 0.1.3
8
+ - 4
9
+ version: 0.1.4
10
10
  platform: ruby
11
11
  authors:
12
12
  - tadman
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-08-16 00:00:00 -04:00
17
+ date: 2010-08-17 00:00:00 -04:00
18
18
  default_executable:
19
19
  dependencies: []
20
20