whois 2.0.3 → 2.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.rdoc CHANGED
@@ -1,6 +1,16 @@
1
1
  = Changelog
2
2
 
3
3
 
4
+ == Release 2.0.4
5
+
6
+ * SERVER: Added the following new IDN TLDs:
7
+ * .XN--90A3AC (.СРБ, Serbia) (#94)
8
+
9
+ * FIXED: whois.nic.it parser must support pendinUpdate and pendingTransfer statuses.
10
+
11
+ * FIXED: whois.nic-se.se crashes in some cases where the modified: attribute is an invalid date.
12
+
13
+
4
14
  == Release 2.0.3
5
15
 
6
16
  * SERVER: Sync definitions with Debian whois 5.0.11:
@@ -317,6 +317,7 @@ Whois::Server.define :tld, ".zm", nil, { :adapter => Whois::Server::Adapters::No
317
317
  Whois::Server.define :tld, ".zw", nil, { :adapter => Whois::Server::Adapters::None }
318
318
  Whois::Server.define :tld, ".xn--3e0b707e", "whois.kr"
319
319
  Whois::Server.define :tld, ".xn--45brj9c", nil, { :adapter => Whois::Server::Adapters::None }
320
+ Whois::Server.define :tld, ".xn--90a3ac", nil, { :adapter => Whois::Server::Adapters::None }
320
321
  Whois::Server.define :tld, ".xn--clchc0ea0b2g2a9gcd", "whois.sgnic.sg"
321
322
  Whois::Server.define :tld, ".xn--fiqs8s", "cwhois.cnnic.cn"
322
323
  Whois::Server.define :tld, ".xn--fiqz9s", "cwhois.cnnic.cn"
data/lib/whois/errors.rb CHANGED
@@ -132,6 +132,7 @@ module Whois
132
132
 
133
133
  # Raised when attempting to access a property when the response is unavailable.
134
134
  #
135
+ # @since 2.0.3
135
136
  # @see Whois::Record::Parser::Base#response_unavailable?
136
137
  class ResponseIsUnavailable < ResponseError
137
138
  end
@@ -54,20 +54,20 @@ module Whois
54
54
 
55
55
 
56
56
  property_supported :created_on do
57
- if content_for_scanner =~ /created:\s+(.*)\n/
57
+ if content_for_scanner =~ /created:\s+(.+)\n/
58
58
  Time.parse($1)
59
59
  end
60
60
  end
61
61
 
62
62
  property_supported :expires_on do
63
- if content_for_scanner =~ /expires:\s+(.*)\n/
63
+ if content_for_scanner =~ /expires:\s+(.+)\n/
64
64
  Time.parse($1)
65
65
  end
66
66
  end
67
67
 
68
68
  property_supported :updated_on do
69
- if content_for_scanner =~ /modified:\s+(.*?)\n/
70
- Time.parse($1)
69
+ if content_for_scanner =~ /modified:\s+(.+)\n/
70
+ Time.parse($1) unless $1 == '-'
71
71
  end
72
72
  end
73
73
 
@@ -43,11 +43,11 @@ module Whois
43
43
 
44
44
  property_supported :status do
45
45
  case node("Status").to_s.downcase
46
- when /^ok/, "active"
46
+ when /^ok/, "active", /\bclient/
47
47
  :registered
48
- when /\bclient/
48
+ when "grace-period", "pendingupdate", "pendingtransfer"
49
49
  :registered
50
- when "pendingdelete / redemptionperiod", "grace-period"
50
+ when "pendingdelete / redemptionperiod"
51
51
  :registered
52
52
  when "unassignable"
53
53
  :reserved
data/lib/whois/version.rb CHANGED
@@ -13,7 +13,7 @@ module Whois
13
13
  module Version
14
14
  MAJOR = 2
15
15
  MINOR = 0
16
- PATCH = 3
16
+ PATCH = 4
17
17
  BUILD = nil
18
18
 
19
19
  STRING = [MAJOR, MINOR, PATCH, BUILD].compact.join(".")
@@ -0,0 +1,10 @@
1
+ #created_on
2
+ should: %s be_a(Time)
3
+ should: %s == Time.parse("2010-08-05")
4
+
5
+ #updated_on
6
+ should: %s == nil
7
+
8
+ #expires_on
9
+ should: %s be_a(Time)
10
+ should: %s == Time.parse("2011-08-05")
@@ -0,0 +1,34 @@
1
+ # Copyright (c) 1997- .SE (The Internet Infrastructure Foundation).
2
+ # All rights reserved.
3
+
4
+ # The information obtained through searches, or otherwise, is protected
5
+ # by the Swedish Copyright Act (1960:729) and international conventions.
6
+ # It is also subject to database protection according to the Swedish
7
+ # Copyright Act.
8
+
9
+ # Any use of this material to target advertising or
10
+ # similar activities is forbidden and will be prosecuted.
11
+ # If any of the information below is transferred to a third
12
+ # party, it must be done in its entirety. This server must
13
+ # not be used as a backend for a search engine.
14
+
15
+ # Result of search for registered domain names under
16
+ # the .SE top level domain.
17
+
18
+ # The data is in the UTF-8 character set and the result is
19
+ # printed with eight bits.
20
+
21
+ state: active
22
+ domain: populiscreate.se
23
+ holder: eds1008-4130626
24
+ admin-c: eds0903-00001
25
+ tech-c: eds0903-00002
26
+ billing-c: eds0903-00001
27
+ created: 2010-08-05
28
+ modified: -
29
+ expires: 2011-08-05
30
+ nserver: ns2.eurodns.com
31
+ nserver: ns1.eurodns.com
32
+ dnssec: unsigned delegation
33
+ status: ok
34
+ registrar: EuroDNS S.A
@@ -0,0 +1,8 @@
1
+ #status
2
+ should: %s == :registered
3
+
4
+ #available?
5
+ should: %s == false
6
+
7
+ #registered?
8
+ should: %s == true
@@ -0,0 +1,46 @@
1
+
2
+ *********************************************************************
3
+ * Please note that the following result could be a subgroup of *
4
+ * the data contained in the database. *
5
+ * *
6
+ * Additional information can be visualized at: *
7
+ * http://www.nic.it/cgi-bin/Whois/whois.cgi *
8
+ *********************************************************************
9
+
10
+ Domain: alessandrofusco.it
11
+ Status: pendingTransfer
12
+ Created: 2006-06-05 00:00:00
13
+ Last Update: 2011-05-02 17:26:59
14
+ Expire Date: 2011-06-05
15
+
16
+ Registrant
17
+ Name: Alessandro Fusco
18
+ Organization: Alessandro Fusco
19
+ ContactID: AF7184
20
+
21
+ Admin Contact
22
+ Name: Alessandro Fusco
23
+ Organization: Alessandro Fusco
24
+ ContactID: AF7184
25
+
26
+ Technical Contacts
27
+ Name: Claudio De Luca
28
+ Organization: Serverplan
29
+ ContactID: CDL148
30
+ Address: Corso della Repubblica 171
31
+ Cassino
32
+ 03043
33
+ FR
34
+ IT
35
+ Created: 2005-07-07 00:00:00
36
+ Last Update: 2010-01-28 16:10:28
37
+
38
+ Registrar
39
+ Organization: Serverplan s.r.l. Unipersonale
40
+ Name: SERVERPLAN-REG
41
+ Web: http://www.serverplan.com
42
+
43
+ Nameservers
44
+ ns23.dnshighspeed.com
45
+ ns24.dnshighspeed.com
46
+
@@ -0,0 +1,8 @@
1
+ #status
2
+ should: %s == :registered
3
+
4
+ #available?
5
+ should: %s == false
6
+
7
+ #registered?
8
+ should: %s == true
@@ -0,0 +1,59 @@
1
+
2
+ *********************************************************************
3
+ * Please note that the following result could be a subgroup of *
4
+ * the data contained in the database. *
5
+ * *
6
+ * Additional information can be visualized at: *
7
+ * http://www.nic.it/cgi-bin/Whois/whois.cgi *
8
+ *********************************************************************
9
+
10
+ Domain: fuoristradausato.it
11
+ Status: pendingUpdate
12
+ Created: 2006-10-11 00:00:00
13
+ Last Update: 2011-04-30 19:24:02
14
+ Expire Date: 2011-10-11
15
+
16
+ Registrant
17
+ Name: Autonord S.r.l.
18
+ Organization: Autonord S.r.l.
19
+ ContactID: AUTO2726
20
+ Address: via IX strada 21
21
+ padova
22
+ 35129
23
+ PD
24
+ IT
25
+ Created: 2007-03-01 10:50:23
26
+ Last Update: 2010-05-18 13:02:40
27
+
28
+ Admin Contact
29
+ Name: Emilio Rampin
30
+ Organization: Autonord S.r.l.
31
+ ContactID: ER2146
32
+ Address: 21
33
+ padova
34
+ 35129
35
+ PD
36
+ IT
37
+ Created: 2006-10-11 00:00:00
38
+ Last Update: 2010-05-18 13:03:17
39
+
40
+ Technical Contacts
41
+ Name: Marco Bianucci
42
+ ContactID: MB8891
43
+ Address: Via dei pioppi 2
44
+ Cesano Boscone
45
+ 20090
46
+ MI
47
+ IT
48
+ Created: 2005-04-05 00:00:00
49
+ Last Update: 2010-05-18 13:03:26
50
+
51
+ Registrar
52
+ Organization: PhoenixWeb s.n.c. di Marco Bianucci & C.
53
+ Name: PEGASO-REG
54
+ Web: http://www.pegasohosting.net
55
+
56
+ Nameservers
57
+ ns11.pegasodns.com
58
+ ns12.pegasodns.com
59
+
@@ -0,0 +1,41 @@
1
+ # encoding: utf-8
2
+
3
+ # This file is autogenerated. Do not edit it manually.
4
+ # If you want change the content of this file, edit
5
+ #
6
+ # /spec/fixtures/responses/whois.nic-se.se/property_datetime_is_dash.expected
7
+ #
8
+ # and regenerate the tests with the following rake task
9
+ #
10
+ # $ rake genspec:parsers
11
+ #
12
+
13
+ require 'spec_helper'
14
+ require 'whois/record/parser/whois.nic-se.se.rb'
15
+
16
+ describe Whois::Record::Parser::WhoisNicSeSe, "property_datetime_is_dash.expected" do
17
+
18
+ before(:each) do
19
+ file = fixture("responses", "whois.nic-se.se/property_datetime_is_dash.txt")
20
+ part = Whois::Record::Part.new(:body => File.read(file))
21
+ @parser = klass.new(part)
22
+ end
23
+
24
+ context "#created_on" do
25
+ it do
26
+ @parser.created_on.should be_a(Time)
27
+ @parser.created_on.should == Time.parse("2010-08-05")
28
+ end
29
+ end
30
+ context "#updated_on" do
31
+ it do
32
+ @parser.updated_on.should == nil
33
+ end
34
+ end
35
+ context "#expires_on" do
36
+ it do
37
+ @parser.expires_on.should be_a(Time)
38
+ @parser.expires_on.should == Time.parse("2011-08-05")
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,39 @@
1
+ # encoding: utf-8
2
+
3
+ # This file is autogenerated. Do not edit it manually.
4
+ # If you want change the content of this file, edit
5
+ #
6
+ # /spec/fixtures/responses/whois.nic.it/property_status_pendingtransfer.expected
7
+ #
8
+ # and regenerate the tests with the following rake task
9
+ #
10
+ # $ rake genspec:parsers
11
+ #
12
+
13
+ require 'spec_helper'
14
+ require 'whois/record/parser/whois.nic.it.rb'
15
+
16
+ describe Whois::Record::Parser::WhoisNicIt, "property_status_pendingtransfer.expected" do
17
+
18
+ before(:each) do
19
+ file = fixture("responses", "whois.nic.it/property_status_pendingtransfer.txt")
20
+ part = Whois::Record::Part.new(:body => File.read(file))
21
+ @parser = klass.new(part)
22
+ end
23
+
24
+ context "#status" do
25
+ it do
26
+ @parser.status.should == :registered
27
+ end
28
+ end
29
+ context "#available?" do
30
+ it do
31
+ @parser.available?.should == false
32
+ end
33
+ end
34
+ context "#registered?" do
35
+ it do
36
+ @parser.registered?.should == true
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,39 @@
1
+ # encoding: utf-8
2
+
3
+ # This file is autogenerated. Do not edit it manually.
4
+ # If you want change the content of this file, edit
5
+ #
6
+ # /spec/fixtures/responses/whois.nic.it/property_status_pendingupdate.expected
7
+ #
8
+ # and regenerate the tests with the following rake task
9
+ #
10
+ # $ rake genspec:parsers
11
+ #
12
+
13
+ require 'spec_helper'
14
+ require 'whois/record/parser/whois.nic.it.rb'
15
+
16
+ describe Whois::Record::Parser::WhoisNicIt, "property_status_pendingupdate.expected" do
17
+
18
+ before(:each) do
19
+ file = fixture("responses", "whois.nic.it/property_status_pendingupdate.txt")
20
+ part = Whois::Record::Part.new(:body => File.read(file))
21
+ @parser = klass.new(part)
22
+ end
23
+
24
+ context "#status" do
25
+ it do
26
+ @parser.status.should == :registered
27
+ end
28
+ end
29
+ context "#available?" do
30
+ it do
31
+ @parser.available?.should == false
32
+ end
33
+ end
34
+ context "#registered?" do
35
+ it do
36
+ @parser.registered?.should == true
37
+ end
38
+ end
39
+ end