redns 0.1.17 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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: []