diff --git a/lib/whois/parsers/whois.audns.net.au.rb b/lib/whois/parsers/whois.auda.org.au.rb similarity index 87% rename from lib/whois/parsers/whois.audns.net.au.rb rename to lib/whois/parsers/whois.auda.org.au.rb index ad615bf0..93aee0cb 100644 --- a/lib/whois/parsers/whois.audns.net.au.rb +++ b/lib/whois/parsers/whois.auda.org.au.rb @@ -8,21 +8,21 @@ require_relative 'base' -require 'whois/scanners/whois.audns.net.au.rb' +require 'whois/scanners/whois.auda.org.au.rb' module Whois class Parsers - # Parser for the whois.audns.net.au server. + # Parser for the whois.auda.org.au server. # # @see Whois::Parsers::Example # The Example parser for the list of all available methods. # - class WhoisAudnsNetAu < Base + class WhoisAudaOrgAu < Base include Scanners::Scannable - self.scanner = Scanners::WhoisAudnsNetAu + self.scanner = Scanners::WhoisAudaOrgAu property_not_supported :disclaimer @@ -32,8 +32,13 @@ class WhoisAudnsNetAu < Base node("Domain Name") end - property_not_supported :domain_id + property_supported :domain_id do + node("Registry Domain ID") + end + property_supported :disclaimer do + node("field:disclaimer") + end # == Values for Status # @@ -52,7 +57,6 @@ class WhoisAudnsNetAu < Base !available? end - property_not_supported :created_on property_supported :updated_on do @@ -61,7 +65,6 @@ class WhoisAudnsNetAu < Base property_not_supported :expires_on - property_supported :registrar do node("Registrar Name") do |str| Parser::Registrar.new({ @@ -70,7 +73,6 @@ class WhoisAudnsNetAu < Base end end - property_supported :registrant_contacts do contact = build_contact("Registrant Contact", Parser::Contact::TYPE_REGISTRANT) contact.organization = node("Registrant") if contact @@ -83,14 +85,12 @@ class WhoisAudnsNetAu < Base build_contact("Tech Contact", Parser::Contact::TYPE_TECHNICAL) end - property_supported :nameservers do Array.wrap(node("Name Server")).map do |name| Parser::Nameserver.new(name: name) end end - private def build_contact(element, type) diff --git a/lib/whois/scanners/whois.auda.org.au.rb b/lib/whois/scanners/whois.auda.org.au.rb new file mode 100644 index 00000000..13d7416c --- /dev/null +++ b/lib/whois/scanners/whois.auda.org.au.rb @@ -0,0 +1,35 @@ +require_relative 'base' + +module Whois + module Scanners + + # Scanner for the whois.auda.org.au record. + class WhoisAudaOrgAu < Base + + self.tokenizers += [ + :skip_empty_line, + :scan_available, + :skip_lastupdate, + :scan_disclaimer, + :scan_keyvalue, + ] + + tokenizer :scan_available do + if @input.skip(/^(No Data Found)|(NOT FOUND)\n/) + @ast["status:available"] = true + end + end + + tokenizer :skip_lastupdate do + @input.skip(/>>>(.+?)<<<\n/) + end + + tokenizer :scan_disclaimer do + if @input.match?(/^(Afilias Australia Pty Ltd)(.+)\n\n/) + @ast["field:disclaimer"] = _scan_lines_to_array(/(.+)(\n+)/).join("\n") + end + end + end + + end +end diff --git a/lib/whois/scanners/whois.audns.net.au.rb b/lib/whois/scanners/whois.audns.net.au.rb deleted file mode 100644 index b802b085..00000000 --- a/lib/whois/scanners/whois.audns.net.au.rb +++ /dev/null @@ -1,25 +0,0 @@ -require_relative 'base' - -module Whois - module Scanners - - # Scanner for the whois.audns.net.au record. - class WhoisAudnsNetAu < Base - - self.tokenizers += [ - :skip_empty_line, - :scan_available, - :scan_keyvalue, - ] - - - tokenizer :scan_available do - if @input.skip(/^No Data Found\n/) - @ast["status:available"] = true - end - end - - end - - end -end diff --git a/spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.expected b/spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.expected new file mode 100644 index 00000000..e9eba17e --- /dev/null +++ b/spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.expected @@ -0,0 +1,2 @@ +#status + %s == ["serverRenewProhibited https://afilias.com.au/get-au/whois-status-codes#serverRenewProhibited"] diff --git a/spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.txt b/spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.txt new file mode 100644 index 00000000..0daac17c --- /dev/null +++ b/spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.txt @@ -0,0 +1,44 @@ +Domain Name: PINEWOOD.COM.AU +Registry Domain ID: D407400000001847702-AU +Registrar WHOIS Server: whois.synergywholesale.com +Registrar URL: whois.synergywholesale.com +Last Modified: +Registrar Name: Synergy Wholesale Pty Ltd +Registrar Abuse Contact Email: abuse@synergywholesale.com +Registrar Abuse Contact Phone: +61.383999483 +Reseller Name: +Status: serverRenewProhibited https://afilias.com.au/get-au/whois-status-codes#serverRenewProhibited +Registrant Contact ID: NFVKTQY4FP7TA0W +Registrant Contact Name: EMIL ANDONOV +Tech Contact ID: NFSTGFPPDC0HFZ1Q +Tech Contact Name: EMIL ANDONOV +Name Server: DNS1.NETFLEET.COM.AU +Name Server IP: 202.191.63.6 +Name Server: DNS2.NETFLEET.COM.AU +Name Server IP: 180.235.131.172 +DNSSEC: unsigned +Registrant: Pacific Fund Pty Ltd +Registrant ID: ABN 75143185406 +Eligibility Type: Company + +>>> Last update of WHOIS database: 2018-08-07T21:25:00Z <<< + + + +Afilias Australia Pty Ltd (Afilias), for itself and on behalf of .au Domain Administration Limited (auDA), makes the WHOIS registration data directory service (WHOIS Service) available solely for the purposes of: + +(a) querying the availability of a domain name licence; + +(b) identifying the holder of a domain name licence; and/or + +(c) contacting the holder of a domain name licence in relation to that domain name and its use. + +The WHOIS Service must not be used for any other purpose (even if that purpose is lawful), including: + +(a) aggregating, collecting or compiling information from the WHOIS database, whether for personal or commercial purposes; + +(b) enabling the sending of unsolicited electronic communications; and / or + +(c) enabling high volume, automated, electronic processes that send queries or data to the systems of Afilias, any registrar, any domain name licence holder, or auDA. + +The WHOIS Service is provided for information purposes only. By using the WHOIS Service, you agree to be bound by these terms and conditions. The WHOIS Service is operated in accordance with the auDA WHOIS Policy (available at https://www.auda.org.au/policies/index-of-published-policies/2014/2014-07/ ). diff --git a/spec/fixtures/responses/whois.audns.net.au/au/status_available.expected b/spec/fixtures/responses/whois.auda.org.au/au/status_available.expected similarity index 100% rename from spec/fixtures/responses/whois.audns.net.au/au/status_available.expected rename to spec/fixtures/responses/whois.auda.org.au/au/status_available.expected diff --git a/spec/fixtures/responses/whois.auda.org.au/au/status_available.txt b/spec/fixtures/responses/whois.auda.org.au/au/status_available.txt new file mode 100644 index 00000000..1fc21585 --- /dev/null +++ b/spec/fixtures/responses/whois.auda.org.au/au/status_available.txt @@ -0,0 +1,20 @@ +NOT FOUND +>>> Last update of WHOIS database: 2018-08-07T19:35:44Z <<< + +Afilias Australia Pty Ltd (Afilias), for itself and on behalf of .au Domain Administration Limited (auDA), makes the WHOIS registration data directory service (WHOIS Service) available solely for the purposes of: + +(a) querying the availability of a domain name licence; + +(b) identifying the holder of a domain name licence; and/or + +(c) contacting the holder of a domain name licence in relation to that domain name and its use. + +The WHOIS Service must not be used for any other purpose (even if that purpose is lawful), including: + +(a) aggregating, collecting or compiling information from the WHOIS database, whether for personal or commercial purposes; + +(b) enabling the sending of unsolicited electronic communications; and / or + +(c) enabling high volume, automated, electronic processes that send queries or data to the systems of Afilias, any registrar, any domain name licence holder, or auDA. + +The WHOIS Service is provided for information purposes only. By using the WHOIS Service, you agree to be bound by these terms and conditions. The WHOIS Service is operated in accordance with the auDA WHOIS Policy (available at https://www.auda.org.au/policies/index-of-published-policies/2014/2014-07/ ). diff --git a/spec/fixtures/responses/whois.audns.net.au/au/status_registered.expected b/spec/fixtures/responses/whois.auda.org.au/au/status_registered.expected similarity index 70% rename from spec/fixtures/responses/whois.audns.net.au/au/status_registered.expected rename to spec/fixtures/responses/whois.auda.org.au/au/status_registered.expected index f5e03bba..a592553d 100644 --- a/spec/fixtures/responses/whois.audns.net.au/au/status_registered.expected +++ b/spec/fixtures/responses/whois.auda.org.au/au/status_registered.expected @@ -3,14 +3,20 @@ #domain - %s == "google.com.au" + %s == "GOOGLE.COM.AU" #domain_id - %s %ERROR{AttributeNotSupported} + %s == "D407400000001774763-AU" #status - %s == ["clientDeleteProhibited", "clientUpdateProhibited", "serverDeleteProhibited (Protected by .auLOCKDOWN)", "serverUpdateProhibited (Protected by .auLOCKDOWN)"] + %s == [ + "clientDeleteProhibited https://afilias.com.au/get-au/whois-status-codes#clientDeleteProhibited", + "clientUpdateProhibited https://afilias.com.au/get-au/whois-status-codes#clientUpdateProhibited", + "serverDeleteProhibited https://afilias.com.au/get-au/whois-status-codes#serverDeleteProhibited", + "serverRenewProhibited https://afilias.com.au/get-au/whois-status-codes#serverRenewProhibited", + "serverUpdateProhibited https://afilias.com.au/get-au/whois-status-codes#serverUpdateProhibited" +] #available? %s == false @@ -32,7 +38,7 @@ #registrar %s %CLASS{registrar} - %s.name == "MarkMonitor Inc." + %s.name == "MarkMonitor Corporate Services Inc" %s.organization == nil %s.url == nil @@ -84,10 +90,10 @@ %s %CLASS{array} %s %SIZE{4} %s[0] %CLASS{nameserver} - %s[0].name == "ns1.google.com" + %s[0].name == "NS1.GOOGLE.COM" %s[1] %CLASS{nameserver} - %s[1].name == "ns2.google.com" + %s[1].name == "NS2.GOOGLE.COM" %s[2] %CLASS{nameserver} - %s[2].name == "ns3.google.com" + %s[2].name == "NS3.GOOGLE.COM" %s[3] %CLASS{nameserver} - %s[3].name == "ns4.google.com" + %s[3].name == "NS4.GOOGLE.COM" diff --git a/spec/fixtures/responses/whois.auda.org.au/au/status_registered.txt b/spec/fixtures/responses/whois.auda.org.au/au/status_registered.txt new file mode 100644 index 00000000..47360ffe --- /dev/null +++ b/spec/fixtures/responses/whois.auda.org.au/au/status_registered.txt @@ -0,0 +1,49 @@ +Domain Name: GOOGLE.COM.AU +Registry Domain ID: D407400000001774763-AU +Registrar WHOIS Server: +Registrar URL: +Last Modified: +Registrar Name: MarkMonitor Corporate Services Inc +Registrar Abuse Contact Email: +Registrar Abuse Contact Phone: +Reseller Name: +Status: clientDeleteProhibited https://afilias.com.au/get-au/whois-status-codes#clientDeleteProhibited +Status: clientUpdateProhibited https://afilias.com.au/get-au/whois-status-codes#clientUpdateProhibited +Status: serverDeleteProhibited https://afilias.com.au/get-au/whois-status-codes#serverDeleteProhibited +Status: serverRenewProhibited https://afilias.com.au/get-au/whois-status-codes#serverRenewProhibited +Status: serverUpdateProhibited https://afilias.com.au/get-au/whois-status-codes#serverUpdateProhibited +Registrant Contact ID: MMR-122026 +Registrant Contact Name: Domain Administrator +Tech Contact ID: MMR-87489 +Tech Contact Name: DNS Admin +Name Server: NS1.GOOGLE.COM +Name Server: NS2.GOOGLE.COM +Name Server: NS3.GOOGLE.COM +Name Server: NS4.GOOGLE.COM +DNSSEC: unsigned +Registrant: Google INC +Eligibility Type: Trademark Owner +Eligibility Name: GOOGLE +Eligibility ID: TM 788234 + +>>> Last update of WHOIS database: 2018-08-07T19:34:09Z <<< + + + +Afilias Australia Pty Ltd (Afilias), for itself and on behalf of .au Domain Administration Limited (auDA), makes the WHOIS registration data directory service (WHOIS Service) available solely for the purposes of: + +(a) querying the availability of a domain name licence; + +(b) identifying the holder of a domain name licence; and/or + +(c) contacting the holder of a domain name licence in relation to that domain name and its use. + +The WHOIS Service must not be used for any other purpose (even if that purpose is lawful), including: + +(a) aggregating, collecting or compiling information from the WHOIS database, whether for personal or commercial purposes; + +(b) enabling the sending of unsolicited electronic communications; and / or + +(c) enabling high volume, automated, electronic processes that send queries or data to the systems of Afilias, any registrar, any domain name licence holder, or auDA. + +The WHOIS Service is provided for information purposes only. By using the WHOIS Service, you agree to be bound by these terms and conditions. The WHOIS Service is operated in accordance with the auDA WHOIS Policy (available at https://www.auda.org.au/policies/index-of-published-policies/2014/2014-07/ ). diff --git a/spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.expected b/spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.expected deleted file mode 100644 index e91d39c1..00000000 --- a/spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.expected +++ /dev/null @@ -1,2 +0,0 @@ -#status - %s == ["serverHold (Expired)", "serverUpdateProhibited (Expired)"] diff --git a/spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.txt b/spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.txt deleted file mode 100644 index 028d12db..00000000 --- a/spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.txt +++ /dev/null @@ -1,22 +0,0 @@ -Domain Name: pinewood.com.au -Last Modified: 11-Oct-2010 00:00:33 UTC -Registrar ID: Melbourne IT -Registrar Name: Melbourne IT -Status: serverHold (Expired) -Status: serverUpdateProhibited (Expired) - -Registrant: PINEWOOD PROLAB PTY LTD -Registrant ID: ACN 120 562 905 -Eligibility Type: Company - -Registrant Contact ID: Z116060879386417 -Registrant Contact Name: PETER TONOLI -Registrant Contact Email: Visit whois.ausregistry.com.au for Web based WhoIs - -Tech Contact ID: Z116060879386417 -Tech Contact Name: PETER TONOLI -Tech Contact Email: Visit whois.ausregistry.com.au for Web based WhoIs - -Name Server: ns1.dreamhost.com -Name Server: ns2.dreamhost.com -Name Server: ns3.dreamhost.com diff --git a/spec/fixtures/responses/whois.audns.net.au/au/status_available.txt b/spec/fixtures/responses/whois.audns.net.au/au/status_available.txt deleted file mode 100644 index 3831b4b5..00000000 --- a/spec/fixtures/responses/whois.audns.net.au/au/status_available.txt +++ /dev/null @@ -1 +0,0 @@ -No Data Found diff --git a/spec/fixtures/responses/whois.audns.net.au/au/status_registered.txt b/spec/fixtures/responses/whois.audns.net.au/au/status_registered.txt deleted file mode 100644 index c7b111e7..00000000 --- a/spec/fixtures/responses/whois.audns.net.au/au/status_registered.txt +++ /dev/null @@ -1,26 +0,0 @@ -Domain Name: google.com.au -Last Modified: 05-Nov-2014 10:35:59 UTC -Status: clientDeleteProhibited -Status: clientUpdateProhibited -Status: serverDeleteProhibited (Protected by .auLOCKDOWN) -Status: serverUpdateProhibited (Protected by .auLOCKDOWN) -Registrar Name: MarkMonitor Inc. - -Registrant: Google INC -Eligibility Type: Trademark Owner -Eligibility Name: GOOGLE -Eligibility ID: TM 788234 - -Registrant Contact ID: MMR-122026 -Registrant Contact Name: Domain Administrator -Registrant Contact Email: Visit whois.ausregistry.com.au for Web based WhoIs - -Tech Contact ID: MMR-87489 -Tech Contact Name: DNS Admin -Tech Contact Email: Visit whois.ausregistry.com.au for Web based WhoIs - -Name Server: ns1.google.com -Name Server: ns2.google.com -Name Server: ns3.google.com -Name Server: ns4.google.com -DNSSEC: unsigned \ No newline at end of file diff --git a/spec/tlds.yml b/spec/tlds.yml index e8e62ad9..34a09840 100644 --- a/spec/tlds.yml +++ b/spec/tlds.yml @@ -302,7 +302,7 @@ at: status_available: u34jedzcq.at status_registered: google.at au: - _server: whois.audns.net.au + _server: whois.auda.org.au status_available: u34jedzcq.com.au status_registered: google.com.au _status_registered_skipdiff: diff --git a/spec/whois/parsers/responses/whois.auda.org.au/au/property_status_with_multiple_spec.rb b/spec/whois/parsers/responses/whois.auda.org.au/au/property_status_with_multiple_spec.rb new file mode 100644 index 00000000..2d7b2673 --- /dev/null +++ b/spec/whois/parsers/responses/whois.auda.org.au/au/property_status_with_multiple_spec.rb @@ -0,0 +1,31 @@ +# encoding: utf-8 + +# This file is autogenerated. Do not edit it manually. +# If you want change the content of this file, edit +# +# /spec/fixtures/responses/whois.auda.org.au/au/property_status_with_multiple.expected +# +# and regenerate the tests with the following rake task +# +# $ rake spec:generate +# + +require 'spec_helper' +require 'whois/parsers/whois.auda.org.au.rb' + +describe Whois::Parsers::WhoisAudaOrgAu, "property_status_with_multiple.expected" do + + subject do + file = fixture("responses", "whois.auda.org.au/au/property_status_with_multiple.txt") + part = Whois::Record::Part.new(body: File.read(file)) + described_class.new(part) + end + + describe "#status" do + it do + expect(subject.status).to eq( + ["serverRenewProhibited https://afilias.com.au/get-au/whois-status-codes#serverRenewProhibited"] + ) + end + end +end diff --git a/spec/whois/parsers/responses/whois.audns.net.au/au/status_available_spec.rb b/spec/whois/parsers/responses/whois.auda.org.au/au/status_available_spec.rb similarity index 54% rename from spec/whois/parsers/responses/whois.audns.net.au/au/status_available_spec.rb rename to spec/whois/parsers/responses/whois.auda.org.au/au/status_available_spec.rb index 48966ff9..87d5cc78 100644 --- a/spec/whois/parsers/responses/whois.audns.net.au/au/status_available_spec.rb +++ b/spec/whois/parsers/responses/whois.auda.org.au/au/status_available_spec.rb @@ -3,7 +3,7 @@ # This file is autogenerated. Do not edit it manually. # If you want change the content of this file, edit # -# /spec/fixtures/responses/whois.audns.net.au/au/status_available.expected +# /spec/fixtures/responses/whois.auda.org.au/au/status_available.expected # # and regenerate the tests with the following rake task # @@ -11,19 +11,19 @@ # require 'spec_helper' -require 'whois/parsers/whois.audns.net.au.rb' +require 'whois/parsers/whois.auda.org.au.rb' -describe Whois::Parsers::WhoisAudnsNetAu, "status_available.expected" do +describe Whois::Parsers::WhoisAudaOrgAu, "status_available.expected" do subject do - file = fixture("responses", "whois.audns.net.au/au/status_available.txt") + file = fixture("responses", "whois.auda.org.au/au/status_available.txt") part = Whois::Record::Part.new(body: File.read(file)) described_class.new(part) end describe "#disclaimer" do it do - expect { subject.disclaimer }.to raise_error(Whois::AttributeNotSupported) + expect(subject.disclaimer).to eq("Afilias Australia Pty Ltd (Afilias), for itself and on behalf of .au Domain Administration Limited (auDA), makes the WHOIS registration data directory service (WHOIS Service) available solely for the purposes of:\n(a) querying the availability of a domain name licence;\n(b) identifying the holder of a domain name licence; and/or\n(c) contacting the holder of a domain name licence in relation to that domain name and its use.\nThe WHOIS Service must not be used for any other purpose (even if that purpose is lawful), including:\n(a) aggregating, collecting or compiling information from the WHOIS database, whether for personal or commercial purposes;\n(b) enabling the sending of unsolicited electronic communications; and / or\n(c) enabling high volume, automated, electronic processes that send queries or data to the systems of Afilias, any registrar, any domain name licence holder, or auDA.\nThe WHOIS Service is provided for information purposes only. By using the WHOIS Service, you agree to be bound by these terms and conditions. The WHOIS Service is operated in accordance with the auDA WHOIS Policy (available at https://www.auda.org.au/policies/index-of-published-policies/2014/2014-07/ ).") end end describe "#domain" do @@ -33,7 +33,7 @@ end describe "#domain_id" do it do - expect { subject.domain_id }.to raise_error(Whois::AttributeNotSupported) + expect(subject.domain_id).to eq(nil) end end describe "#status" do diff --git a/spec/whois/parsers/responses/whois.audns.net.au/au/status_registered_spec.rb b/spec/whois/parsers/responses/whois.auda.org.au/au/status_registered_spec.rb similarity index 61% rename from spec/whois/parsers/responses/whois.audns.net.au/au/status_registered_spec.rb rename to spec/whois/parsers/responses/whois.auda.org.au/au/status_registered_spec.rb index 2bf16be3..f91758ac 100644 --- a/spec/whois/parsers/responses/whois.audns.net.au/au/status_registered_spec.rb +++ b/spec/whois/parsers/responses/whois.auda.org.au/au/status_registered_spec.rb @@ -3,7 +3,7 @@ # This file is autogenerated. Do not edit it manually. # If you want change the content of this file, edit # -# /spec/fixtures/responses/whois.audns.net.au/au/status_registered.expected +# /spec/fixtures/responses/whois.auda.org.au/au/status_registered.expected # # and regenerate the tests with the following rake task # @@ -11,34 +11,40 @@ # require 'spec_helper' -require 'whois/parsers/whois.audns.net.au.rb' +require 'whois/parsers/whois.auda.org.au.rb' -describe Whois::Parsers::WhoisAudnsNetAu, "status_registered.expected" do +describe Whois::Parsers::WhoisAudaOrgAu, "status_registered.expected" do subject do - file = fixture("responses", "whois.audns.net.au/au/status_registered.txt") + file = fixture("responses", "whois.auda.org.au/au/status_registered.txt") part = Whois::Record::Part.new(body: File.read(file)) described_class.new(part) end describe "#disclaimer" do it do - expect { subject.disclaimer }.to raise_error(Whois::AttributeNotSupported) + expect(subject.disclaimer).to eq("Afilias Australia Pty Ltd (Afilias), for itself and on behalf of .au Domain Administration Limited (auDA), makes the WHOIS registration data directory service (WHOIS Service) available solely for the purposes of:\n(a) querying the availability of a domain name licence;\n(b) identifying the holder of a domain name licence; and/or\n(c) contacting the holder of a domain name licence in relation to that domain name and its use.\nThe WHOIS Service must not be used for any other purpose (even if that purpose is lawful), including:\n(a) aggregating, collecting or compiling information from the WHOIS database, whether for personal or commercial purposes;\n(b) enabling the sending of unsolicited electronic communications; and / or\n(c) enabling high volume, automated, electronic processes that send queries or data to the systems of Afilias, any registrar, any domain name licence holder, or auDA.\nThe WHOIS Service is provided for information purposes only. By using the WHOIS Service, you agree to be bound by these terms and conditions. The WHOIS Service is operated in accordance with the auDA WHOIS Policy (available at https://www.auda.org.au/policies/index-of-published-policies/2014/2014-07/ ).") end end describe "#domain" do it do - expect(subject.domain).to eq("google.com.au") + expect(subject.domain).to eq("GOOGLE.COM.AU") end end describe "#domain_id" do it do - expect { subject.domain_id }.to raise_error(Whois::AttributeNotSupported) + expect(subject.domain_id).to eq("D407400000001774763-AU") end end describe "#status" do it do - expect(subject.status).to eq(["clientDeleteProhibited", "clientUpdateProhibited", "serverDeleteProhibited (Protected by .auLOCKDOWN)", "serverUpdateProhibited (Protected by .auLOCKDOWN)"]) + expect(subject.status).to eq([ + "clientDeleteProhibited https://afilias.com.au/get-au/whois-status-codes#clientDeleteProhibited", + "clientUpdateProhibited https://afilias.com.au/get-au/whois-status-codes#clientUpdateProhibited", + "serverDeleteProhibited https://afilias.com.au/get-au/whois-status-codes#serverDeleteProhibited", + "serverRenewProhibited https://afilias.com.au/get-au/whois-status-codes#serverRenewProhibited", + "serverUpdateProhibited https://afilias.com.au/get-au/whois-status-codes#serverUpdateProhibited" + ]) end end describe "#available?" do @@ -56,12 +62,6 @@ expect { subject.created_on }.to raise_error(Whois::AttributeNotSupported) end end - describe "#updated_on" do - it do - expect(subject.updated_on).to be_a(Time) - expect(subject.updated_on).to eq(Time.parse("2014-11-05 10:35:59 UTC")) - end - end describe "#expires_on" do it do expect { subject.expires_on }.to raise_error(Whois::AttributeNotSupported) @@ -70,7 +70,7 @@ describe "#registrar" do it do expect(subject.registrar).to be_a(Whois::Parser::Registrar) - expect(subject.registrar.name).to eq("MarkMonitor Inc.") + expect(subject.registrar.name).to eq("MarkMonitor Corporate Services Inc") expect(subject.registrar.organization).to eq(nil) expect(subject.registrar.url).to eq(nil) end @@ -92,7 +92,7 @@ expect(subject.registrant_contacts[0].country_code).to eq(nil) expect(subject.registrant_contacts[0].phone).to eq(nil) expect(subject.registrant_contacts[0].fax).to eq(nil) - expect(subject.registrant_contacts[0].email).to eq("Visit whois.ausregistry.com.au for Web based WhoIs") + expect(subject.registrant_contacts[0].email).to eq(nil) expect(subject.registrant_contacts[0].created_on).to eq(nil) expect(subject.registrant_contacts[0].updated_on).to eq(nil) end @@ -119,7 +119,7 @@ expect(subject.technical_contacts[0].country_code).to eq(nil) expect(subject.technical_contacts[0].phone).to eq(nil) expect(subject.technical_contacts[0].fax).to eq(nil) - expect(subject.technical_contacts[0].email).to eq("Visit whois.ausregistry.com.au for Web based WhoIs") + expect(subject.technical_contacts[0].email).to eq(nil) expect(subject.technical_contacts[0].created_on).to eq(nil) expect(subject.technical_contacts[0].updated_on).to eq(nil) end @@ -129,13 +129,13 @@ expect(subject.nameservers).to be_a(Array) expect(subject.nameservers.size).to eq(4) expect(subject.nameservers[0]).to be_a(Whois::Parser::Nameserver) - expect(subject.nameservers[0].name).to eq("ns1.google.com") + expect(subject.nameservers[0].name).to eq("NS1.GOOGLE.COM") expect(subject.nameservers[1]).to be_a(Whois::Parser::Nameserver) - expect(subject.nameservers[1].name).to eq("ns2.google.com") + expect(subject.nameservers[1].name).to eq("NS2.GOOGLE.COM") expect(subject.nameservers[2]).to be_a(Whois::Parser::Nameserver) - expect(subject.nameservers[2].name).to eq("ns3.google.com") + expect(subject.nameservers[2].name).to eq("NS3.GOOGLE.COM") expect(subject.nameservers[3]).to be_a(Whois::Parser::Nameserver) - expect(subject.nameservers[3].name).to eq("ns4.google.com") + expect(subject.nameservers[3].name).to eq("NS4.GOOGLE.COM") end end end diff --git a/spec/whois/parsers/responses/whois.audns.net.au/au/property_status_with_multiple_spec.rb b/spec/whois/parsers/responses/whois.audns.net.au/au/property_status_with_multiple_spec.rb deleted file mode 100644 index a99baea8..00000000 --- a/spec/whois/parsers/responses/whois.audns.net.au/au/property_status_with_multiple_spec.rb +++ /dev/null @@ -1,29 +0,0 @@ -# encoding: utf-8 - -# This file is autogenerated. Do not edit it manually. -# If you want change the content of this file, edit -# -# /spec/fixtures/responses/whois.audns.net.au/au/property_status_with_multiple.expected -# -# and regenerate the tests with the following rake task -# -# $ rake spec:generate -# - -require 'spec_helper' -require 'whois/parsers/whois.audns.net.au.rb' - -describe Whois::Parsers::WhoisAudnsNetAu, "property_status_with_multiple.expected" do - - subject do - file = fixture("responses", "whois.audns.net.au/au/property_status_with_multiple.txt") - part = Whois::Record::Part.new(body: File.read(file)) - described_class.new(part) - end - - describe "#status" do - it do - expect(subject.status).to eq(["serverHold (Expired)", "serverUpdateProhibited (Expired)"]) - end - end -end diff --git a/whois-parser.gemspec b/whois-parser.gemspec index 46c5ca1e..2b9cd449 100644 --- a/whois-parser.gemspec +++ b/whois-parser.gemspec @@ -11,7 +11,7 @@ Gem::Specification.new do |s| s.date = "2018-03-26" s.description = "Whois Parser is a WHOIS parser written in pure Ruby. It can parse and convert responses into easy-to-use Ruby objects.".freeze s.email = ["weppos@weppos.net".freeze] - s.files = [".yardopts".freeze, "CHANGELOG.md".freeze, "CONTRIBUTING.md".freeze, "LICENSE.txt".freeze, "README.md".freeze, "lib/whois-parser.rb".freeze, "lib/whois/parser.rb".freeze, "lib/whois/parser/contact.rb".freeze, "lib/whois/parser/errors.rb".freeze, "lib/whois/parser/nameserver.rb".freeze, "lib/whois/parser/registrar.rb".freeze, "lib/whois/parser/super_struct.rb".freeze, "lib/whois/parser/version.rb".freeze, "lib/whois/parser_extensions.rb".freeze, "lib/whois/parser_extensions/whois.rb".freeze, "lib/whois/parser_extensions/whois_parser.rb".freeze, "lib/whois/parser_extensions/whois_record.rb".freeze, "lib/whois/parsers.rb".freeze, "lib/whois/parsers/base.rb".freeze, "lib/whois/parsers/base_afilias.rb".freeze, "lib/whois/parsers/base_afilias2.rb".freeze, "lib/whois/parsers/base_cocca.rb".freeze, "lib/whois/parsers/base_cocca2.rb".freeze, "lib/whois/parsers/base_icann_compliant.rb".freeze, "lib/whois/parsers/base_icb.rb".freeze, "lib/whois/parsers/base_iisse.rb".freeze, "lib/whois/parsers/base_nic_fr.rb".freeze, "lib/whois/parsers/base_shared1.rb".freeze, "lib/whois/parsers/base_shared2.rb".freeze, "lib/whois/parsers/base_shared3.rb".freeze, "lib/whois/parsers/base_verisign.rb".freeze, "lib/whois/parsers/base_whoisd.rb".freeze, "lib/whois/parsers/blank.rb".freeze, "lib/whois/parsers/capetown-whois.registry.net.za.rb".freeze, "lib/whois/parsers/ccwhois.ksregistry.net.rb".freeze, "lib/whois/parsers/ccwhois.verisign-grs.com.rb".freeze, "lib/whois/parsers/coza-whois.registry.net.za.rb".freeze, "lib/whois/parsers/durban-whois.registry.net.za.rb".freeze, "lib/whois/parsers/example.rb".freeze, "lib/whois/parsers/joburg-whois.registry.net.za.rb".freeze, "lib/whois/parsers/kero.yachay.pe.rb".freeze, "lib/whois/parsers/org-whois.registry.net.za.rb".freeze, "lib/whois/parsers/tvwhois.verisign-grs.com.rb".freeze, "lib/whois/parsers/whois.1und1.info.rb".freeze, "lib/whois/parsers/whois.35.com.rb".freeze, "lib/whois/parsers/whois.aeda.net.ae.rb".freeze, "lib/whois/parsers/whois.aero.rb".freeze, "lib/whois/parsers/whois.afilias-grs.info.rb".freeze, "lib/whois/parsers/whois.afilias.net.rb".freeze, "lib/whois/parsers/whois.amnic.net.rb".freeze, "lib/whois/parsers/whois.ascio.com.rb".freeze, "lib/whois/parsers/whois.ati.tn.rb".freeze, "lib/whois/parsers/whois.audns.net.au.rb".freeze, "lib/whois/parsers/whois.ax.rb".freeze, "lib/whois/parsers/whois.biz.rb".freeze, "lib/whois/parsers/whois.bnnic.bn.rb".freeze, "lib/whois/parsers/whois.cat.rb".freeze, "lib/whois/parsers/whois.cctld.by.rb".freeze, "lib/whois/parsers/whois.cctld.uz.rb".freeze, "lib/whois/parsers/whois.cdmon.com.rb".freeze, "lib/whois/parsers/whois.centralnic.com.rb".freeze, "lib/whois/parsers/whois.cira.ca.rb".freeze, "lib/whois/parsers/whois.cmc.iq.rb".freeze, "lib/whois/parsers/whois.cnnic.cn.rb".freeze, "lib/whois/parsers/whois.co.ca.rb".freeze, "lib/whois/parsers/whois.co.pl.rb".freeze, "lib/whois/parsers/whois.co.ug.rb".freeze, "lib/whois/parsers/whois.comlaude.com.rb".freeze, "lib/whois/parsers/whois.corporatedomains.com.rb".freeze, "lib/whois/parsers/whois.denic.de.rb".freeze, "lib/whois/parsers/whois.dk-hostmaster.dk.rb".freeze, "lib/whois/parsers/whois.dns.be.rb".freeze, "lib/whois/parsers/whois.dns.hr.rb".freeze, "lib/whois/parsers/whois.dns.lu.rb".freeze, "lib/whois/parsers/whois.dns.pl.rb".freeze, "lib/whois/parsers/whois.dns.pt.rb".freeze, "lib/whois/parsers/whois.domain-registry.nl.rb".freeze, "lib/whois/parsers/whois.domain.kg.rb".freeze, "lib/whois/parsers/whois.domainregistry.ie.rb".freeze, "lib/whois/parsers/whois.domreg.lt.rb".freeze, "lib/whois/parsers/whois.donuts.co.rb".freeze, "lib/whois/parsers/whois.dot.cf.rb".freeze, "lib/whois/parsers/whois.dot.tk.rb".freeze, "lib/whois/parsers/whois.dotgov.gov.rb".freeze, "lib/whois/parsers/whois.dotmobiregistry.net.rb".freeze, "lib/whois/parsers/whois.dotpostregistry.net.rb".freeze, "lib/whois/parsers/whois.dreamhost.com.rb".freeze, "lib/whois/parsers/whois.educause.edu.rb".freeze, "lib/whois/parsers/whois.eenet.ee.rb".freeze, "lib/whois/parsers/whois.enom.com.rb".freeze, "lib/whois/parsers/whois.eu.org.rb".freeze, "lib/whois/parsers/whois.eu.rb".freeze, "lib/whois/parsers/whois.fi.rb".freeze, "lib/whois/parsers/whois.gandi.net.rb".freeze, "lib/whois/parsers/whois.gg.rb".freeze, "lib/whois/parsers/whois.godaddy.com.rb".freeze, "lib/whois/parsers/whois.gov.za.rb".freeze, "lib/whois/parsers/whois.hkirc.hk.rb".freeze, "lib/whois/parsers/whois.iana.org.rb".freeze, "lib/whois/parsers/whois.iis.nu.rb".freeze, "lib/whois/parsers/whois.iis.se.rb".freeze, "lib/whois/parsers/whois.in.ua.rb".freeze, "lib/whois/parsers/whois.inregistry.net.rb".freeze, "lib/whois/parsers/whois.isnic.is.rb".freeze, "lib/whois/parsers/whois.isoc.org.il.rb".freeze, "lib/whois/parsers/whois.ja.net.rb".freeze, "lib/whois/parsers/whois.je.rb".freeze, "lib/whois/parsers/whois.jprs.jp.rb".freeze, "lib/whois/parsers/whois.kenic.or.ke.rb".freeze, "lib/whois/parsers/whois.kr.rb".freeze, "lib/whois/parsers/whois.markmonitor.com.rb".freeze, "lib/whois/parsers/whois.monic.mo.rb".freeze, "lib/whois/parsers/whois.museum.rb".freeze, "lib/whois/parsers/whois.mynic.my.rb".freeze, "lib/whois/parsers/whois.na-nic.com.na.rb".freeze, "lib/whois/parsers/whois.nc.rb".freeze, "lib/whois/parsers/whois.netcom.cm.rb".freeze, "lib/whois/parsers/whois.networksolutions.com.rb".freeze, "lib/whois/parsers/whois.nic.ac.rb".freeze, "lib/whois/parsers/whois.nic.af.rb".freeze, "lib/whois/parsers/whois.nic.ag.rb".freeze, "lib/whois/parsers/whois.nic.ai.rb".freeze, "lib/whois/parsers/whois.nic.as.rb".freeze, "lib/whois/parsers/whois.nic.asia.rb".freeze, "lib/whois/parsers/whois.nic.at.rb".freeze, "lib/whois/parsers/whois.nic.bj.rb".freeze, "lib/whois/parsers/whois.nic.bo.rb".freeze, "lib/whois/parsers/whois.nic.cd.rb".freeze, "lib/whois/parsers/whois.nic.ch.rb".freeze, "lib/whois/parsers/whois.nic.ci.rb".freeze, "lib/whois/parsers/whois.nic.cl.rb".freeze, "lib/whois/parsers/whois.nic.co.rb".freeze, "lib/whois/parsers/whois.nic.college.rb".freeze, "lib/whois/parsers/whois.nic.coop.rb".freeze, "lib/whois/parsers/whois.nic.cx.rb".freeze, "lib/whois/parsers/whois.nic.cz.rb".freeze, "lib/whois/parsers/whois.nic.design.rb".freeze, "lib/whois/parsers/whois.nic.dm.rb".freeze, "lib/whois/parsers/whois.nic.dz.rb".freeze, "lib/whois/parsers/whois.nic.ec.rb".freeze, "lib/whois/parsers/whois.nic.es.rb".freeze, "lib/whois/parsers/whois.nic.fm.rb".freeze, "lib/whois/parsers/whois.nic.fo.rb".freeze, "lib/whois/parsers/whois.nic.fr.rb".freeze, "lib/whois/parsers/whois.nic.gd.rb".freeze, "lib/whois/parsers/whois.nic.gl.rb".freeze, "lib/whois/parsers/whois.nic.gs.rb".freeze, "lib/whois/parsers/whois.nic.hn.rb".freeze, "lib/whois/parsers/whois.nic.ht.rb".freeze, "lib/whois/parsers/whois.nic.hu.rb".freeze, "lib/whois/parsers/whois.nic.im.rb".freeze, "lib/whois/parsers/whois.nic.io.rb".freeze, "lib/whois/parsers/whois.nic.ir.rb".freeze, "lib/whois/parsers/whois.nic.it.rb".freeze, "lib/whois/parsers/whois.nic.jobs.rb".freeze, "lib/whois/parsers/whois.nic.ki.rb".freeze, "lib/whois/parsers/whois.nic.kz.rb".freeze, "lib/whois/parsers/whois.nic.la.rb".freeze, "lib/whois/parsers/whois.nic.li.rb".freeze, "lib/whois/parsers/whois.nic.lk.rb".freeze, "lib/whois/parsers/whois.nic.lv.rb".freeze, "lib/whois/parsers/whois.nic.ly.rb".freeze, "lib/whois/parsers/whois.nic.md.rb".freeze, "lib/whois/parsers/whois.nic.me.rb".freeze, "lib/whois/parsers/whois.nic.mg.rb".freeze, "lib/whois/parsers/whois.nic.ms.rb".freeze, "lib/whois/parsers/whois.nic.mu.rb".freeze, "lib/whois/parsers/whois.nic.mx.rb".freeze, "lib/whois/parsers/whois.nic.name.rb".freeze, "lib/whois/parsers/whois.nic.net.ng.rb".freeze, "lib/whois/parsers/whois.nic.net.sa.rb".freeze, "lib/whois/parsers/whois.nic.net.sb.rb".freeze, "lib/whois/parsers/whois.nic.nf.rb".freeze, "lib/whois/parsers/whois.nic.org.uy.rb".freeze, "lib/whois/parsers/whois.nic.pm.rb".freeze, "lib/whois/parsers/whois.nic.pr.rb".freeze, "lib/whois/parsers/whois.nic.priv.at.rb".freeze, "lib/whois/parsers/whois.nic.pw.rb".freeze, "lib/whois/parsers/whois.nic.re.rb".freeze, "lib/whois/parsers/whois.nic.sh.rb".freeze, "lib/whois/parsers/whois.nic.sl.rb".freeze, "lib/whois/parsers/whois.nic.sm.rb".freeze, "lib/whois/parsers/whois.nic.sn.rb".freeze, "lib/whois/parsers/whois.nic.so.rb".freeze, "lib/whois/parsers/whois.nic.space.rb".freeze, "lib/whois/parsers/whois.nic.st.rb".freeze, "lib/whois/parsers/whois.nic.tc.rb".freeze, "lib/whois/parsers/whois.nic.tech.rb".freeze, "lib/whois/parsers/whois.nic.tel.rb".freeze, "lib/whois/parsers/whois.nic.tl.rb".freeze, "lib/whois/parsers/whois.nic.tm.rb".freeze, "lib/whois/parsers/whois.nic.tr.rb".freeze, "lib/whois/parsers/whois.nic.travel.rb".freeze, "lib/whois/parsers/whois.nic.uk.rb".freeze, "lib/whois/parsers/whois.nic.us.rb".freeze, "lib/whois/parsers/whois.nic.ve.rb".freeze, "lib/whois/parsers/whois.nic.wf.rb".freeze, "lib/whois/parsers/whois.nic.xxx.rb".freeze, "lib/whois/parsers/whois.nic.xyz.rb".freeze, "lib/whois/parsers/whois.norid.no.rb".freeze, "lib/whois/parsers/whois.pairnic.com.rb".freeze, "lib/whois/parsers/whois.pandi.or.id.rb".freeze, "lib/whois/parsers/whois.pir.org.rb".freeze, "lib/whois/parsers/whois.pnina.ps.rb".freeze, "lib/whois/parsers/whois.register.bg.rb".freeze, "lib/whois/parsers/whois.register.com.rb".freeze, "lib/whois/parsers/whois.register.si.rb".freeze, "lib/whois/parsers/whois.registre.ma.rb".freeze, "lib/whois/parsers/whois.registro.br.rb".freeze, "lib/whois/parsers/whois.registry.gy.rb".freeze, "lib/whois/parsers/whois.registry.hm.rb".freeze, "lib/whois/parsers/whois.registry.om.rb".freeze, "lib/whois/parsers/whois.registry.qa.rb".freeze, "lib/whois/parsers/whois.ripe.net.rb".freeze, "lib/whois/parsers/whois.rnids.rs.rb".freeze, "lib/whois/parsers/whois.rotld.ro.rb".freeze, "lib/whois/parsers/whois.rrpproxy.net.rb".freeze, "lib/whois/parsers/whois.safenames.net.rb".freeze, "lib/whois/parsers/whois.schlund.info.rb".freeze, "lib/whois/parsers/whois.sgnic.sg.rb".freeze, "lib/whois/parsers/whois.sk-nic.sk.rb".freeze, "lib/whois/parsers/whois.smallregistry.net.rb".freeze, "lib/whois/parsers/whois.srs.net.nz.rb".freeze, "lib/whois/parsers/whois.sx.rb".freeze, "lib/whois/parsers/whois.tcinet.ru.rb".freeze, "lib/whois/parsers/whois.thnic.co.th.rb".freeze, "lib/whois/parsers/whois.tld.ee.rb".freeze, "lib/whois/parsers/whois.tld.sy.rb".freeze, "lib/whois/parsers/whois.tonic.to.rb".freeze, "lib/whois/parsers/whois.tucows.com.rb".freeze, "lib/whois/parsers/whois.twnic.net.tw.rb".freeze, "lib/whois/parsers/whois.tznic.or.tz.rb".freeze, "lib/whois/parsers/whois.ua.rb".freeze, "lib/whois/parsers/whois.udag.net.rb".freeze, "lib/whois/parsers/whois.uniregistry.net.rb".freeze, "lib/whois/parsers/whois.usp.ac.fj.rb".freeze, "lib/whois/parsers/whois.verisign-grs.com.rb".freeze, "lib/whois/parsers/whois.website.ws.rb".freeze, "lib/whois/parsers/whois.wildwestdomains.com.rb".freeze, "lib/whois/parsers/whois.yoursrs.com.rb".freeze, "lib/whois/parsers/whois.za.net.rb".freeze, "lib/whois/parsers/whois.za.org.rb".freeze, "lib/whois/parsers/whois1.nic.bi.rb".freeze, "lib/whois/parsers/za_central_registry.rb".freeze, "lib/whois/safe_record.rb".freeze, "lib/whois/scanners/base.rb".freeze, "lib/whois/scanners/base_afilias.rb".freeze, "lib/whois/scanners/base_cocca2.rb".freeze, "lib/whois/scanners/base_icann_compliant.rb".freeze, "lib/whois/scanners/base_iisse.rb".freeze, "lib/whois/scanners/base_shared1.rb".freeze, "lib/whois/scanners/base_shared2.rb".freeze, "lib/whois/scanners/base_shared3.rb".freeze, "lib/whois/scanners/base_whoisd.rb".freeze, "lib/whois/scanners/iana.rb".freeze, "lib/whois/scanners/scannable.rb".freeze, "lib/whois/scanners/verisign.rb".freeze, "lib/whois/scanners/whois.ati.tn.rb".freeze, "lib/whois/scanners/whois.audns.net.au.rb".freeze, "lib/whois/scanners/whois.cctld.by.rb".freeze, "lib/whois/scanners/whois.centralnic.com.rb".freeze, "lib/whois/scanners/whois.cira.ca.rb".freeze, "lib/whois/scanners/whois.cnnic.cn.rb".freeze, "lib/whois/scanners/whois.denic.de.rb".freeze, "lib/whois/scanners/whois.dns.hr.rb".freeze, "lib/whois/scanners/whois.domainregistry.ie.rb".freeze, "lib/whois/scanners/whois.fi.rb".freeze, "lib/whois/scanners/whois.nc.rb".freeze, "lib/whois/scanners/whois.nic.cz.rb".freeze, "lib/whois/scanners/whois.nic.it.rb".freeze, "lib/whois/scanners/whois.pir.org.rb".freeze, "lib/whois/scanners/whois.rnids.rs.rb".freeze, "lib/whois/scanners/whois.smallregistry.net.rb".freeze, "lib/whois/scanners/whois.srs.net.nz.rb".freeze, "lib/whois/scanners/whois.sx.rb".freeze, "lib/whois/scanners/whois.tld.ee.rb".freeze, "lib/whois/scanners/whois.tucows.com.rb".freeze, "lib/whois/scanners/whois.yoursrs.com.rb".freeze, "whois-parser.gemspec".freeze] + s.files = [".yardopts".freeze, "CHANGELOG.md".freeze, "CONTRIBUTING.md".freeze, "LICENSE.txt".freeze, "README.md".freeze, "lib/whois-parser.rb".freeze, "lib/whois/parser.rb".freeze, "lib/whois/parser/contact.rb".freeze, "lib/whois/parser/errors.rb".freeze, "lib/whois/parser/nameserver.rb".freeze, "lib/whois/parser/registrar.rb".freeze, "lib/whois/parser/super_struct.rb".freeze, "lib/whois/parser/version.rb".freeze, "lib/whois/parser_extensions.rb".freeze, "lib/whois/parser_extensions/whois.rb".freeze, "lib/whois/parser_extensions/whois_parser.rb".freeze, "lib/whois/parser_extensions/whois_record.rb".freeze, "lib/whois/parsers.rb".freeze, "lib/whois/parsers/base.rb".freeze, "lib/whois/parsers/base_afilias.rb".freeze, "lib/whois/parsers/base_afilias2.rb".freeze, "lib/whois/parsers/base_cocca.rb".freeze, "lib/whois/parsers/base_cocca2.rb".freeze, "lib/whois/parsers/base_icann_compliant.rb".freeze, "lib/whois/parsers/base_icb.rb".freeze, "lib/whois/parsers/base_iisse.rb".freeze, "lib/whois/parsers/base_nic_fr.rb".freeze, "lib/whois/parsers/base_shared1.rb".freeze, "lib/whois/parsers/base_shared2.rb".freeze, "lib/whois/parsers/base_shared3.rb".freeze, "lib/whois/parsers/base_verisign.rb".freeze, "lib/whois/parsers/base_whoisd.rb".freeze, "lib/whois/parsers/blank.rb".freeze, "lib/whois/parsers/capetown-whois.registry.net.za.rb".freeze, "lib/whois/parsers/ccwhois.ksregistry.net.rb".freeze, "lib/whois/parsers/ccwhois.verisign-grs.com.rb".freeze, "lib/whois/parsers/coza-whois.registry.net.za.rb".freeze, "lib/whois/parsers/durban-whois.registry.net.za.rb".freeze, "lib/whois/parsers/example.rb".freeze, "lib/whois/parsers/joburg-whois.registry.net.za.rb".freeze, "lib/whois/parsers/kero.yachay.pe.rb".freeze, "lib/whois/parsers/org-whois.registry.net.za.rb".freeze, "lib/whois/parsers/tvwhois.verisign-grs.com.rb".freeze, "lib/whois/parsers/whois.1und1.info.rb".freeze, "lib/whois/parsers/whois.35.com.rb".freeze, "lib/whois/parsers/whois.aeda.net.ae.rb".freeze, "lib/whois/parsers/whois.aero.rb".freeze, "lib/whois/parsers/whois.afilias-grs.info.rb".freeze, "lib/whois/parsers/whois.afilias.net.rb".freeze, "lib/whois/parsers/whois.amnic.net.rb".freeze, "lib/whois/parsers/whois.ascio.com.rb".freeze, "lib/whois/parsers/whois.ati.tn.rb".freeze, "lib/whois/parsers/whois.auda.org.au.rb".freeze, "lib/whois/parsers/whois.ax.rb".freeze, "lib/whois/parsers/whois.biz.rb".freeze, "lib/whois/parsers/whois.bnnic.bn.rb".freeze, "lib/whois/parsers/whois.cat.rb".freeze, "lib/whois/parsers/whois.cctld.by.rb".freeze, "lib/whois/parsers/whois.cctld.uz.rb".freeze, "lib/whois/parsers/whois.cdmon.com.rb".freeze, "lib/whois/parsers/whois.centralnic.com.rb".freeze, "lib/whois/parsers/whois.cira.ca.rb".freeze, "lib/whois/parsers/whois.cmc.iq.rb".freeze, "lib/whois/parsers/whois.cnnic.cn.rb".freeze, "lib/whois/parsers/whois.co.ca.rb".freeze, "lib/whois/parsers/whois.co.pl.rb".freeze, "lib/whois/parsers/whois.co.ug.rb".freeze, "lib/whois/parsers/whois.comlaude.com.rb".freeze, "lib/whois/parsers/whois.corporatedomains.com.rb".freeze, "lib/whois/parsers/whois.denic.de.rb".freeze, "lib/whois/parsers/whois.dk-hostmaster.dk.rb".freeze, "lib/whois/parsers/whois.dns.be.rb".freeze, "lib/whois/parsers/whois.dns.hr.rb".freeze, "lib/whois/parsers/whois.dns.lu.rb".freeze, "lib/whois/parsers/whois.dns.pl.rb".freeze, "lib/whois/parsers/whois.dns.pt.rb".freeze, "lib/whois/parsers/whois.domain-registry.nl.rb".freeze, "lib/whois/parsers/whois.domain.kg.rb".freeze, "lib/whois/parsers/whois.domainregistry.ie.rb".freeze, "lib/whois/parsers/whois.domreg.lt.rb".freeze, "lib/whois/parsers/whois.donuts.co.rb".freeze, "lib/whois/parsers/whois.dot.cf.rb".freeze, "lib/whois/parsers/whois.dot.tk.rb".freeze, "lib/whois/parsers/whois.dotgov.gov.rb".freeze, "lib/whois/parsers/whois.dotmobiregistry.net.rb".freeze, "lib/whois/parsers/whois.dotpostregistry.net.rb".freeze, "lib/whois/parsers/whois.dreamhost.com.rb".freeze, "lib/whois/parsers/whois.educause.edu.rb".freeze, "lib/whois/parsers/whois.eenet.ee.rb".freeze, "lib/whois/parsers/whois.enom.com.rb".freeze, "lib/whois/parsers/whois.eu.org.rb".freeze, "lib/whois/parsers/whois.eu.rb".freeze, "lib/whois/parsers/whois.fi.rb".freeze, "lib/whois/parsers/whois.gandi.net.rb".freeze, "lib/whois/parsers/whois.gg.rb".freeze, "lib/whois/parsers/whois.godaddy.com.rb".freeze, "lib/whois/parsers/whois.gov.za.rb".freeze, "lib/whois/parsers/whois.hkirc.hk.rb".freeze, "lib/whois/parsers/whois.iana.org.rb".freeze, "lib/whois/parsers/whois.iis.nu.rb".freeze, "lib/whois/parsers/whois.iis.se.rb".freeze, "lib/whois/parsers/whois.in.ua.rb".freeze, "lib/whois/parsers/whois.inregistry.net.rb".freeze, "lib/whois/parsers/whois.isnic.is.rb".freeze, "lib/whois/parsers/whois.isoc.org.il.rb".freeze, "lib/whois/parsers/whois.ja.net.rb".freeze, "lib/whois/parsers/whois.je.rb".freeze, "lib/whois/parsers/whois.jprs.jp.rb".freeze, "lib/whois/parsers/whois.kenic.or.ke.rb".freeze, "lib/whois/parsers/whois.kr.rb".freeze, "lib/whois/parsers/whois.markmonitor.com.rb".freeze, "lib/whois/parsers/whois.monic.mo.rb".freeze, "lib/whois/parsers/whois.museum.rb".freeze, "lib/whois/parsers/whois.mynic.my.rb".freeze, "lib/whois/parsers/whois.na-nic.com.na.rb".freeze, "lib/whois/parsers/whois.nc.rb".freeze, "lib/whois/parsers/whois.netcom.cm.rb".freeze, "lib/whois/parsers/whois.networksolutions.com.rb".freeze, "lib/whois/parsers/whois.nic.ac.rb".freeze, "lib/whois/parsers/whois.nic.af.rb".freeze, "lib/whois/parsers/whois.nic.ag.rb".freeze, "lib/whois/parsers/whois.nic.ai.rb".freeze, "lib/whois/parsers/whois.nic.as.rb".freeze, "lib/whois/parsers/whois.nic.asia.rb".freeze, "lib/whois/parsers/whois.nic.at.rb".freeze, "lib/whois/parsers/whois.nic.bj.rb".freeze, "lib/whois/parsers/whois.nic.bo.rb".freeze, "lib/whois/parsers/whois.nic.cd.rb".freeze, "lib/whois/parsers/whois.nic.ch.rb".freeze, "lib/whois/parsers/whois.nic.ci.rb".freeze, "lib/whois/parsers/whois.nic.cl.rb".freeze, "lib/whois/parsers/whois.nic.co.rb".freeze, "lib/whois/parsers/whois.nic.college.rb".freeze, "lib/whois/parsers/whois.nic.coop.rb".freeze, "lib/whois/parsers/whois.nic.cx.rb".freeze, "lib/whois/parsers/whois.nic.cz.rb".freeze, "lib/whois/parsers/whois.nic.design.rb".freeze, "lib/whois/parsers/whois.nic.dm.rb".freeze, "lib/whois/parsers/whois.nic.dz.rb".freeze, "lib/whois/parsers/whois.nic.ec.rb".freeze, "lib/whois/parsers/whois.nic.es.rb".freeze, "lib/whois/parsers/whois.nic.fm.rb".freeze, "lib/whois/parsers/whois.nic.fo.rb".freeze, "lib/whois/parsers/whois.nic.fr.rb".freeze, "lib/whois/parsers/whois.nic.gd.rb".freeze, "lib/whois/parsers/whois.nic.gl.rb".freeze, "lib/whois/parsers/whois.nic.gs.rb".freeze, "lib/whois/parsers/whois.nic.hn.rb".freeze, "lib/whois/parsers/whois.nic.ht.rb".freeze, "lib/whois/parsers/whois.nic.hu.rb".freeze, "lib/whois/parsers/whois.nic.im.rb".freeze, "lib/whois/parsers/whois.nic.io.rb".freeze, "lib/whois/parsers/whois.nic.ir.rb".freeze, "lib/whois/parsers/whois.nic.it.rb".freeze, "lib/whois/parsers/whois.nic.jobs.rb".freeze, "lib/whois/parsers/whois.nic.ki.rb".freeze, "lib/whois/parsers/whois.nic.kz.rb".freeze, "lib/whois/parsers/whois.nic.la.rb".freeze, "lib/whois/parsers/whois.nic.li.rb".freeze, "lib/whois/parsers/whois.nic.lk.rb".freeze, "lib/whois/parsers/whois.nic.lv.rb".freeze, "lib/whois/parsers/whois.nic.ly.rb".freeze, "lib/whois/parsers/whois.nic.md.rb".freeze, "lib/whois/parsers/whois.nic.me.rb".freeze, "lib/whois/parsers/whois.nic.mg.rb".freeze, "lib/whois/parsers/whois.nic.ms.rb".freeze, "lib/whois/parsers/whois.nic.mu.rb".freeze, "lib/whois/parsers/whois.nic.mx.rb".freeze, "lib/whois/parsers/whois.nic.name.rb".freeze, "lib/whois/parsers/whois.nic.net.ng.rb".freeze, "lib/whois/parsers/whois.nic.net.sa.rb".freeze, "lib/whois/parsers/whois.nic.net.sb.rb".freeze, "lib/whois/parsers/whois.nic.nf.rb".freeze, "lib/whois/parsers/whois.nic.org.uy.rb".freeze, "lib/whois/parsers/whois.nic.pm.rb".freeze, "lib/whois/parsers/whois.nic.pr.rb".freeze, "lib/whois/parsers/whois.nic.priv.at.rb".freeze, "lib/whois/parsers/whois.nic.pw.rb".freeze, "lib/whois/parsers/whois.nic.re.rb".freeze, "lib/whois/parsers/whois.nic.sh.rb".freeze, "lib/whois/parsers/whois.nic.sl.rb".freeze, "lib/whois/parsers/whois.nic.sm.rb".freeze, "lib/whois/parsers/whois.nic.sn.rb".freeze, "lib/whois/parsers/whois.nic.so.rb".freeze, "lib/whois/parsers/whois.nic.space.rb".freeze, "lib/whois/parsers/whois.nic.st.rb".freeze, "lib/whois/parsers/whois.nic.tc.rb".freeze, "lib/whois/parsers/whois.nic.tech.rb".freeze, "lib/whois/parsers/whois.nic.tel.rb".freeze, "lib/whois/parsers/whois.nic.tl.rb".freeze, "lib/whois/parsers/whois.nic.tm.rb".freeze, "lib/whois/parsers/whois.nic.tr.rb".freeze, "lib/whois/parsers/whois.nic.travel.rb".freeze, "lib/whois/parsers/whois.nic.uk.rb".freeze, "lib/whois/parsers/whois.nic.us.rb".freeze, "lib/whois/parsers/whois.nic.ve.rb".freeze, "lib/whois/parsers/whois.nic.wf.rb".freeze, "lib/whois/parsers/whois.nic.xxx.rb".freeze, "lib/whois/parsers/whois.nic.xyz.rb".freeze, "lib/whois/parsers/whois.norid.no.rb".freeze, "lib/whois/parsers/whois.pairnic.com.rb".freeze, "lib/whois/parsers/whois.pandi.or.id.rb".freeze, "lib/whois/parsers/whois.pir.org.rb".freeze, "lib/whois/parsers/whois.pnina.ps.rb".freeze, "lib/whois/parsers/whois.register.bg.rb".freeze, "lib/whois/parsers/whois.register.com.rb".freeze, "lib/whois/parsers/whois.register.si.rb".freeze, "lib/whois/parsers/whois.registre.ma.rb".freeze, "lib/whois/parsers/whois.registro.br.rb".freeze, "lib/whois/parsers/whois.registry.gy.rb".freeze, "lib/whois/parsers/whois.registry.hm.rb".freeze, "lib/whois/parsers/whois.registry.om.rb".freeze, "lib/whois/parsers/whois.registry.qa.rb".freeze, "lib/whois/parsers/whois.ripe.net.rb".freeze, "lib/whois/parsers/whois.rnids.rs.rb".freeze, "lib/whois/parsers/whois.rotld.ro.rb".freeze, "lib/whois/parsers/whois.rrpproxy.net.rb".freeze, "lib/whois/parsers/whois.safenames.net.rb".freeze, "lib/whois/parsers/whois.schlund.info.rb".freeze, "lib/whois/parsers/whois.sgnic.sg.rb".freeze, "lib/whois/parsers/whois.sk-nic.sk.rb".freeze, "lib/whois/parsers/whois.smallregistry.net.rb".freeze, "lib/whois/parsers/whois.srs.net.nz.rb".freeze, "lib/whois/parsers/whois.sx.rb".freeze, "lib/whois/parsers/whois.tcinet.ru.rb".freeze, "lib/whois/parsers/whois.thnic.co.th.rb".freeze, "lib/whois/parsers/whois.tld.ee.rb".freeze, "lib/whois/parsers/whois.tld.sy.rb".freeze, "lib/whois/parsers/whois.tonic.to.rb".freeze, "lib/whois/parsers/whois.tucows.com.rb".freeze, "lib/whois/parsers/whois.twnic.net.tw.rb".freeze, "lib/whois/parsers/whois.tznic.or.tz.rb".freeze, "lib/whois/parsers/whois.ua.rb".freeze, "lib/whois/parsers/whois.udag.net.rb".freeze, "lib/whois/parsers/whois.uniregistry.net.rb".freeze, "lib/whois/parsers/whois.usp.ac.fj.rb".freeze, "lib/whois/parsers/whois.verisign-grs.com.rb".freeze, "lib/whois/parsers/whois.website.ws.rb".freeze, "lib/whois/parsers/whois.wildwestdomains.com.rb".freeze, "lib/whois/parsers/whois.yoursrs.com.rb".freeze, "lib/whois/parsers/whois.za.net.rb".freeze, "lib/whois/parsers/whois.za.org.rb".freeze, "lib/whois/parsers/whois1.nic.bi.rb".freeze, "lib/whois/parsers/za_central_registry.rb".freeze, "lib/whois/safe_record.rb".freeze, "lib/whois/scanners/base.rb".freeze, "lib/whois/scanners/base_afilias.rb".freeze, "lib/whois/scanners/base_cocca2.rb".freeze, "lib/whois/scanners/base_icann_compliant.rb".freeze, "lib/whois/scanners/base_iisse.rb".freeze, "lib/whois/scanners/base_shared1.rb".freeze, "lib/whois/scanners/base_shared2.rb".freeze, "lib/whois/scanners/base_shared3.rb".freeze, "lib/whois/scanners/base_whoisd.rb".freeze, "lib/whois/scanners/iana.rb".freeze, "lib/whois/scanners/scannable.rb".freeze, "lib/whois/scanners/verisign.rb".freeze, "lib/whois/scanners/whois.ati.tn.rb".freeze, "lib/whois/scanners/whois.auda.org.au.rb".freeze, "lib/whois/scanners/whois.cctld.by.rb".freeze, "lib/whois/scanners/whois.centralnic.com.rb".freeze, "lib/whois/scanners/whois.cira.ca.rb".freeze, "lib/whois/scanners/whois.cnnic.cn.rb".freeze, "lib/whois/scanners/whois.denic.de.rb".freeze, "lib/whois/scanners/whois.dns.hr.rb".freeze, "lib/whois/scanners/whois.domainregistry.ie.rb".freeze, "lib/whois/scanners/whois.fi.rb".freeze, "lib/whois/scanners/whois.nc.rb".freeze, "lib/whois/scanners/whois.nic.cz.rb".freeze, "lib/whois/scanners/whois.nic.it.rb".freeze, "lib/whois/scanners/whois.pir.org.rb".freeze, "lib/whois/scanners/whois.rnids.rs.rb".freeze, "lib/whois/scanners/whois.smallregistry.net.rb".freeze, "lib/whois/scanners/whois.srs.net.nz.rb".freeze, "lib/whois/scanners/whois.sx.rb".freeze, "lib/whois/scanners/whois.tld.ee.rb".freeze, "lib/whois/scanners/whois.tucows.com.rb".freeze, "lib/whois/scanners/whois.yoursrs.com.rb".freeze, "whois-parser.gemspec".freeze] s.homepage = "https://whoisrb.org/".freeze s.licenses = ["MIT".freeze] s.required_ruby_version = Gem::Requirement.new(">= 2.0.0".freeze)