redns 0.1.17 → 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.
@@ -26,7 +26,7 @@ class TestReDNSName < Test::Unit::TestCase
26
26
  assert !name.empty?
27
27
  end
28
28
 
29
- def test_defaults
29
+ def test_defaults_with_raw_buffer
30
30
  example_buffer = ReDNS::Buffer.new(
31
31
  [
32
32
  7, ?e, ?x, ?a, ?m, ?p, ?l, ?e,
@@ -12,8 +12,8 @@ class TestReDNSQuestion < Test::Unit::TestCase
12
12
 
13
13
  def test_example_query
14
14
  question = ReDNS::Question.new(
15
- :name => 'example.com',
16
- :qtype => :a
15
+ name: 'example.com',
16
+ qtype: :a
17
17
  )
18
18
 
19
19
  assert_equal :a, question.qtype
@@ -1,161 +1,167 @@
1
1
  require File.expand_path('helper', File.dirname(__FILE__))
2
2
 
3
3
  class TestReReDNSResolver < Test::Unit::TestCase
4
- def test_create
5
- res = ReDNS::Resolver.new
4
+ def test_in_resolv_conf
5
+ nameservers = ReDNS::Resolver.in_resolv_conf
6
6
 
7
- assert res
7
+ assert nameservers.length >= 1, "No nameservers defined in /etc/resolv.conf"
8
+ end
9
+
10
+ def test_create_defaults
11
+ res = ReDNS::Resolver.new
8
12
 
9
- assert !res.servers.empty?
10
- end
13
+ assert res
11
14
 
12
- def test_servers
13
- res = ReDNS::Resolver.new
15
+ assert !res.servers.empty?
16
+ end
14
17
 
15
- res.servers = [ "192.168.1.1" ]
18
+ def test_servers
19
+ res = ReDNS::Resolver.new
16
20
 
17
- assert_equal [ "192.168.1.1" ], res.servers
21
+ res.servers = [ "192.168.1.1" ]
22
+
23
+ assert_equal [ "192.168.1.1" ], res.servers
18
24
  end
19
25
 
20
26
  def test_simple_query
21
- res = ReDNS::Resolver.new
27
+ res = ReDNS::Resolver.new
22
28
 
23
29
  r = res.simple_query(:a, 'example.com')
24
30
 
25
- assert_equal 1, r.size
31
+ assert_equal 1, r.size
26
32
 
27
33
  assert_equal :a, r[0].rtype
28
- assert_equal '192.0.43.10', r[0].rdata.to_s
34
+ assert_equal '93.184.216.34', r[0].rdata.to_s
29
35
  end
30
36
 
31
37
  def test_simple_reverse_query
32
- res = ReDNS::Resolver.new
38
+ res = ReDNS::Resolver.new
33
39
 
34
40
  r = res.simple_query(:ptr, '10.32.0.192.in-addr.arpa')
35
41
 
36
- assert_equal 1, r.size
42
+ assert_equal 1, r.size
37
43
 
38
44
  assert_equal :ptr, r[0].rtype
39
- assert_equal 'www.example.com.', r[0].rdata.to_s
45
+ assert_equal 'ccnso.icann.org.', r[0].rdata.to_s
40
46
  end
41
47
 
42
48
  def test_simple_txt_query
43
- res = ReDNS::Resolver.new
49
+ res = ReDNS::Resolver.new
44
50
 
45
51
  r = res.simple_query(:txt, 'gmail.com')
46
52
 
47
- assert_equal 1, r.size
53
+ assert_equal 1, r.size
48
54
 
49
55
  assert_equal :txt, r[0].rtype
50
- assert_equal 'v=spf1 redirect=_spf.google.com', r[0].rdata.to_s
56
+ assert_equal 'v=spf1 redirect=_spf.google.com', r[0].rdata.to_s
57
+ end
58
+
59
+ def test_query
60
+ res = ReDNS::Resolver.new
61
+
62
+ r = res.query do |q|
63
+ q.qtype = :a
64
+ q.name = "example.com"
65
+ end
66
+
67
+ assert r, "ReDNS::Resolver#query did not produce a reply"
68
+
69
+ assert_equal 1, r.questions.size
70
+ assert_equal 1, r.answers.size
71
+
72
+ assert_equal '93.184.216.34', r.answers[0].rdata.to_s
51
73
  end
52
74
 
53
- def test_query
54
- res = ReDNS::Resolver.new
55
-
56
- r = res.query do |q|
57
- q.qtype = :a
58
- q.name = "example.com"
59
- end
60
-
61
- assert r, "ReDNS::Resolver#query did not produce a reply"
62
-
63
- assert_equal 1, r.questions.size
64
- assert_equal 1, r.answers.size
65
-
66
- assert_equal '192.0.43.10', r.answers[0].rdata.to_s
67
- end
68
-
69
- def test_ns_query
70
- res = ReDNS::Resolver.new
71
-
72
- assert !res.servers.empty?
73
-
74
- r = res.query do |q|
75
- q.qtype = :ns
76
- q.name = "example.com"
77
- end
78
-
79
- assert r, "ReDNS::Resolver#query did not produce a reply"
80
-
81
- assert_equal 1, r.questions.size
82
- assert_equal 2, r.answers.size
83
-
84
- assert_equal ReDNS::Name, r.answers[0].rdata.class
85
- assert_equal ReDNS::Name, r.answers[1].rdata.class
86
- end
87
-
88
- def test_bulk_query
89
- addrs = %w[
90
- 192.0.32.10
91
- 192.0.32.12
92
- 192.0.32.13
93
- 192.0.32.14
94
- 192.0.32.15
95
- 192.0.32.16
96
- ].collect do |i|
97
- ReDNS::Support.addr_to_arpa(i)
98
- end
99
-
100
- res = ReDNS::Resolver.new
101
-
102
- rlist = res.bulk_query(:ptr, addrs)
103
-
104
- assert rlist
105
-
106
- assert_equal 6, rlist.length
107
-
108
- assert_equal addrs.sort, rlist.keys.sort
109
-
110
- assert rlist[addrs[0]]
111
-
112
- expected = %w[
113
- www.example.com.
114
- redirects.iana.org.
115
- tools.iana.org.
116
- nomcom.icann.org.
117
- confirm.icann.org.
118
- dnscert.com.
119
- ]
75
+ def test_ns_query
76
+ res = ReDNS::Resolver.new
77
+
78
+ assert !res.servers.empty?
79
+
80
+ r = res.query do |q|
81
+ q.qtype = :ns
82
+ q.name = "example.com"
83
+ end
84
+
85
+ assert r, "ReDNS::Resolver#query did not produce a reply"
86
+
87
+ assert_equal 1, r.questions.size
88
+ assert_equal 2, r.answers.size
89
+
90
+ assert_equal ReDNS::Name, r.answers[0].rdata.class
91
+ assert_equal ReDNS::Name, r.answers[1].rdata.class
92
+ end
93
+
94
+ def test_bulk_query
95
+ addrs = %w[
96
+ 192.0.32.10
97
+ 192.0.32.12
98
+ 192.0.32.13
99
+ 192.0.32.14
100
+ 192.0.32.15
101
+ 192.0.32.16
102
+ ].collect do |i|
103
+ ReDNS::Support.addr_to_arpa(i)
104
+ end
105
+
106
+ res = ReDNS::Resolver.new
107
+
108
+ rlist = res.bulk_query(:ptr, addrs)
109
+
110
+ assert rlist
111
+
112
+ assert_equal 6, rlist.length
113
+
114
+ assert_equal addrs.sort, rlist.keys.sort
115
+
116
+ assert rlist[addrs[0]]
117
+
118
+ expected = %w[
119
+ ccnso.icann.org.
120
+ redirects.iana.org.
121
+ tools.iana.org.
122
+ nomcom.icann.org.
123
+ reports.internic.net.
124
+ dnscert.com.
125
+ ]
120
126
 
121
127
  answers = addrs.collect do |a|
122
- rlist[a] and rlist[a].answers[0] and rlist[a].answers[0].rdata.to_s
128
+ rlist[a] and rlist[a].answers[0] and rlist[a].answers[0].rdata.to_s
123
129
  end
124
130
 
125
- assert_equal expected, answers
126
- end
127
-
128
- def test_reverse_addresses
129
- addrs = %w[
130
- 192.0.32.10
131
- 192.0.32.12
132
- 192.0.32.13
133
- 192.0.32.14
134
- 192.0.32.15
135
- 192.0.32.16
136
- ]
137
-
138
- res = ReDNS::Resolver.new
139
-
140
- rlist = res.reverse_addresses(addrs)
141
-
142
- assert rlist
143
-
144
- assert_equal addrs.length, rlist.length
145
-
146
- expected = %w[
147
- www.example.com.
148
- redirects.iana.org.
149
- tools.iana.org.
150
- nomcom.icann.org.
151
- confirm.icann.org.
152
- dnscert.com.
153
- ]
154
-
131
+ assert_equal expected, answers
132
+ end
133
+
134
+ def test_reverse_addresses
135
+ addrs = %w[
136
+ 192.0.32.10
137
+ 192.0.32.12
138
+ 192.0.32.13
139
+ 192.0.32.14
140
+ 192.0.32.15
141
+ 192.0.32.16
142
+ ]
143
+
144
+ res = ReDNS::Resolver.new
145
+
146
+ rlist = res.reverse_addresses(addrs)
147
+
148
+ assert rlist
149
+
150
+ assert_equal addrs.length, rlist.length
151
+
152
+ expected = %w[
153
+ ccnso.icann.org.
154
+ redirects.iana.org.
155
+ tools.iana.org.
156
+ nomcom.icann.org.
157
+ reports.internic.net.
158
+ dnscert.com.
159
+ ]
160
+
155
161
  answers = addrs.collect do |a|
156
- rlist[a]
162
+ rlist[a]
157
163
  end
158
164
 
159
- assert_equal expected, answers
160
- end
165
+ assert_equal expected, answers
166
+ end
161
167
  end
@@ -9,8 +9,8 @@ class TestReDNSResource < Test::Unit::TestCase
9
9
 
10
10
  def test_serialize_cycle_mx
11
11
  mx = ReDNS::Record::MX.new(
12
- :preference => 10,
13
- :name => 'mx.example.com'
12
+ preference: 10,
13
+ name: 'mx.example.com'
14
14
  )
15
15
 
16
16
  assert_equal 10, mx.preference
@@ -30,13 +30,13 @@ class TestReDNSResource < Test::Unit::TestCase
30
30
 
31
31
  def test_serialize_cycle_record_mx
32
32
  mx = ReDNS::Resource.new(
33
- :name => 'example.com',
34
- :rdata => ReDNS::Record::MX.new(
35
- :preference => 10,
36
- :name => 'mx.example.com'
33
+ name: 'example.com',
34
+ rdata: ReDNS::Record::MX.new(
35
+ preference: 10,
36
+ name: 'mx.example.com'
37
37
  ),
38
- :ttl => 123456,
39
- :rtype => :mx
38
+ ttl: 123456,
39
+ rtype: :mx
40
40
  )
41
41
 
42
42
  assert_equal 'example.com.', mx.name.to_s
@@ -61,13 +61,13 @@ class TestReDNSResource < Test::Unit::TestCase
61
61
 
62
62
  def test_serialize_cycle_soa
63
63
  soa = ReDNS::Record::SOA.new(
64
- :mname => 'example.com',
65
- :rname => 'domainadmin.example.com',
66
- :serial => 1001,
67
- :refresh => 1002,
68
- :retry => 1003,
69
- :expire => 1004,
70
- :minimum => 1005
64
+ mname: 'example.com',
65
+ rname: 'domainadmin.example.com',
66
+ serial: 1001,
67
+ refresh: 1002,
68
+ retry: 1003,
69
+ expire: 1004,
70
+ minimum: 1005
71
71
  )
72
72
 
73
73
  assert_equal 'example.com.', soa.mname.to_s
@@ -91,18 +91,18 @@ class TestReDNSResource < Test::Unit::TestCase
91
91
 
92
92
  def test_serialize_cycle_record_soa
93
93
  soa = ReDNS::Resource.new(
94
- :name => 'example.com',
95
- :rdata => ReDNS::Record::SOA.new(
96
- :mname => 'example.com',
97
- :rname => 'domainadmin.example.com',
98
- :serial => 1001,
99
- :refresh => 1002,
100
- :retry => 1003,
101
- :expire => 1004,
102
- :minimum => 1005
94
+ name: 'example.com',
95
+ rdata: ReDNS::Record::SOA.new(
96
+ mname: 'example.com',
97
+ rname: 'domainadmin.example.com',
98
+ serial: 1001,
99
+ refresh: 1002,
100
+ retry: 1003,
101
+ expire: 1004,
102
+ minimum: 1005
103
103
  ),
104
- :ttl => 123456,
105
- :rtype => :soa
104
+ ttl: 123456,
105
+ rtype: :soa
106
106
  )
107
107
 
108
108
  assert_equal 'example.com.', soa.name.to_s
@@ -136,7 +136,7 @@ class TestReDNSResource < Test::Unit::TestCase
136
136
 
137
137
  def test_serialize_cycle_null
138
138
  null = ReDNS::Record::Null.new(
139
- :contents => 'random data goes here'.freeze
139
+ contents: 'random data goes here'.freeze
140
140
  )
141
141
 
142
142
  assert_equal 'random data goes here', null.contents
@@ -154,12 +154,12 @@ class TestReDNSResource < Test::Unit::TestCase
154
154
 
155
155
  def test_serialize_cycle_record_null
156
156
  null = ReDNS::Resource.new(
157
- :name => 'example.com',
158
- :rdata => ReDNS::Record::Null.new(
159
- :contents => 'random data goes here'.freeze
157
+ name: 'example.com',
158
+ rdata: ReDNS::Record::Null.new(
159
+ contents: 'random data goes here'.freeze
160
160
  ),
161
- :ttl => 123456,
162
- :rtype => :null
161
+ ttl: 123456,
162
+ rtype: :null
163
163
  )
164
164
 
165
165
  assert_equal 'example.com.', null.name.to_s
metadata CHANGED
@@ -1,16 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redns
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.17
5
- prerelease:
4
+ version: 0.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - tadman
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-03-12 00:00:00.000000000 Z
13
- dependencies: []
11
+ date: 2017-09-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: eventmachine
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
14
41
  description: ReDNS is a pure Ruby DNS library with drivers for reactor-model engines
15
42
  such as EventMachine
16
43
  email: github@tadman.ca
@@ -18,10 +45,14 @@ executables:
18
45
  - redig
19
46
  extensions: []
20
47
  extra_rdoc_files:
21
- - README.rdoc
48
+ - LICENSE.txt
49
+ - README.md
22
50
  files:
23
- - .document
24
- - README.rdoc
51
+ - ".document"
52
+ - ".travis.yml"
53
+ - Gemfile
54
+ - LICENSE.txt
55
+ - README.md
25
56
  - Rakefile
26
57
  - VERSION
27
58
  - bin/redig
@@ -57,26 +88,25 @@ files:
57
88
  - test/test_redns_support.rb
58
89
  homepage: http://github.com/tadman/redns
59
90
  licenses: []
91
+ metadata: {}
60
92
  post_install_message:
61
93
  rdoc_options: []
62
94
  require_paths:
63
95
  - lib
64
96
  required_ruby_version: !ruby/object:Gem::Requirement
65
- none: false
66
97
  requirements:
67
- - - ! '>='
98
+ - - ">="
68
99
  - !ruby/object:Gem::Version
69
100
  version: '0'
70
101
  required_rubygems_version: !ruby/object:Gem::Requirement
71
- none: false
72
102
  requirements:
73
- - - ! '>='
103
+ - - ">="
74
104
  - !ruby/object:Gem::Version
75
105
  version: '0'
76
106
  requirements: []
77
107
  rubyforge_project:
78
- rubygems_version: 1.8.11
108
+ rubygems_version: 2.6.11
79
109
  signing_key:
80
- specification_version: 3
110
+ specification_version: 4
81
111
  summary: Ruby Reactor-Ready DNS Library
82
112
  test_files: []