jm81-ruby-whois 0.5.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.
Files changed (41) hide show
  1. data/LICENSE +1020 -0
  2. data/README +4 -0
  3. data/Rakefile +43 -0
  4. data/VERSION +1 -0
  5. data/lib/whois.rb +9 -0
  6. data/lib/whois/domain.rb +18 -0
  7. data/lib/whois/domain/aero.rb +27 -0
  8. data/lib/whois/domain/afilias.rb +26 -0
  9. data/lib/whois/domain/base.rb +114 -0
  10. data/lib/whois/domain/cat.rb +30 -0
  11. data/lib/whois/domain/coop.rb +31 -0
  12. data/lib/whois/domain/educause.rb +51 -0
  13. data/lib/whois/domain/gov.rb +35 -0
  14. data/lib/whois/domain/int.rb +41 -0
  15. data/lib/whois/domain/mobi.rb +26 -0
  16. data/lib/whois/domain/museum.rb +28 -0
  17. data/lib/whois/domain/name.rb +36 -0
  18. data/lib/whois/domain/neustar.rb +42 -0
  19. data/lib/whois/domain/pro.rb +32 -0
  20. data/lib/whois/domain/public_interest.rb +25 -0
  21. data/lib/whois/domain/verisign_grs.rb +36 -0
  22. data/lib/whois/domain/ws.rb +58 -0
  23. data/ruby-whois.gemspec +95 -0
  24. data/test/test_helper.rb +59 -0
  25. data/test/whois/domain/aero_test.rb +24 -0
  26. data/test/whois/domain/afilias_test.rb +24 -0
  27. data/test/whois/domain/cat_test.rb +28 -0
  28. data/test/whois/domain/coop_test.rb +28 -0
  29. data/test/whois/domain/educause_test.rb +24 -0
  30. data/test/whois/domain/gov_test.rb +28 -0
  31. data/test/whois/domain/int_test.rb +24 -0
  32. data/test/whois/domain/mobi_test.rb +24 -0
  33. data/test/whois/domain/museum_test.rb +28 -0
  34. data/test/whois/domain/name_test.rb +24 -0
  35. data/test/whois/domain/neustar_test.rb +134 -0
  36. data/test/whois/domain/pro_test.rb +27 -0
  37. data/test/whois/domain/public_interest_test.rb +75 -0
  38. data/test/whois/domain/verisign_grs_test.rb +90 -0
  39. data/test/whois/domain/ws_test.rb +24 -0
  40. data/test/whois/domain_test.rb +15 -0
  41. metadata +110 -0
@@ -0,0 +1,90 @@
1
+ require 'test_helper'
2
+
3
+ class Whois::Domain::VerisignGrsTest < Test::Unit::TestCase
4
+ def test_com
5
+ assert_whois_data(EXP_COM.merge({:to_s => EXP_COM_TO_S}))
6
+ assert Whois::Domain.new("not-reg-1234.com").available?
7
+ end
8
+
9
+ def test_net
10
+ assert_whois_data(EXP_NET)
11
+ assert Whois::Domain.new("not-reg-1234.net").available?
12
+ end
13
+
14
+ def test_jobs
15
+ assert_whois_data(EXP_JOBS)
16
+ assert Whois::Domain.new("not-reg-1234.jobs").available?
17
+ end
18
+
19
+ def test_tv
20
+ assert_whois_data(EXP_TV)
21
+ assert Whois::Domain.new("not-reg-1234.tv").available?
22
+ end
23
+
24
+ EXP_COM = {
25
+ :name => "example.com",
26
+ :kind => "VerisignGrs",
27
+ :created_on => "1995-08-14",
28
+ :updated_on => "2004-03-26",
29
+ :expires_on => "2011-08-13",
30
+ :registrar_name => "RESERVED-INTERNET ASSIGNED NUMBERS AUTHORITY",
31
+ :whois_server => "whois.iana.org",
32
+ :raw_match => "Domain Name: EXAMPLE.COM",
33
+ :status => ['clientDeleteProhibited', 'clientTransferProhibited', 'clientUpdateProhibited'],
34
+ :name_servers => ['A.IANA-SERVERS.NET', 'B.IANA-SERVERS.NET']
35
+ }
36
+
37
+ EXP_NET = {
38
+ :name => "example.net",
39
+ :kind => "VerisignGrs",
40
+ :created_on => "1995-08-31",
41
+ :updated_on => "2004-03-26",
42
+ :expires_on => "2010-08-30",
43
+ :registrar_name => "RESERVED-INTERNET ASSIGNED NUMBERS AUTHORITY",
44
+ :whois_server => "whois.iana.org",
45
+ :raw_match => "Domain Name: EXAMPLE.NET",
46
+ :status => ['clientDeleteProhibited', 'clientTransferProhibited', 'clientUpdateProhibited'],
47
+ :name_servers => ['A.IANA-SERVERS.NET', 'B.IANA-SERVERS.NET']
48
+ }
49
+
50
+ EXP_JOBS = {
51
+ :name => "goto.jobs",
52
+ :kind => "VerisignGrs",
53
+ :created_on => "2006-02-21",
54
+ :updated_on => "2009-02-20",
55
+ :expires_on => "2010-02-21",
56
+ :registrar_name => "ENCIRCA, INC",
57
+ :whois_server => "whois.encirca.com",
58
+ :raw_match => "Domain Name: GOTO.JOBS",
59
+ :status => ['ACTIVE'],
60
+ :name_servers => ['NS2.REGISTRY.JOBS', 'NS1.REGISTRY.JOBS']
61
+ }
62
+
63
+ EXP_TV = {
64
+ :name => "www.tv",
65
+ :kind => "VerisignGrs",
66
+ :created_on => "2000-05-01",
67
+ :updated_on => "2009-01-08",
68
+ :expires_on => "2038-01-18",
69
+ :registrar_name => "TUCOWS INC.",
70
+ :whois_server => "whois.tucows.com",
71
+ :raw_match => "Domain Name: WWW.TV",
72
+ :status => ["CLIENT-XFER-PROHIBITED", "CLIENT-UPDATE-PROHIBITED"],
73
+ :name_servers => ['A4.NSTLD.COM', 'F4.NSTLD.COM', 'G4.NSTLD.COM', 'L4.NSTLD.COM']
74
+ }
75
+
76
+ EXP_COM_TO_S = <<EOF
77
+ Domain Name: EXAMPLE.COM
78
+ Registrar: RESERVED-INTERNET ASSIGNED NUMBERS AUTHORITY
79
+ Whois Server: whois.iana.org
80
+ Referral URL: http://res-dom.iana.org
81
+ Name Server: A.IANA-SERVERS.NET
82
+ Name Server: B.IANA-SERVERS.NET
83
+ Status: clientDeleteProhibited
84
+ Status: clientTransferProhibited
85
+ Status: clientUpdateProhibited
86
+ Updated Date: 26-mar-2004
87
+ Creation Date: 14-aug-1995
88
+ Expiration Date: 13-aug-2011
89
+ EOF
90
+ end
@@ -0,0 +1,24 @@
1
+ require 'test_helper'
2
+
3
+ class Whois::Domain::WsTest < Test::Unit::TestCase
4
+
5
+ def test_whois
6
+ assert_whois_data(EXP_WS)
7
+ assert Whois::Domain.new("not-reg-1234.ws").available?
8
+ end
9
+
10
+ EXP_WS = {
11
+ :name => "example.ws",
12
+ :kind => "Ws",
13
+ :created_on => "2003-07-13",
14
+ :updated_on => "2009-07-03",
15
+ :expires_on => "2010-07-13",
16
+ :database_updated_at => false,
17
+ :registrar_name => "GoDaddy.com",
18
+ :whois_server => "whois.godaddy.com",
19
+ :raw_match => "Domain Name: EXAMPLE.WS",
20
+ :status => [],
21
+ :name_servers => ['ns1.activeaudience.com', 'ns2.activeaudience.com']
22
+ }
23
+
24
+ end
@@ -0,0 +1,15 @@
1
+ require 'test_helper'
2
+
3
+ # Test Whois::Domain methods that are generic to all servers
4
+ class Whois::Domain::BaseTest < Test::Unit::TestCase
5
+
6
+ def test_expired
7
+ assert !Whois::Domain.new("example.com").expired?
8
+ assert !Whois::Domain.new("example.org").expired?
9
+ end
10
+
11
+ def test_register_url
12
+ assert_equal "https://www.securepaynet.net/gdshop/registrar/search.asp?prog_id=morgancr&domainToCheck=example.com&checkAvail=1", Whois::Domain.new("example.com").register_url
13
+ assert_equal "https://www.securepaynet.net/gdshop/registrar/search.asp?prog_id=morgancr&domainToCheck=example.org&checkAvail=1", Whois::Domain.new("example.org").register_url
14
+ end
15
+ end
metadata ADDED
@@ -0,0 +1,110 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jm81-ruby-whois
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.0
5
+ platform: ruby
6
+ authors:
7
+ - Jared Morgan
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-09-22 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description:
17
+ email: jmorgan@morgancreative.net
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files:
23
+ - LICENSE
24
+ - README
25
+ files:
26
+ - LICENSE
27
+ - README
28
+ - Rakefile
29
+ - VERSION
30
+ - lib/whois.rb
31
+ - lib/whois/domain.rb
32
+ - lib/whois/domain/aero.rb
33
+ - lib/whois/domain/afilias.rb
34
+ - lib/whois/domain/base.rb
35
+ - lib/whois/domain/cat.rb
36
+ - lib/whois/domain/coop.rb
37
+ - lib/whois/domain/educause.rb
38
+ - lib/whois/domain/gov.rb
39
+ - lib/whois/domain/int.rb
40
+ - lib/whois/domain/mobi.rb
41
+ - lib/whois/domain/museum.rb
42
+ - lib/whois/domain/name.rb
43
+ - lib/whois/domain/neustar.rb
44
+ - lib/whois/domain/pro.rb
45
+ - lib/whois/domain/public_interest.rb
46
+ - lib/whois/domain/verisign_grs.rb
47
+ - lib/whois/domain/ws.rb
48
+ - ruby-whois.gemspec
49
+ - test/test_helper.rb
50
+ - test/whois/domain/aero_test.rb
51
+ - test/whois/domain/afilias_test.rb
52
+ - test/whois/domain/cat_test.rb
53
+ - test/whois/domain/coop_test.rb
54
+ - test/whois/domain/educause_test.rb
55
+ - test/whois/domain/gov_test.rb
56
+ - test/whois/domain/int_test.rb
57
+ - test/whois/domain/mobi_test.rb
58
+ - test/whois/domain/museum_test.rb
59
+ - test/whois/domain/name_test.rb
60
+ - test/whois/domain/neustar_test.rb
61
+ - test/whois/domain/pro_test.rb
62
+ - test/whois/domain/public_interest_test.rb
63
+ - test/whois/domain/verisign_grs_test.rb
64
+ - test/whois/domain/ws_test.rb
65
+ - test/whois/domain_test.rb
66
+ has_rdoc: true
67
+ homepage: http://github.com/jm81/ruby-whois
68
+ licenses:
69
+ post_install_message:
70
+ rdoc_options:
71
+ - --charset=UTF-8
72
+ require_paths:
73
+ - lib
74
+ required_ruby_version: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: "0"
79
+ version:
80
+ required_rubygems_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: "0"
85
+ version:
86
+ requirements: []
87
+
88
+ rubyforge_project:
89
+ rubygems_version: 1.3.5
90
+ signing_key:
91
+ specification_version: 2
92
+ summary: Ruby library for accessing Whois information
93
+ test_files:
94
+ - test/test_helper.rb
95
+ - test/whois/domain/aero_test.rb
96
+ - test/whois/domain/afilias_test.rb
97
+ - test/whois/domain/cat_test.rb
98
+ - test/whois/domain/coop_test.rb
99
+ - test/whois/domain/educause_test.rb
100
+ - test/whois/domain/gov_test.rb
101
+ - test/whois/domain/int_test.rb
102
+ - test/whois/domain/mobi_test.rb
103
+ - test/whois/domain/museum_test.rb
104
+ - test/whois/domain/name_test.rb
105
+ - test/whois/domain/neustar_test.rb
106
+ - test/whois/domain/pro_test.rb
107
+ - test/whois/domain/public_interest_test.rb
108
+ - test/whois/domain/verisign_grs_test.rb
109
+ - test/whois/domain/ws_test.rb
110
+ - test/whois/domain_test.rb