net-dns2 0.8.2 → 0.8.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,85 +0,0 @@
1
- require 'test_helper'
2
- require 'net/dns/rr'
3
-
4
- class RRClassesTest < Test::Unit::TestCase
5
-
6
- def setup
7
- @classes = {
8
- }
9
- @regexp_string = "ANY|CH|HS|IN|NONE"
10
- end
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
56
- # Default type should be ANY => 255
57
- instance = Net::DNS::RR::Classes.new(nil)
58
- assert_equal 1, instance.to_i
59
- assert_equal "IN", instance.to_s
60
-
61
- # Let's change default behaviour
62
- Net::DNS::RR::Classes.default = "CH"
63
- instance = Net::DNS::RR::Classes.new(nil)
64
- assert_equal 3, instance.to_i
65
- assert_equal "CH", instance.to_s
66
-
67
- Net::DNS::RR::Classes.default = "IN"
68
- instance = Net::DNS::RR::Classes.new(nil)
69
- assert_equal 1, instance.to_i
70
- assert_equal "IN", instance.to_s
71
- end
72
-
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) }
79
- end
80
-
81
- def test_self_regexp
82
- assert_equal @regexp_string, Net::DNS::RR::Classes.regexp
83
- end
84
-
85
- end
@@ -1,97 +0,0 @@
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
@@ -1,117 +0,0 @@
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
@@ -1,105 +0,0 @@
1
- require 'test_helper'
2
- require 'net/dns/rr'
3
-
4
- class RRMRTest < Test::Unit::TestCase
5
-
6
- def setup
7
- @klass = Net::DNS::RR::MR
8
- @rr = @klass.new(:name => "eddie.movie.edu.", :newname => "eddie.bornagain.edu.", :ttl => 9000)
9
-
10
- @rr_name = "eddie.movie.edu."
11
- @rr_type = "MR"
12
- @rr_cls = "IN"
13
- @rr_ttl = 9000
14
- @rr_newname = "eddie.bornagain.edu."
15
- @rr_value = "eddie.bornagain.edu."
16
- @rr_output = "eddie.movie.edu. 9000 IN MR eddie.bornagain.edu."
17
- end
18
-
19
-
20
- def test_initialize_from_hash
21
- @record = @klass.new(:name => "eddie.movie.edu.", :newname => "eddie.bornagain.edu.", :ttl => 9000)
22
- assert_equal @rr_output, @record.inspect
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_newname, @record.newname
28
- end
29
-
30
- def test_initialize_from_string
31
- @record = @klass.new("eddie.movie.edu. 9000 IN MR eddie.bornagain.edu.")
32
- assert_equal @rr_output, @record.inspect
33
- assert_equal @rr_name, @record.name
34
- assert_equal @rr_type, @record.type
35
- assert_equal @rr_cls, @record.cls
36
- assert_equal @rr_ttl, @record.ttl
37
- assert_equal @rr_newname, @record.newname
38
- end
39
-
40
- # def test_parse
41
- # data = "\005eddie\005movie\003edu\000\000\t\000\001\000\000#(\000\025\005eddie\tbornagain\003edu\000"
42
- # @record = Net::DNS::RR.parse(data)
43
- # assert_equal @rr_output, @record.inspect
44
- # assert_equal @rr_name, @record.name
45
- # assert_equal @rr_type, @record.type
46
- # assert_equal @rr_cls, @record.cls
47
- # assert_equal @rr_ttl, @record.ttl
48
- # assert_equal @rr_newname, @record.newname
49
- # end
50
-
51
-
52
- InvalidArguments = [
53
- # FIXME: { :name => "eddie.movie.edu.", :newname => "foo___bar" },
54
- # FIXME: { :name => "eddie.movie.edu.", :newname => "foo$bar" },
55
- # FIXME: { :name => "eddie.movie.edu", :newname => "eddie.newname.edu." },
56
- Object.new,
57
- Array.new(7),
58
- "9000 IN MR",
59
- ]
60
-
61
- InvalidArguments.each_with_index do |arguments, index|
62
- define_method "test_initialize_should_raise_with_invalid_arguments_#{index}" do
63
- assert_raises(ArgumentError) { @klass.new(arguments) }
64
- end
65
- end
66
-
67
- def test_initialize_should_raise_with_missing_newname
68
- error = assert_raises(ArgumentError) { @klass.new(:name => "eddie.movie.edu.") }
69
- assert_match /:newname/, error.message
70
- end
71
-
72
-
73
- def test_value
74
- @rr = @klass.new(:name => "eddie.movie.edu.", :newname => "eddie.newname.edu.")
75
- assert_equal "eddie.newname.edu.", @rr.value
76
-
77
- @rr = @klass.new(:name => "eddie.movie.edu.", :newname => "eddie.othername.edu.")
78
- assert_equal "eddie.othername.edu.", @rr.value
79
- end
80
-
81
- def test_newname
82
- @rr = @klass.new(:name => "eddie.movie.edu.", :newname => "eddie.newname.edu.")
83
- assert_equal "eddie.newname.edu.", @rr.newname
84
-
85
- @rr = @klass.new(:name => "eddie.movie.edu.", :newname => "eddie.othername.edu.")
86
- assert_equal "eddie.othername.edu.", @rr.newname
87
- end
88
-
89
-
90
- def test_inspect
91
- assert_equal "eddie.movie.edu. 9000 IN MR eddie.bornagain.edu.",
92
- @rr.inspect
93
- end
94
-
95
- def test_to_s
96
- assert_equal "eddie.movie.edu. 9000 IN MR eddie.bornagain.edu.",
97
- @rr.to_s
98
- end
99
-
100
- def test_to_a
101
- assert_equal ["eddie.movie.edu.", 9000, "IN", "MR", "eddie.bornagain.edu."],
102
- @rr.to_a
103
- end
104
-
105
- end
@@ -1,112 +0,0 @@
1
- require 'test_helper'
2
- require 'net/dns/rr'
3
-
4
- class RRMXTest < Test::Unit::TestCase
5
-
6
- def setup
7
- @rr_name = "example.com."
8
- @rr_type = "MX"
9
- @rr_cls = "IN"
10
- @rr_ttl = 10000
11
- @rr_preference = 10
12
- @rr_exchange = "mail.example.com."
13
- @rr_value = "#{@rr_preference} #{@rr_exchange}"
14
-
15
- @rr_output = "example.com. 10000 IN MX 10 mail.example.com."
16
-
17
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 10, :exchange => "mail.example.com.", :ttl => 10000)
18
- end
19
-
20
-
21
- def test_initialize_from_hash
22
- @record = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 10, :exchange => "mail.example.com.", :ttl => 10000)
23
- assert_equal @rr_output, @record.to_s
24
- assert_equal @rr_name, @record.name
25
- assert_equal @rr_type, @record.type
26
- assert_equal @rr_cls, @record.cls
27
- assert_equal @rr_ttl, @record.ttl
28
- assert_equal @rr_preference, @record.preference
29
- assert_equal @rr_exchange, @record.exchange
30
- end
31
-
32
- def test_initialize_from_string
33
- @record = Net::DNS::RR::MX.new("example.com. 10000 IN MX 10 mail.example.com.")
34
- assert_equal @rr_output, @record.to_s
35
- assert_equal @rr_name, @record.name
36
- assert_equal @rr_type, @record.type
37
- assert_equal @rr_cls, @record.cls
38
- assert_equal @rr_ttl, @record.ttl
39
- assert_equal @rr_preference, @record.preference
40
- assert_equal @rr_exchange, @record.exchange
41
- end
42
-
43
- # FIXME: can't get it working with canned data
44
- # def test_parse
45
- # data = "\001\220\006google\003com\004s9b2\005psmtp\003com\000"
46
- # @record = Net::DNS::RR.parse(data)
47
- # assert_equal @rr_output, @record.to_s
48
- # assert_equal @rr_name, @record.name
49
- # assert_equal @rr_type, @record.type
50
- # assert_equal @rr_cls, @record.cls
51
- # assert_equal @rr_ttl, @record.ttl
52
- # assert_equal @rr_preference, @record.preference
53
- # assert_equal @rr_exchange, @record.exchange
54
- # end
55
-
56
-
57
- InvalidArguments = [
58
- { :name => "google.com" },
59
- Object.new,
60
- Array.new(7),
61
- "10800 IN NS",
62
- "google.com. 10800 IN NS",
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::MX.new(arguments) }
68
- end
69
- end
70
-
71
-
72
- def test_preference
73
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 10, :exchange => "mail.example.com.")
74
- assert_equal 10, @rr.preference
75
-
76
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 100, :exchange => "mail.example.com.")
77
- assert_equal 100, @rr.preference
78
- end
79
-
80
- def test_exchange
81
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 10, :exchange => "mail.example.com.")
82
- assert_equal "mail.example.com.", @rr.exchange
83
-
84
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 10, :exchange => "mail2.example.com.")
85
- assert_equal "mail2.example.com.", @rr.exchange
86
- end
87
-
88
- def test_value
89
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 10, :exchange => "mail.example.com.")
90
- assert_equal "10 mail.example.com.", @rr.value
91
-
92
- @rr = Net::DNS::RR::MX.new(:name => "example.com.", :preference => 100, :exchange => "mail2.example.com.")
93
- assert_equal "100 mail2.example.com.", @rr.value
94
- end
95
-
96
-
97
- def test_inspect
98
- assert_equal "example.com. 10000 IN MX 10 mail.example.com.",
99
- @rr.inspect
100
- end
101
-
102
- def test_to_s
103
- assert_equal "example.com. 10000 IN MX 10 mail.example.com.",
104
- @rr.to_s
105
- end
106
-
107
- def test_to_a
108
- assert_equal ["example.com.", 10000, "IN", "MX", "10 mail.example.com."],
109
- @rr.to_a
110
- end
111
-
112
- end