jm81-ruby-whois 0.5.0

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