net-dns 0.6.1 → 0.7.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.
- data/.gitignore +8 -6
- data/.travis.yml +14 -0
- data/CHANGELOG.md +79 -0
- data/Gemfile +4 -0
- data/Rakefile +56 -66
- data/demo/check_soa.rb +1 -1
- data/demo/threads.rb +1 -1
- data/lib/net/dns.rb +24 -22
- data/lib/net/dns/header.rb +77 -103
- data/lib/net/dns/{names/names.rb → names.rb} +19 -20
- data/lib/net/dns/packet.rb +231 -256
- data/lib/net/dns/question.rb +11 -40
- data/lib/net/dns/resolver.rb +248 -250
- data/lib/net/dns/resolver/socks.rb +6 -6
- data/lib/net/dns/resolver/timeouts.rb +1 -1
- data/lib/net/dns/rr.rb +112 -117
- data/lib/net/dns/rr/a.rb +98 -89
- data/lib/net/dns/rr/aaaa.rb +84 -68
- data/lib/net/dns/rr/classes.rb +91 -106
- data/lib/net/dns/rr/cname.rb +64 -45
- data/lib/net/dns/rr/hinfo.rb +90 -50
- data/lib/net/dns/rr/mr.rb +61 -44
- data/lib/net/dns/rr/mx.rb +73 -48
- data/lib/net/dns/rr/ns.rb +60 -46
- data/lib/net/dns/rr/null.rb +11 -12
- data/lib/net/dns/rr/ptr.rb +47 -34
- data/lib/net/dns/rr/soa.rb +5 -6
- data/lib/net/dns/rr/srv.rb +1 -4
- data/lib/net/dns/rr/txt.rb +14 -14
- data/lib/net/dns/rr/types.rb +13 -13
- data/lib/net/dns/version.rb +8 -14
- data/net-dns.gemspec +35 -0
- data/setup.rb +3 -2
- data/test/header_test.rb +18 -18
- data/test/names_test.rb +21 -0
- data/test/packet_test.rb +38 -31
- data/test/question_test.rb +23 -24
- data/test/resolver/timeouts_test.rb +13 -13
- data/test/resolver_test.rb +28 -20
- data/test/rr/a_test.rb +70 -23
- data/test/rr/aaaa_test.rb +109 -0
- data/test/rr/classes_test.rb +61 -49
- data/test/rr/cname_test.rb +97 -0
- data/test/rr/hinfo_test.rb +117 -0
- data/test/rr/mr_test.rb +105 -0
- data/test/rr/mx_test.rb +112 -0
- data/test/rr/ns_test.rb +34 -12
- data/test/rr/types_test.rb +4 -4
- data/test/rr_test.rb +1 -1
- metadata +77 -52
- data/AUTHORS.rdoc +0 -7
- data/CHANGELOG.rdoc +0 -46
- data/VERSION.yml +0 -5
@@ -0,0 +1,109 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'net/dns/rr'
|
3
|
+
|
4
|
+
class RRAAAATest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@rr_name = "www.nic.it."
|
8
|
+
@rr_type = "AAAA"
|
9
|
+
@rr_cls = "IN"
|
10
|
+
@rr_ttl = 60
|
11
|
+
@rr_value = "2a00:d40:1:1::239"
|
12
|
+
@rr_address = IPAddr.new(@rr_value)
|
13
|
+
|
14
|
+
@rr_output = "www.nic.it. 60 IN AAAA 2a00:d40:1:1::239"
|
15
|
+
|
16
|
+
@rr = Net::DNS::RR::AAAA.new(:name => @rr_name, :address => @rr_address, :ttl => @rr_ttl)
|
17
|
+
end
|
18
|
+
|
19
|
+
|
20
|
+
def test_initialize_from_hash
|
21
|
+
@record = Net::DNS::RR::AAAA.new(:name => @rr_name, :address => @rr_value, :ttl => @rr_ttl)
|
22
|
+
assert_equal @rr_output, @record.to_s
|
23
|
+
assert_equal @rr_name, @record.name
|
24
|
+
assert_equal @rr_type, @record.type
|
25
|
+
assert_equal @rr_cls, @record.cls
|
26
|
+
assert_equal @rr_ttl, @record.ttl
|
27
|
+
assert_equal @rr_address, @record.address
|
28
|
+
assert_equal @rr_value, @record.value
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_initialize_from_string
|
32
|
+
@record = Net::DNS::RR::AAAA.new("#{@rr_name} #{@rr_ttl} #{@rr_cls} #{@rr_type} #{@rr_value}")
|
33
|
+
assert_equal @rr_output, @record.to_s
|
34
|
+
assert_equal @rr_name, @record.name
|
35
|
+
assert_equal @rr_type, @record.type
|
36
|
+
assert_equal @rr_cls, @record.cls
|
37
|
+
assert_equal @rr_ttl, @record.ttl
|
38
|
+
assert_equal @rr_address, @record.address
|
39
|
+
assert_equal @rr_value, @record.value
|
40
|
+
end
|
41
|
+
|
42
|
+
def test_parse
|
43
|
+
data = "\003www\003nic\002it\000\000\034\000\001\000\000\000<\000\020*\000\r@\000\001\000\001\000\000\000\000\000\000\0029"
|
44
|
+
@record = Net::DNS::RR.parse(data)
|
45
|
+
assert_equal @rr_output, @record.to_s
|
46
|
+
assert_equal @rr_name, @record.name
|
47
|
+
assert_equal @rr_type, @record.type
|
48
|
+
assert_equal @rr_cls, @record.cls
|
49
|
+
assert_equal @rr_ttl, @record.ttl
|
50
|
+
assert_equal @rr_address, @record.address
|
51
|
+
assert_equal @rr_value, @record.value
|
52
|
+
end
|
53
|
+
|
54
|
+
|
55
|
+
InvalidArguments = [
|
56
|
+
{ :name => "google.com", :address => "2a00" },
|
57
|
+
{ :name => "google.com" },
|
58
|
+
Object.new,
|
59
|
+
Array.new(7),
|
60
|
+
"10800 IN AAAA",
|
61
|
+
# FIXME: "google.com. 10800 IN B",
|
62
|
+
# FIXME: "google.com. 10800 IM AAAA",
|
63
|
+
]
|
64
|
+
|
65
|
+
InvalidArguments.each_with_index do |arguments, index|
|
66
|
+
define_method "test_initialize_should_raise_with_invalid_arguments_#{index}" do
|
67
|
+
assert_raises(ArgumentError) { Net::DNS::RR::AAAA.new(arguments) }
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
def test_address_getter
|
73
|
+
assert_equal @rr_address, @rr.address
|
74
|
+
end
|
75
|
+
|
76
|
+
def test_address_setter
|
77
|
+
assert_raises(ArgumentError) { @rr.address = nil }
|
78
|
+
|
79
|
+
expected = IPAddr.new("2a00:d40:1:1::239")
|
80
|
+
assert_equal expected, @rr.address = "2a00:d40:1:1::239"
|
81
|
+
assert_equal expected, @rr.address
|
82
|
+
|
83
|
+
expected = IPAddr.new("2a00:d40:1:1::240")
|
84
|
+
assert_equal expected, @rr.address = IPAddr.new("2a00:d40:1:1::240")
|
85
|
+
assert_equal expected, @rr.address
|
86
|
+
end
|
87
|
+
|
88
|
+
|
89
|
+
def test_value
|
90
|
+
assert_equal @rr_value, @rr.value
|
91
|
+
end
|
92
|
+
|
93
|
+
|
94
|
+
def test_inspect
|
95
|
+
assert_equal "www.nic.it. 60 IN AAAA 2a00:d40:1:1::239",
|
96
|
+
@rr.inspect
|
97
|
+
end
|
98
|
+
|
99
|
+
def test_to_s
|
100
|
+
assert_equal "www.nic.it. 60 IN AAAA 2a00:d40:1:1::239",
|
101
|
+
@rr.to_s
|
102
|
+
end
|
103
|
+
|
104
|
+
def test_to_a
|
105
|
+
assert_equal ["www.nic.it.", 60, "IN", "AAAA", "2a00:d40:1:1::239"],
|
106
|
+
@rr.to_a
|
107
|
+
end
|
108
|
+
|
109
|
+
end
|
data/test/rr/classes_test.rb
CHANGED
@@ -2,72 +2,84 @@ require 'test_helper'
|
|
2
2
|
require 'net/dns/rr'
|
3
3
|
|
4
4
|
class RRClassesTest < Test::Unit::TestCase
|
5
|
-
|
5
|
+
|
6
6
|
def setup
|
7
7
|
@classes = {
|
8
|
-
'IN' => 1, # RFC 1035
|
9
|
-
'CH' => 3, # RFC 1035
|
10
|
-
'HS' => 4, # RFC 1035
|
11
|
-
'NONE' => 254, # RFC 2136
|
12
|
-
'ANY' => 255, # RFC 1035
|
13
8
|
}
|
14
9
|
@regexp_string = "ANY|CH|HS|IN|NONE"
|
15
10
|
end
|
16
|
-
|
17
|
-
|
11
|
+
|
12
|
+
|
13
|
+
StrAndNum = [
|
14
|
+
['IN' , 1],
|
15
|
+
['CH' , 3],
|
16
|
+
['HS' , 4],
|
17
|
+
['NONE' , 254],
|
18
|
+
['ANY' , 255],
|
19
|
+
]
|
20
|
+
|
21
|
+
StrAndNum.each do |str, num|
|
22
|
+
define_method "test_initialize_from_str_#{str}" do
|
23
|
+
instance = Net::DNS::RR::Classes.new(str)
|
24
|
+
assert_equal str, instance.to_s
|
25
|
+
assert_equal num, instance.to_i
|
26
|
+
end
|
27
|
+
define_method "test_initialize_from_num_#{num}" do
|
28
|
+
instance = Net::DNS::RR::Classes.new(num)
|
29
|
+
assert_equal str, instance.to_s
|
30
|
+
assert_equal num, instance.to_i
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def test_initialize_should_raise_with_invalid_class
|
35
|
+
assert_raises(ArgumentError) { Net::DNS::RR::Classes.new(Hash.new) }
|
36
|
+
end
|
37
|
+
|
38
|
+
|
39
|
+
def test_inspect
|
40
|
+
assert_equal 1, Net::DNS::RR::Classes.new(1).inspect
|
41
|
+
assert_equal 1, Net::DNS::RR::Classes.new("IN").inspect
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_to_s
|
45
|
+
assert_equal "IN", Net::DNS::RR::Classes.new(1).to_s
|
46
|
+
assert_equal "IN", Net::DNS::RR::Classes.new("IN").to_s
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_to_i
|
50
|
+
assert_equal 1, Net::DNS::RR::Classes.new(1).to_i
|
51
|
+
assert_equal 1, Net::DNS::RR::Classes.new("IN").to_i
|
52
|
+
end
|
53
|
+
|
54
|
+
|
55
|
+
def test_self_default
|
18
56
|
# Default type should be ANY => 255
|
19
57
|
instance = Net::DNS::RR::Classes.new(nil)
|
20
|
-
assert_equal
|
21
|
-
assert_equal
|
22
|
-
|
58
|
+
assert_equal 1, instance.to_i
|
59
|
+
assert_equal "IN", instance.to_s
|
60
|
+
|
23
61
|
# Let's change default behaviour
|
24
62
|
Net::DNS::RR::Classes.default = "CH"
|
25
63
|
instance = Net::DNS::RR::Classes.new(nil)
|
26
|
-
assert_equal
|
27
|
-
assert_equal
|
64
|
+
assert_equal 3, instance.to_i
|
65
|
+
assert_equal "CH", instance.to_s
|
28
66
|
|
29
67
|
Net::DNS::RR::Classes.default = "IN"
|
30
68
|
instance = Net::DNS::RR::Classes.new(nil)
|
31
|
-
assert_equal
|
32
|
-
assert_equal
|
69
|
+
assert_equal 1, instance.to_i
|
70
|
+
assert_equal "IN", instance.to_s
|
33
71
|
end
|
34
72
|
|
35
|
-
def
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
assert_equal(key, instance_from_num.to_s)
|
42
|
-
assert_equal(num.to_s, instance_from_num.to_str)
|
43
|
-
end
|
44
|
-
assert_raise(ClassArgumentError) do
|
45
|
-
Net::DNS::RR::Classes.new(Hash.new)
|
46
|
-
end
|
73
|
+
def test_self_valid?
|
74
|
+
assert Net::DNS::RR::Classes.valid?("IN")
|
75
|
+
assert Net::DNS::RR::Classes.valid?(1)
|
76
|
+
assert !Net::DNS::RR::Classes.valid?("Q")
|
77
|
+
assert !Net::DNS::RR::Classes.valid?(256)
|
78
|
+
assert_raises(ArgumentError) { Net::DNS::RR::Classes.valid?(Hash.new) }
|
47
79
|
end
|
48
80
|
|
49
|
-
def
|
50
|
-
assert_equal
|
51
|
-
end
|
52
|
-
|
53
|
-
def test_valid
|
54
|
-
assert_equal(true, Net::DNS::RR::Classes.valid?("IN"))
|
55
|
-
assert_equal(true, Net::DNS::RR::Classes.valid?(1))
|
56
|
-
assert_equal(false, Net::DNS::RR::Classes.valid?("Q"))
|
57
|
-
assert_equal(false, Net::DNS::RR::Classes.valid?(256))
|
58
|
-
assert_raise(ClassArgumentError) do
|
59
|
-
Net::DNS::RR::Classes.valid? Hash.new
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
def test_to_str
|
64
|
-
assert_equal("IN", Net::DNS::RR::Classes.to_str(1))
|
65
|
-
assert_raise(ClassArgumentError) do
|
66
|
-
Net::DNS::RR::Classes.to_str(256)
|
67
|
-
end
|
68
|
-
assert_raise(ClassArgumentError) do
|
69
|
-
Net::DNS::RR::Classes.to_str("string")
|
70
|
-
end
|
81
|
+
def test_self_regexp
|
82
|
+
assert_equal @regexp_string, Net::DNS::RR::Classes.regexp
|
71
83
|
end
|
72
84
|
|
73
85
|
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'net/dns/rr'
|
3
|
+
|
4
|
+
class RRCNAMETest < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@rr_name = "www.google.com."
|
8
|
+
@rr_type = "CNAME"
|
9
|
+
@rr_cls = "IN"
|
10
|
+
@rr_ttl = 550317
|
11
|
+
@rr_value = "www.l.google.com."
|
12
|
+
@rr_cname = @rr_value
|
13
|
+
|
14
|
+
@rr_output = "www.google.com. 550317 IN CNAME www.l.google.com."
|
15
|
+
|
16
|
+
@rr = Net::DNS::RR::CNAME.new(:name => @rr_name, :cname => @rr_cname, :ttl => @rr_ttl)
|
17
|
+
end
|
18
|
+
|
19
|
+
|
20
|
+
def test_initialize_from_hash
|
21
|
+
@record = Net::DNS::RR::CNAME.new(:name => @rr_name, :cname => @rr_value, :ttl => @rr_ttl)
|
22
|
+
assert_equal @rr_output, @record.to_s
|
23
|
+
assert_equal @rr_name, @record.name
|
24
|
+
assert_equal @rr_type, @record.type
|
25
|
+
assert_equal @rr_cls, @record.cls
|
26
|
+
assert_equal @rr_ttl, @record.ttl
|
27
|
+
assert_equal @rr_cname, @record.cname
|
28
|
+
assert_equal @rr_value, @record.value
|
29
|
+
end
|
30
|
+
|
31
|
+
def test_initialize_from_string
|
32
|
+
@record = Net::DNS::RR::CNAME.new("#{@rr_name} #{@rr_ttl} #{@rr_cls} #{@rr_type} #{@rr_value}")
|
33
|
+
assert_equal @rr_output, @record.to_s
|
34
|
+
assert_equal @rr_name, @record.name
|
35
|
+
assert_equal @rr_type, @record.type
|
36
|
+
assert_equal @rr_cls, @record.cls
|
37
|
+
assert_equal @rr_ttl, @record.ttl
|
38
|
+
assert_equal @rr_cname, @record.cname
|
39
|
+
assert_equal @rr_value, @record.value
|
40
|
+
end
|
41
|
+
|
42
|
+
def test_parse
|
43
|
+
data = "\003www\006google\003com\000\000\005\000\001\000\be\255\000\022\003www\001l\006google\003com\000"
|
44
|
+
@record = Net::DNS::RR.parse(data)
|
45
|
+
assert_equal @rr_output, @record.to_s
|
46
|
+
assert_equal @rr_name, @record.name
|
47
|
+
assert_equal @rr_type, @record.type
|
48
|
+
assert_equal @rr_cls, @record.cls
|
49
|
+
assert_equal @rr_ttl, @record.ttl
|
50
|
+
assert_equal @rr_cname, @record.cname
|
51
|
+
assert_equal @rr_value, @record.value
|
52
|
+
end
|
53
|
+
|
54
|
+
|
55
|
+
InvalidArguments = [
|
56
|
+
# FIXME: { :name => "google.com", :cname => "foo___bar" },
|
57
|
+
# FIXME: { :name => "google.com", :cname => "foo$bar" },
|
58
|
+
{ :name => "google.com" },
|
59
|
+
Object.new,
|
60
|
+
Array.new(7),
|
61
|
+
"10800 IN CNAME",
|
62
|
+
"google.com. 10800 IN CNAME",
|
63
|
+
]
|
64
|
+
|
65
|
+
InvalidArguments.each_with_index do |arguments, index|
|
66
|
+
define_method "test_initialize_should_raise_with_invalid_arguments_#{index}" do
|
67
|
+
assert_raises(ArgumentError) { p Net::DNS::RR::CNAME.new(arguments) }
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
|
72
|
+
def test_cname_getter
|
73
|
+
assert_equal @rr_cname, @rr.cname
|
74
|
+
end
|
75
|
+
|
76
|
+
|
77
|
+
def test_value
|
78
|
+
assert_equal @rr_value, @rr.value
|
79
|
+
end
|
80
|
+
|
81
|
+
|
82
|
+
def test_inspect
|
83
|
+
assert_equal "www.google.com. 550317 IN CNAME www.l.google.com.",
|
84
|
+
@rr.inspect
|
85
|
+
end
|
86
|
+
|
87
|
+
def test_to_s
|
88
|
+
assert_equal "www.google.com. 550317 IN CNAME www.l.google.com.",
|
89
|
+
@rr.to_s
|
90
|
+
end
|
91
|
+
|
92
|
+
def test_to_a
|
93
|
+
assert_equal ["www.google.com.", 550317, "IN", "CNAME", "www.l.google.com."],
|
94
|
+
@rr.to_a
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
@@ -0,0 +1,117 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'net/dns/rr'
|
3
|
+
require 'net/dns/rr/hinfo'
|
4
|
+
|
5
|
+
class RRHINFOTest < Test::Unit::TestCase
|
6
|
+
|
7
|
+
def setup
|
8
|
+
@rr_name = ""
|
9
|
+
@rr_type = "HINFO"
|
10
|
+
@rr_cls = "IN"
|
11
|
+
@rr_ttl = nil
|
12
|
+
@rr_value = %Q{"PC-Intel-700mhz" "Redhat Linux 7.1"}
|
13
|
+
@rr_output = %Q{ IN HINFO "PC-Intel-700mhz" "Redhat Linux 7.1"}
|
14
|
+
|
15
|
+
@rr_cpu = "PC-Intel-700mhz"
|
16
|
+
@rr_os = "Redhat Linux 7.1"
|
17
|
+
|
18
|
+
@rr = Net::DNS::RR::HINFO.new(:name => @rr_name, :cpu => @rr_cpu, :os => @rr_os)
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
def test_initialize_from_hash
|
23
|
+
@record = Net::DNS::RR::HINFO.new(:name => @rr_name, :cpu => @rr_cpu, :os => @rr_os)
|
24
|
+
assert_equal @rr_output, @record.to_s
|
25
|
+
assert_equal @rr_name, @record.name
|
26
|
+
assert_equal @rr_type, @record.type
|
27
|
+
assert_equal @rr_cls, @record.cls
|
28
|
+
assert_equal 10800, @record.ttl
|
29
|
+
assert_equal @rr_value, @record.value
|
30
|
+
|
31
|
+
assert_equal @rr_cpu, @record.cpu
|
32
|
+
assert_equal @rr_os, @record.os
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_initialize_from_string
|
36
|
+
@record = Net::DNS::RR::HINFO.new(%Q{#{@rr_name} #{@rr_ttl} #{@rr_cls} #{@rr_type} PC-Intel-700mhz "Redhat Linux 7.1"})
|
37
|
+
assert_equal @rr_output, @record.to_s
|
38
|
+
assert_equal @rr_value, @record.value
|
39
|
+
|
40
|
+
assert_equal @rr_cpu, @record.cpu
|
41
|
+
assert_equal @rr_os, @record.os
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_initialize_from_string_without_quotes
|
45
|
+
@record = Net::DNS::RR::HINFO.new("#{@rr_name} #{@rr_ttl} #{@rr_cls} #{@rr_type} #{@rr_value}")
|
46
|
+
assert_equal @rr_output, @record.to_s
|
47
|
+
# FIXME: assert_equal @rr_name, @record.name
|
48
|
+
assert_equal @rr_type, @record.type
|
49
|
+
assert_equal @rr_cls, @record.cls
|
50
|
+
assert_equal 10800, @record.ttl
|
51
|
+
assert_equal @rr_value, @record.value
|
52
|
+
|
53
|
+
assert_equal @rr_cpu, @record.cpu
|
54
|
+
assert_equal @rr_os, @record.os
|
55
|
+
end
|
56
|
+
|
57
|
+
# FIXME: Can't get valid data
|
58
|
+
# def test_parse
|
59
|
+
# data = "\002in\000\000\r\000\001\000\000*0\000!\017PC-Intel-700mhz\020Redhat Linux 7.1"
|
60
|
+
# @record = Net::DNS::RR.parse(data)
|
61
|
+
# assert_equal @rr_output, @record.to_s
|
62
|
+
# assert_equal @rr_name, @record.name
|
63
|
+
# assert_equal @rr_type, @record.type
|
64
|
+
# assert_equal @rr_cls, @record.cls
|
65
|
+
# assert_equal @rr_ttl, @record.ttl
|
66
|
+
# assert_equal @rr_value, @record.value
|
67
|
+
#
|
68
|
+
# assert_equal @rr_cpu, @record.cpu
|
69
|
+
# assert_equal @rr_os, @record.os
|
70
|
+
# end
|
71
|
+
|
72
|
+
|
73
|
+
InvalidArguments = [
|
74
|
+
{ :name => "google.com" },
|
75
|
+
Object.new,
|
76
|
+
Array.new(7),
|
77
|
+
"10800 IN HINFO",
|
78
|
+
"IN HINFO",
|
79
|
+
]
|
80
|
+
|
81
|
+
InvalidArguments.each_with_index do |arguments, index|
|
82
|
+
define_method "test_initialize_should_raise_with_invalid_arguments_#{index}" do
|
83
|
+
assert_raises(ArgumentError) { p Net::DNS::RR::HINFO.new(arguments) }
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
|
88
|
+
def test_cpu
|
89
|
+
assert_equal @rr_cpu, @rr.cpu
|
90
|
+
end
|
91
|
+
|
92
|
+
def test_os
|
93
|
+
assert_equal @rr_os, @rr.os
|
94
|
+
end
|
95
|
+
|
96
|
+
|
97
|
+
def test_value
|
98
|
+
assert_equal %Q{"PC-Intel-700mhz" "Redhat Linux 7.1"}, @rr.value
|
99
|
+
end
|
100
|
+
|
101
|
+
|
102
|
+
def test_inspect
|
103
|
+
assert_equal %Q{ IN HINFO "PC-Intel-700mhz" "Redhat Linux 7.1"},
|
104
|
+
@rr.inspect
|
105
|
+
end
|
106
|
+
|
107
|
+
def test_to_s
|
108
|
+
assert_equal %Q{ IN HINFO "PC-Intel-700mhz" "Redhat Linux 7.1"},
|
109
|
+
@rr.to_s
|
110
|
+
end
|
111
|
+
|
112
|
+
def test_to_a
|
113
|
+
assert_equal [nil, nil, "IN", "HINFO", %Q{"PC-Intel-700mhz" "Redhat Linux 7.1"}],
|
114
|
+
@rr.to_a
|
115
|
+
end
|
116
|
+
|
117
|
+
end
|