whois 2.0.7 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. data/CHANGELOG.rdoc +84 -10
  2. data/Rakefile +0 -7
  3. data/lib/core_ext.rb +9 -45
  4. data/lib/core_ext/array/extract_options.rb +29 -0
  5. data/lib/core_ext/array/wrap.rb +48 -0
  6. data/lib/core_ext/class/attribute.rb +115 -0
  7. data/lib/core_ext/date_time/conversions.rb +15 -0
  8. data/lib/core_ext/kernel/singleton_class.rb +13 -0
  9. data/lib/core_ext/module/remove_method.rb +16 -0
  10. data/lib/whois.rb +0 -4
  11. data/lib/whois/definitions/tlds.rb +10 -5
  12. data/lib/whois/record.rb +0 -3
  13. data/lib/whois/record/parser.rb +3 -3
  14. data/lib/whois/record/parser/NOTES.txt +15 -8
  15. data/lib/whois/record/parser/base.rb +12 -35
  16. data/lib/whois/record/parser/base_afilias.rb +156 -0
  17. data/lib/whois/record/parser/example.rb +8 -4
  18. data/lib/whois/record/parser/jobswhois.verisign-grs.com.rb +2 -2
  19. data/lib/whois/record/parser/scanners/afilias.rb +13 -4
  20. data/lib/whois/record/parser/{features → scanners}/ast.rb +1 -1
  21. data/lib/whois/record/parser/scanners/base.rb +9 -0
  22. data/lib/whois/record/parser/scanners/cnnic.rb +2 -2
  23. data/lib/whois/record/parser/scanners/{whoisbiz.rb → whois.biz.rb} +2 -8
  24. data/lib/whois/record/parser/scanners/whois.denic.de.rb +117 -0
  25. data/lib/whois/record/parser/scanners/whois.nic.hu.rb +187 -0
  26. data/lib/whois/record/parser/scanners/{whoisit.rb → whois.nic.it.rb} +2 -2
  27. data/lib/whois/record/parser/scanners/whois.registry.qa.rb +54 -0
  28. data/lib/whois/record/parser/scanners/whois.tld.ee.rb +41 -0
  29. data/lib/whois/record/parser/whois.aero.rb +8 -46
  30. data/lib/whois/record/parser/whois.afilias-grs.info.rb +2 -51
  31. data/lib/whois/record/parser/whois.afilias.info.rb +2 -126
  32. data/lib/whois/record/parser/whois.biz.rb +6 -6
  33. data/lib/whois/record/parser/whois.cnnic.cn.rb +5 -5
  34. data/lib/whois/record/parser/whois.crsnic.net.rb +2 -2
  35. data/lib/whois/record/parser/whois.denic.de.rb +8 -105
  36. data/lib/whois/record/parser/whois.dotmobiregistry.net.rb +2 -51
  37. data/lib/whois/record/parser/whois.godaddy.com.rb +138 -0
  38. data/lib/whois/record/parser/whois.iana.org.rb +2 -2
  39. data/lib/whois/record/parser/whois.markmonitor.com.rb +13 -12
  40. data/lib/whois/record/parser/whois.meregistry.net.rb +45 -30
  41. data/lib/whois/record/parser/whois.nic.af.rb +6 -2
  42. data/lib/whois/record/parser/whois.nic.ag.rb +2 -51
  43. data/lib/whois/record/parser/whois.nic.asia.rb +47 -38
  44. data/lib/whois/record/parser/whois.nic.cc.rb +2 -2
  45. data/lib/whois/record/parser/whois.nic.hu.rb +7 -174
  46. data/lib/whois/record/parser/whois.nic.it.rb +6 -6
  47. data/lib/whois/record/parser/whois.nic.name.rb +1 -5
  48. data/lib/whois/record/parser/whois.nic.travel.rb +4 -12
  49. data/lib/whois/record/parser/whois.nic.tv.rb +2 -2
  50. data/lib/whois/record/parser/whois.nic.us.rb +4 -4
  51. data/lib/whois/record/parser/whois.nic.xxx.rb +5 -112
  52. data/lib/whois/record/parser/whois.publicinterestregistry.net.rb +8 -168
  53. data/lib/whois/record/parser/whois.registry.in.rb +2 -60
  54. data/lib/whois/record/parser/whois.registry.qa.rb +117 -0
  55. data/lib/whois/record/parser/whois.ripn.net.rb +4 -84
  56. data/lib/whois/record/parser/whois.sgnic.sg.rb +13 -5
  57. data/lib/whois/record/parser/whois.tcinet.ru.rb +102 -0
  58. data/lib/whois/record/parser/whois.tld.ee.rb +5 -26
  59. data/lib/whois/record/parser/whois.tonic.to.rb +0 -8
  60. data/lib/whois/server/adapters/base.rb +23 -10
  61. data/lib/whois/version.rb +2 -2
  62. data/spec/fixtures/responses/FIND.txt +1 -0
  63. data/spec/fixtures/responses/whois.aero/status_available.expected +35 -1
  64. data/spec/fixtures/responses/whois.aero/status_registered.expected +77 -1
  65. data/spec/fixtures/responses/whois.afilias-grs.info/bz/status_available.expected +34 -0
  66. data/spec/fixtures/responses/whois.afilias-grs.info/bz/status_registered.expected +39 -2
  67. data/spec/fixtures/responses/whois.afilias-grs.info/bz/status_registered.txt +2 -82
  68. data/spec/fixtures/responses/whois.afilias-grs.info/gi/status_available.expected +34 -0
  69. data/spec/fixtures/responses/whois.afilias-grs.info/gi/status_registered.expected +76 -0
  70. data/spec/fixtures/responses/whois.afilias-grs.info/hn/status_available.expected +34 -0
  71. data/spec/fixtures/responses/whois.afilias-grs.info/hn/status_registered.expected +76 -0
  72. data/spec/fixtures/responses/whois.afilias-grs.info/lc/status_available.expected +34 -0
  73. data/spec/fixtures/responses/whois.afilias-grs.info/lc/status_registered.expected +76 -0
  74. data/spec/fixtures/responses/whois.afilias-grs.info/mn/status_available.expected +34 -0
  75. data/spec/fixtures/responses/whois.afilias-grs.info/mn/status_registered.expected +76 -0
  76. data/spec/fixtures/responses/whois.afilias-grs.info/sc/status_available.expected +57 -0
  77. data/spec/fixtures/responses/whois.afilias-grs.info/sc/status_registered.expected +76 -0
  78. data/spec/fixtures/responses/whois.afilias-grs.info/vc/status_available.expected +34 -0
  79. data/spec/fixtures/responses/whois.afilias-grs.info/vc/status_registered.expected +76 -0
  80. data/spec/fixtures/responses/whois.dotmobiregistry.net/status_available.expected +35 -0
  81. data/spec/fixtures/responses/whois.dotmobiregistry.net/status_available.txt +1 -25
  82. data/spec/fixtures/responses/whois.dotmobiregistry.net/status_registered.expected +76 -0
  83. data/spec/fixtures/responses/whois.educause.edu/{properties_updated_on_unknown.expected → property_updated_on_unknown.expected} +0 -0
  84. data/spec/fixtures/responses/whois.educause.edu/{properties_updated_on_unknown.txt → property_updated_on_unknown.txt} +0 -0
  85. data/spec/fixtures/responses/whois.godaddy.com/status_registered.expected +87 -0
  86. data/spec/fixtures/responses/whois.godaddy.com/status_registered.txt +60 -0
  87. data/spec/fixtures/responses/whois.markmonitor.com/{properties_empty_contacts.expected → property_contacts_are_blank.expected} +0 -0
  88. data/spec/fixtures/responses/whois.markmonitor.com/{properties_empty_contacts.txt → property_contacts_are_blank.txt} +0 -0
  89. data/spec/fixtures/responses/whois.meregistry.net/{property_nameservers_is_missing.expected → property_nameservers_is_blank.expected} +0 -0
  90. data/spec/fixtures/responses/whois.meregistry.net/{property_nameservers_is_missing.txt → property_nameservers_is_blank.txt} +0 -0
  91. data/spec/fixtures/responses/whois.meregistry.net/status_available.expected +34 -0
  92. data/spec/fixtures/responses/whois.meregistry.net/status_registered.expected +77 -0
  93. data/spec/fixtures/responses/whois.meregistry.net/status_registered.txt +1 -1
  94. data/spec/fixtures/responses/{whois.nic.asia/property_status_client_delete_prohibited.expected → whois.nic.af/property_status_active.expected} +0 -0
  95. data/spec/fixtures/responses/whois.nic.af/property_status_active.txt +56 -0
  96. data/spec/fixtures/responses/{whois.nic.asia/property_status_client_transfer_prohibited.expected → whois.nic.af/property_status_delegated.expected} +0 -0
  97. data/spec/fixtures/responses/whois.nic.af/property_status_delegated.txt +46 -0
  98. data/spec/fixtures/responses/whois.nic.af/property_status_not_registered.expected +8 -0
  99. data/spec/fixtures/responses/whois.nic.af/property_status_not_registered.txt +13 -0
  100. data/spec/fixtures/responses/whois.nic.ag/status_available.expected +34 -0
  101. data/spec/fixtures/responses/whois.nic.ag/status_registered.expected +76 -0
  102. data/spec/fixtures/responses/whois.nic.asia/property_status_multiple.expected +8 -0
  103. data/spec/fixtures/responses/whois.nic.asia/{property_status_client_delete_prohibited.txt → property_status_multiple.txt} +0 -0
  104. data/spec/fixtures/responses/whois.nic.asia/property_status_single.expected +8 -0
  105. data/spec/fixtures/responses/whois.nic.asia/{property_status_client_transfer_prohibited.txt → property_status_single.txt} +76 -76
  106. data/spec/fixtures/responses/whois.nic.asia/status_available.expected +35 -1
  107. data/spec/fixtures/responses/whois.nic.asia/status_registered.expected +78 -1
  108. data/spec/fixtures/responses/whois.nic.dz/{status_available.expected → dz/status_available.expected} +0 -0
  109. data/spec/fixtures/responses/whois.nic.dz/{status_available.txt → dz/status_available.txt} +0 -0
  110. data/spec/fixtures/responses/whois.nic.dz/{status_registered.expected → dz/status_registered.expected} +0 -0
  111. data/spec/fixtures/responses/whois.nic.dz/{status_registered.txt → dz/status_registered.txt} +0 -0
  112. data/spec/fixtures/responses/whois.nic.name/status_available.expected +1 -1
  113. data/spec/fixtures/responses/whois.nic.name/status_registered.expected +1 -1
  114. data/spec/fixtures/responses/whois.nic.travel/property_status_multiple.expected +2 -0
  115. data/spec/fixtures/responses/whois.nic.travel/property_status_multiple.txt +83 -0
  116. data/spec/fixtures/responses/whois.nic.travel/property_status_single.expected +2 -0
  117. data/spec/fixtures/responses/whois.nic.travel/property_status_single.txt +75 -0
  118. data/spec/fixtures/responses/whois.nic.travel/status_available.expected +1 -1
  119. data/spec/fixtures/responses/whois.nic.travel/status_registered.expected +1 -1
  120. data/spec/fixtures/responses/whois.nic.xxx/property_updated_on_blank.expected +2 -0
  121. data/spec/fixtures/responses/whois.nic.xxx/property_updated_on_blank.txt +98 -0
  122. data/spec/fixtures/responses/whois.nic.xxx/status_registered.expected +45 -46
  123. data/spec/fixtures/responses/whois.nic.xxx/status_registered.txt +61 -61
  124. data/spec/fixtures/responses/whois.publicinterestregistry.net/status_available.expected +1 -1
  125. data/spec/fixtures/responses/whois.publicinterestregistry.net/status_registered.expected +8 -1
  126. data/spec/fixtures/responses/whois.registry.in/property_status_missing.expected +1 -1
  127. data/spec/fixtures/responses/whois.registry.in/property_status_multiple.expected +1 -1
  128. data/spec/fixtures/responses/whois.registry.in/property_status_ok.expected +1 -1
  129. data/spec/fixtures/responses/whois.registry.in/status_available.expected +31 -1
  130. data/spec/fixtures/responses/whois.registry.in/status_registered.expected +70 -1
  131. data/spec/fixtures/responses/whois.registry.qa/qa/status_available.expected +56 -0
  132. data/spec/fixtures/responses/whois.registry.qa/qa/status_available.txt +1 -0
  133. data/spec/fixtures/responses/whois.registry.qa/qa/status_registered.expected +91 -0
  134. data/spec/fixtures/responses/whois.registry.qa/qa/status_registered.txt +23 -0
  135. data/spec/fixtures/responses/whois.sgnic.sg/property_nameservers_schema_1_with_ip.expected +12 -0
  136. data/spec/fixtures/responses/whois.sgnic.sg/property_nameservers_schema_1_with_ip.txt +94 -0
  137. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/ru/property_nameservers_with_ip.expected +0 -0
  138. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/ru/property_nameservers_with_ip.txt +0 -0
  139. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/ru/status_available.expected +0 -0
  140. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/ru/status_available.txt +0 -0
  141. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/ru/status_registered.expected +0 -0
  142. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/ru/status_registered.txt +0 -0
  143. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/su/status_available.expected +0 -0
  144. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/su/status_available.txt +0 -0
  145. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/su/status_registered.expected +0 -0
  146. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/su/status_registered.txt +0 -0
  147. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/xn--p1ai/status_available.expected +0 -0
  148. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/xn--p1ai/status_available.txt +0 -0
  149. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/xn--p1ai/status_registered.expected +0 -0
  150. data/spec/fixtures/responses/{whois.ripn.net → whois.tcinet.ru}/xn--p1ai/status_registered.txt +0 -0
  151. data/spec/integration_spec.rb +29 -12
  152. data/spec/support/helpers/spec_helper.rb +0 -10
  153. data/spec/tlds +1 -1
  154. data/spec/whois/record/parser/base_spec.rb +23 -51
  155. data/spec/whois/record/parser/responses/whois.aero/status_available_spec.rb +49 -1
  156. data/spec/whois/record/parser/responses/whois.aero/status_registered_spec.rb +91 -1
  157. data/spec/whois/record/parser/responses/whois.afilias-grs.info/bz/status_available_spec.rb +48 -0
  158. data/spec/whois/record/parser/responses/whois.afilias-grs.info/bz/status_registered_spec.rb +53 -2
  159. data/spec/whois/record/parser/responses/whois.afilias-grs.info/gi/status_available_spec.rb +48 -0
  160. data/spec/whois/record/parser/responses/whois.afilias-grs.info/gi/status_registered_spec.rb +90 -0
  161. data/spec/whois/record/parser/responses/whois.afilias-grs.info/hn/status_available_spec.rb +48 -0
  162. data/spec/whois/record/parser/responses/whois.afilias-grs.info/hn/status_registered_spec.rb +90 -0
  163. data/spec/whois/record/parser/responses/whois.afilias-grs.info/lc/status_available_spec.rb +48 -0
  164. data/spec/whois/record/parser/responses/whois.afilias-grs.info/lc/status_registered_spec.rb +90 -0
  165. data/spec/whois/record/parser/responses/whois.afilias-grs.info/mn/status_available_spec.rb +48 -0
  166. data/spec/whois/record/parser/responses/whois.afilias-grs.info/mn/status_registered_spec.rb +90 -0
  167. data/spec/whois/record/parser/responses/whois.afilias-grs.info/sc/status_available_spec.rb +48 -0
  168. data/spec/whois/record/parser/responses/whois.afilias-grs.info/sc/status_registered_spec.rb +90 -0
  169. data/spec/whois/record/parser/responses/whois.afilias-grs.info/vc/status_available_spec.rb +48 -0
  170. data/spec/whois/record/parser/responses/whois.afilias-grs.info/vc/status_registered_spec.rb +90 -0
  171. data/spec/whois/record/parser/responses/whois.dotmobiregistry.net/status_available_spec.rb +48 -0
  172. data/spec/whois/record/parser/responses/whois.dotmobiregistry.net/status_registered_spec.rb +90 -0
  173. data/spec/whois/record/parser/responses/whois.educause.edu/{properties_updated_on_unknown_spec.rb → property_updated_on_unknown_spec.rb} +3 -3
  174. data/spec/whois/record/parser/responses/whois.godaddy.com/status_registered_spec.rb +131 -0
  175. data/spec/whois/record/parser/responses/whois.markmonitor.com/{properties_empty_contacts_spec.rb → property_contacts_are_blank_spec.rb} +3 -3
  176. data/spec/whois/record/parser/responses/whois.meregistry.net/{property_nameservers_is_missing_spec.rb → property_nameservers_is_blank_spec.rb} +3 -3
  177. data/spec/whois/record/parser/responses/whois.meregistry.net/status_available_spec.rb +48 -0
  178. data/spec/whois/record/parser/responses/whois.meregistry.net/status_registered_spec.rb +91 -0
  179. data/spec/whois/record/parser/responses/whois.nic.af/property_status_active_spec.rb +39 -0
  180. data/spec/whois/record/parser/responses/whois.nic.af/property_status_delegated_spec.rb +39 -0
  181. data/spec/whois/record/parser/responses/whois.nic.af/property_status_not_registered_spec.rb +39 -0
  182. data/spec/whois/record/parser/responses/whois.nic.ag/status_available_spec.rb +48 -0
  183. data/spec/whois/record/parser/responses/whois.nic.ag/status_registered_spec.rb +90 -0
  184. data/spec/whois/record/parser/responses/whois.nic.asia/{property_status_client_delete_prohibited_spec.rb → property_status_multiple_spec.rb} +4 -4
  185. data/spec/whois/record/parser/responses/whois.nic.asia/{property_status_client_transfer_prohibited_spec.rb → property_status_single_spec.rb} +4 -4
  186. data/spec/whois/record/parser/responses/whois.nic.asia/status_available_spec.rb +49 -1
  187. data/spec/whois/record/parser/responses/whois.nic.asia/status_registered_spec.rb +92 -1
  188. data/spec/whois/record/parser/responses/whois.nic.dz/{status_available_spec.rb → dz/status_available_spec.rb} +2 -2
  189. data/spec/whois/record/parser/responses/whois.nic.dz/{status_registered_spec.rb → dz/status_registered_spec.rb} +2 -2
  190. data/spec/whois/record/parser/responses/whois.nic.name/status_available_spec.rb +1 -1
  191. data/spec/whois/record/parser/responses/whois.nic.name/status_registered_spec.rb +1 -1
  192. data/spec/whois/record/parser/responses/whois.nic.travel/property_status_multiple_spec.rb +29 -0
  193. data/spec/whois/record/parser/responses/whois.nic.travel/property_status_single_spec.rb +29 -0
  194. data/spec/whois/record/parser/responses/whois.nic.travel/status_available_spec.rb +1 -1
  195. data/spec/whois/record/parser/responses/whois.nic.travel/status_registered_spec.rb +1 -1
  196. data/spec/whois/record/parser/responses/whois.nic.xxx/property_updated_on_blank_spec.rb +29 -0
  197. data/spec/whois/record/parser/responses/whois.nic.xxx/status_registered_spec.rb +45 -46
  198. data/spec/whois/record/parser/responses/whois.publicinterestregistry.net/status_available_spec.rb +1 -1
  199. data/spec/whois/record/parser/responses/whois.publicinterestregistry.net/status_registered_spec.rb +11 -1
  200. data/spec/whois/record/parser/responses/whois.registry.in/property_status_missing_spec.rb +1 -1
  201. data/spec/whois/record/parser/responses/whois.registry.in/property_status_multiple_spec.rb +1 -1
  202. data/spec/whois/record/parser/responses/whois.registry.in/property_status_ok_spec.rb +1 -1
  203. data/spec/whois/record/parser/responses/whois.registry.in/status_available_spec.rb +44 -1
  204. data/spec/whois/record/parser/responses/whois.registry.in/status_registered_spec.rb +83 -1
  205. data/spec/whois/record/parser/responses/whois.registry.qa/qa/status_available_spec.rb +107 -0
  206. data/spec/whois/record/parser/responses/whois.registry.qa/qa/status_registered_spec.rb +142 -0
  207. data/spec/whois/record/parser/responses/whois.sgnic.sg/property_nameservers_schema_1_with_ip_spec.rb +39 -0
  208. data/spec/whois/record/parser/responses/{whois.ripn.net → whois.tcinet.ru}/ru/property_nameservers_with_ip_spec.rb +4 -4
  209. data/spec/whois/record/parser/responses/{whois.ripn.net/su → whois.tcinet.ru/ru}/status_available_spec.rb +4 -4
  210. data/spec/whois/record/parser/responses/{whois.ripn.net → whois.tcinet.ru}/ru/status_registered_spec.rb +4 -4
  211. data/spec/whois/record/parser/responses/{whois.ripn.net/ru → whois.tcinet.ru/su}/status_available_spec.rb +4 -4
  212. data/spec/whois/record/parser/responses/{whois.ripn.net → whois.tcinet.ru}/su/status_registered_spec.rb +4 -4
  213. data/spec/whois/record/parser/responses/{whois.ripn.net → whois.tcinet.ru}/xn--p1ai/status_available_spec.rb +4 -4
  214. data/spec/whois/record/parser/responses/{whois.ripn.net → whois.tcinet.ru}/xn--p1ai/status_registered_spec.rb +4 -4
  215. data/spec/whois/record_spec.rb +4 -4
  216. data/spec/whois/server/adapters/afilias_spec.rb +3 -3
  217. data/spec/whois/server/adapters/base_spec.rb +50 -10
  218. data/spec/whois/server/adapters/formatted_spec.rb +4 -4
  219. data/spec/whois/server/adapters/pir_spec.rb +3 -3
  220. data/spec/whois/server/adapters/standard_spec.rb +4 -4
  221. data/spec/whois/server/adapters/verisign_spec.rb +7 -7
  222. data/whois.gemspec +4 -4
  223. metadata +101 -57
  224. data/lib/whois/answer.rb +0 -14
@@ -1,3 +1,21 @@
1
+ #disclaimer
2
+ should: %s == "Access to CCTLD WHOIS information is provided to assist persons in determining the contents of a domain name registration record in the Afilias registry database. The data in this record is provided by Afilias Limited for informational purposes only, and Afilias does not guarantee its accuracy. This service is intended only for query-based access. You agree that you will use this data only for lawful purposes and that, under no circumstances will you use this data to: (a) allow, enable, or otherwise support the transmission by e-mail, telephone, or facsimile of mass unsolicited, commercial advertising or solicitations to entities other than the data recipient's own existing customers; or (b) enable high volume, automated, electronic processes that send queries or data to the systems of Registry Operator, a Registrar, or Afilias except as reasonably necessary to register domain names or modify existing registrations. All rights reserved. Afilias reserves the right to modify these terms at any time. By submitting this query, you agree to abide by this policy."
3
+
4
+
5
+ #domain
6
+ should: %s == "google.sc"
7
+
8
+ #domain_id
9
+ should: %s == "D47234-LRCC"
10
+
11
+
12
+ #referral_whois
13
+ should: %s raise_error(Whois::PropertyNotSupported)
14
+
15
+ #referral_url
16
+ should: %s raise_error(Whois::PropertyNotSupported)
17
+
18
+
1
19
  #status
2
20
  should: %s == ["CLIENT DELETE PROHIBITED", "CLIENT TRANSFER PROHIBITED", "CLIENT UPDATE PROHIBITED"]
3
21
 
@@ -21,6 +39,64 @@
21
39
  should: %s == Time.parse("2010-02-03 19:19:12 UTC")
22
40
 
23
41
 
42
+ #registrar
43
+ should: %s be_a(_registrar)
44
+ should: %s.id == "R22-LRCC"
45
+ should: %s.name == "MarkMonitor, Inc."
46
+ should: %s.organization == "MarkMonitor, Inc."
47
+
48
+ #registrant_contacts
49
+ should: %s be_a(Array)
50
+ should: %s have(1).items
51
+ should: %s[0] be_a(_contact)
52
+ should: %s[0].type == Whois::Record::Contact::TYPE_REGISTRANT
53
+ should: %s[0].id == "AGRS-129819"
54
+ should: %s[0].name == "DNS Admin"
55
+ should: %s[0].organization == "Google Inc."
56
+ should: %s[0].address == "1600 Amphitheatre Parkway"
57
+ should: %s[0].city == "Mountain View"
58
+ should: %s[0].zip == "94043"
59
+ should: %s[0].state == "CA"
60
+ should: %s[0].country_code == "US"
61
+ should: %s[0].phone == "+1.6502530000"
62
+ should: %s[0].fax == "+1.6506188571"
63
+ should: %s[0].email == "dns-admin@google.com"
64
+
65
+ #admin_contacts
66
+ should: %s be_a(Array)
67
+ should: %s have(1).items
68
+ should: %s[0] be_a(_contact)
69
+ should: %s[0].type == Whois::Record::Contact::TYPE_ADMIN
70
+ should: %s[0].id == "AGRS-129293"
71
+ should: %s[0].name == "CCOPS"
72
+ should: %s[0].organization == "MarkMonitor"
73
+ should: %s[0].address == "PMB 155\n10400 Overland Rd."
74
+ should: %s[0].city == "Boise"
75
+ should: %s[0].zip == "83709-1433"
76
+ should: %s[0].state == "ID"
77
+ should: %s[0].country_code == "US"
78
+ should: %s[0].phone == "+1.20838957"
79
+ should: %s[0].fax == "+1.20838957"
80
+ should: %s[0].email == "ccops@markmonitor.com"
81
+
82
+ #technical_contacts
83
+ should: %s be_a(Array)
84
+ should: %s have(1).items
85
+ should: %s[0] be_a(_contact)
86
+ should: %s[0].type == Whois::Record::Contact::TYPE_TECHNICAL
87
+ should: %s[0].id == "AGRS-129293"
88
+ should: %s[0].name == "CCOPS"
89
+ should: %s[0].organization == "MarkMonitor"
90
+ should: %s[0].address == "PMB 155\n10400 Overland Rd."
91
+ should: %s[0].city == "Boise"
92
+ should: %s[0].zip == "83709-1433"
93
+ should: %s[0].state == "ID"
94
+ should: %s[0].country_code == "US"
95
+ should: %s[0].phone == "+1.20838957"
96
+ should: %s[0].fax == "+1.20838957"
97
+ should: %s[0].email == "ccops@markmonitor.com"
98
+
99
+
24
100
  #nameservers
25
101
  should: %s be_a(Array)
26
102
  should: %s have(2).items
@@ -1,3 +1,21 @@
1
+ #disclaimer
2
+ should: %s == nil
3
+
4
+
5
+ #domain
6
+ should: %s == nil
7
+
8
+ #domain_id
9
+ should: %s == nil
10
+
11
+
12
+ #referral_whois
13
+ should: %s raise_error(Whois::PropertyNotSupported)
14
+
15
+ #referral_url
16
+ should: %s raise_error(Whois::PropertyNotSupported)
17
+
18
+
1
19
  #status
2
20
  should: %s == []
3
21
 
@@ -18,6 +36,22 @@
18
36
  should: %s == nil
19
37
 
20
38
 
39
+ #registrar
40
+ should: %s == nil
41
+
42
+ #registrant_contacts
43
+ should: %s be_a(Array)
44
+ should: %s == []
45
+
46
+ #admin_contacts
47
+ should: %s be_a(Array)
48
+ should: %s == []
49
+
50
+ #technical_contacts
51
+ should: %s be_a(Array)
52
+ should: %s == []
53
+
54
+
21
55
  #nameservers
22
56
  should: %s be_a(Array)
23
57
  should: %s == []
@@ -1,3 +1,21 @@
1
+ #disclaimer
2
+ should: %s == "Access to CCTLD WHOIS information is provided to assist persons in determining the contents of a domain name registration record in the Afilias registry database. The data in this record is provided by Afilias Limited for informational purposes only, and Afilias does not guarantee its accuracy. This service is intended only for query-based access. You agree that you will use this data only for lawful purposes and that, under no circumstances will you use this data to: (a) allow, enable, or otherwise support the transmission by e-mail, telephone, or facsimile of mass unsolicited, commercial advertising or solicitations to entities other than the data recipient's own existing customers; or (b) enable high volume, automated, electronic processes that send queries or data to the systems of Registry Operator, a Registrar, or Afilias except as reasonably necessary to register domain names or modify existing registrations. All rights reserved. Afilias reserves the right to modify these terms at any time. By submitting this query, you agree to abide by this policy."
3
+
4
+
5
+ #domain
6
+ should: %s == "google.vc"
7
+
8
+ #domain_id
9
+ should: %s == "D133753-LRCC"
10
+
11
+
12
+ #referral_whois
13
+ should: %s raise_error(Whois::PropertyNotSupported)
14
+
15
+ #referral_url
16
+ should: %s raise_error(Whois::PropertyNotSupported)
17
+
18
+
1
19
  #status
2
20
  should: %s == ["CLIENT DELETE PROHIBITED", "CLIENT TRANSFER PROHIBITED", "CLIENT UPDATE PROHIBITED"]
3
21
 
@@ -21,6 +39,64 @@
21
39
  should: %s == Time.parse("2011-06-29 00:58:18 UTC")
22
40
 
23
41
 
42
+ #registrar
43
+ should: %s be_a(_registrar)
44
+ should: %s.id == "R22-LRCC"
45
+ should: %s.name == "MarkMonitor, Inc."
46
+ should: %s.organization == "MarkMonitor, Inc."
47
+
48
+ #registrant_contacts
49
+ should: %s be_a(Array)
50
+ should: %s have(1).items
51
+ should: %s[0] be_a(_contact)
52
+ should: %s[0].type == Whois::Record::Contact::TYPE_REGISTRANT
53
+ should: %s[0].id == "mmr-2383"
54
+ should: %s[0].name == "DNS Admin"
55
+ should: %s[0].organization == "Google Inc."
56
+ should: %s[0].address == "1600 Amphitheatre Parkway"
57
+ should: %s[0].city == "Mountain View"
58
+ should: %s[0].zip == "94043"
59
+ should: %s[0].state == "CA"
60
+ should: %s[0].country_code == "US"
61
+ should: %s[0].phone == "+1.6502530000"
62
+ should: %s[0].fax == "+1.6506188571"
63
+ should: %s[0].email == "dns-admin@google.com"
64
+
65
+ #admin_contacts
66
+ should: %s be_a(Array)
67
+ should: %s have(1).items
68
+ should: %s[0] be_a(_contact)
69
+ should: %s[0].type == Whois::Record::Contact::TYPE_ADMIN
70
+ should: %s[0].id == "mmr-2383"
71
+ should: %s[0].name == "DNS Admin"
72
+ should: %s[0].organization == "Google Inc."
73
+ should: %s[0].address == "1600 Amphitheatre Parkway"
74
+ should: %s[0].city == "Mountain View"
75
+ should: %s[0].zip == "94043"
76
+ should: %s[0].state == "CA"
77
+ should: %s[0].country_code == "US"
78
+ should: %s[0].phone == "+1.6502530000"
79
+ should: %s[0].fax == "+1.6506188571"
80
+ should: %s[0].email == "dns-admin@google.com"
81
+
82
+ #technical_contacts
83
+ should: %s be_a(Array)
84
+ should: %s have(1).items
85
+ should: %s[0] be_a(_contact)
86
+ should: %s[0].type == Whois::Record::Contact::TYPE_TECHNICAL
87
+ should: %s[0].id == "mmr-2383"
88
+ should: %s[0].name == "DNS Admin"
89
+ should: %s[0].organization == "Google Inc."
90
+ should: %s[0].address == "1600 Amphitheatre Parkway"
91
+ should: %s[0].city == "Mountain View"
92
+ should: %s[0].zip == "94043"
93
+ should: %s[0].state == "CA"
94
+ should: %s[0].country_code == "US"
95
+ should: %s[0].phone == "+1.6502530000"
96
+ should: %s[0].fax == "+1.6506188571"
97
+ should: %s[0].email == "dns-admin@google.com"
98
+
99
+
24
100
  #nameservers
25
101
  should: %s be_a(Array)
26
102
  should: %s have(4).items
@@ -1,3 +1,21 @@
1
+ #disclaimer
2
+ should: %s == nil
3
+
4
+
5
+ #domain
6
+ should: %s == nil
7
+
8
+ #domain_id
9
+ should: %s == nil
10
+
11
+
12
+ #referral_whois
13
+ should: %s raise_error(Whois::PropertyNotSupported)
14
+
15
+ #referral_url
16
+ should: %s raise_error(Whois::PropertyNotSupported)
17
+
18
+
1
19
  #status
2
20
  should: %s == []
3
21
 
@@ -13,10 +31,27 @@
13
31
 
14
32
  #updated_on
15
33
  should: %s == nil
34
+
16
35
  #expires_on
17
36
  should: %s == nil
18
37
 
19
38
 
39
+ #registrar
40
+ should: %s == nil
41
+
42
+ #registrant_contacts
43
+ should: %s be_a(Array)
44
+ should: %s == []
45
+
46
+ #admin_contacts
47
+ should: %s be_a(Array)
48
+ should: %s == []
49
+
50
+ #technical_contacts
51
+ should: %s be_a(Array)
52
+ should: %s == []
53
+
54
+
20
55
  #nameservers
21
56
  should: %s be_a(Array)
22
57
  should: %s == []
@@ -1,25 +1 @@
1
- Not found: u34jedzcq.biz
2
-
3
- >>>> Whois database was last updated on: Fri Dec 25 15:41:59 GMT 2009 <<<<
4
-
5
- NeuStar, Inc., the Registry Operator for .BIZ, has collected this information
6
- for the WHOIS database through an ICANN-Accredited Registrar. This information
7
- is provided to you for informational purposes only and is designed to assist
8
- persons in determining contents of a domain name registration record in the
9
- NeuStar registry database. NeuStar makes this information available to you
10
- "as is" and does not guarantee its accuracy. By submitting a WHOIS query, you
11
- agree that you will use this data only for lawful purposes and that, under no
12
- circumstances will you use this data: (1) to allow, enable, or otherwise
13
- support the transmission of mass unsolicited, commercial advertising or
14
- solicitations via direct mail, electronic mail, or by telephone; (2) in
15
- contravention of any applicable data and privacy protection acts; or (3) to
16
- enable high volume, automated, electronic processes that apply to the registry
17
- (or its systems). Compilation, repackaging, dissemination, or other use of the
18
- WHOIS database in its entirety, or of a substantial portion thereof, is not
19
- allowed without NeuStar's prior written permission. NeuStar reserves the
20
- right to modify or change these conditions at any time without prior or
21
- subsequent notification of any kind. By executing this query, in any manner
22
- whatsoever, you agree to abide by these terms.
23
-
24
- NOTE: FAILURE TO LOCATE A RECORD IN THE WHOIS DATABASE IS NOT INDICATIVE
25
- OF THE AVAILABILITY OF A DOMAIN NAME.
1
+ NOT FOUND
@@ -1,3 +1,21 @@
1
+ #disclaimer
2
+ should: %s == "mTLD WHOIS LEGAL STATEMENT AND TERMS & CONDITIONS: The WHOIS service offered by mTLD and the access to the records in the mTLD WHOIS database are provided for information purposes only. It allows persons to check whether a specific domain name is still available or not and to obtain information related to the registration records of existing domain names. mTLD cannot, under any circumstances, be held liable in case the stored information would prove to be wrong, incomplete, or not accurate in any sense. By submitting a query you agree not to use the information made available to: allow, enable or otherwise support the transmission of unsolicited, commercial advertising or other solicitations whether via email or otherwise; target advertising in any possible way; or to cause nuisance in any possible way to the registrants by sending (whether by automated, electronic processes capable of enabling high volumes or other possible means) messages to them. Without prejudice to the above, it is explicitly forbidden to extract, copy and/or use or re-utilise in any form and by any means (electronically or not) the whole or a quantitatively or qualitatively substantial part of the contents of the WHOIS database without prior and explicit permission by mTLD, nor in any attempt hereof, or to apply automated, electronic processes to mTLD (or its systems). You agree that any reproduction and/or transmission of data for commercial purposes will always be considered as the extraction of a substantial part of the content of the WHOIS database. By submitting the query you agree to abide by this policy and accept that mTLD can take measures to limit the use of its WHOIS services in order to protect the privacy of its registrants or the integrity of the database."
3
+
4
+
5
+ #domain
6
+ should: %s == "google.mobi"
7
+
8
+ #domain_id
9
+ should: %s == "D117-MOBI"
10
+
11
+
12
+ #referral_whois
13
+ should: %s raise_error(Whois::PropertyNotSupported)
14
+
15
+ #referral_url
16
+ should: %s raise_error(Whois::PropertyNotSupported)
17
+
18
+
1
19
  #status
2
20
  should: %s == ["CLIENT DELETE PROHIBITED", "CLIENT TRANSFER PROHIBITED", "CLIENT UPDATE PROHIBITED"]
3
21
 
@@ -21,6 +39,64 @@
21
39
  should: %s == Time.parse("2010-05-11 21:08:42 UTC")
22
40
 
23
41
 
42
+ #registrar
43
+ should: %s be_a(_registrar)
44
+ should: %s.id == "292"
45
+ should: %s.name == "MarkMonitor Inc"
46
+ should: %s.organization == "MarkMonitor Inc"
47
+
48
+ #registrant_contacts
49
+ should: %s be_a(Array)
50
+ should: %s have(1).items
51
+ should: %s[0] be_a(_contact)
52
+ should: %s[0].type == Whois::Record::Contact::TYPE_REGISTRANT
53
+ should: %s[0].id == "mmr-14290820"
54
+ should: %s[0].name == "DNS Admin"
55
+ should: %s[0].organization == "Google Inc."
56
+ should: %s[0].address == "1600 Amphitheatre Parkway"
57
+ should: %s[0].city == "Mountain View"
58
+ should: %s[0].zip == "94043"
59
+ should: %s[0].state == "CA"
60
+ should: %s[0].country_code == "US"
61
+ should: %s[0].phone == "+1.6506234000"
62
+ should: %s[0].fax == "+1.6506188571"
63
+ should: %s[0].email == "dns-admin@google.com"
64
+
65
+ #admin_contacts
66
+ should: %s be_a(Array)
67
+ should: %s have(1).items
68
+ should: %s[0] be_a(_contact)
69
+ should: %s[0].type == Whois::Record::Contact::TYPE_ADMIN
70
+ should: %s[0].id == "mmr-14290820"
71
+ should: %s[0].name == "DNS Admin"
72
+ should: %s[0].organization == "Google Inc."
73
+ should: %s[0].address == "1600 Amphitheatre Parkway"
74
+ should: %s[0].city == "Mountain View"
75
+ should: %s[0].zip == "94043"
76
+ should: %s[0].state == "CA"
77
+ should: %s[0].country_code == "US"
78
+ should: %s[0].phone == "+1.6506234000"
79
+ should: %s[0].fax == "+1.6506188571"
80
+ should: %s[0].email == "dns-admin@google.com"
81
+
82
+ #technical_contacts
83
+ should: %s be_a(Array)
84
+ should: %s have(1).items
85
+ should: %s[0] be_a(_contact)
86
+ should: %s[0].type == Whois::Record::Contact::TYPE_TECHNICAL
87
+ should: %s[0].id == "mmr-14290820"
88
+ should: %s[0].name == "DNS Admin"
89
+ should: %s[0].organization == "Google Inc."
90
+ should: %s[0].address == "1600 Amphitheatre Parkway"
91
+ should: %s[0].city == "Mountain View"
92
+ should: %s[0].zip == "94043"
93
+ should: %s[0].state == "CA"
94
+ should: %s[0].country_code == "US"
95
+ should: %s[0].phone == "+1.6506234000"
96
+ should: %s[0].fax == "+1.6506188571"
97
+ should: %s[0].email == "dns-admin@google.com"
98
+
99
+
24
100
  #nameservers
25
101
  should: %s be_a(Array)
26
102
  should: %s have(4).items
@@ -0,0 +1,87 @@
1
+ #status
2
+ should: %s raise_error(Whois::PropertyNotSupported)
3
+
4
+ #available?
5
+ should: %s == false
6
+
7
+ #registered?
8
+ should: %s == true
9
+
10
+
11
+ #created_on
12
+ should: %s be_a(Time)
13
+ should: %s == Time.parse("02-Mar-99")
14
+
15
+ #updated_on
16
+ should: %s be_a(Time)
17
+ should: %s == Time.parse("21-Oct-10")
18
+
19
+ #expires_on
20
+ should: %s be_a(Time)
21
+ should: %s == Time.parse("02-Mar-19")
22
+
23
+
24
+ #registrar
25
+ should: %s be_a(_registrar)
26
+ should: %s.id == nil
27
+ should: %s.name == "GoDaddy.com, Inc."
28
+ should: %s.url == "http://www.godaddy.com"
29
+
30
+ #registrant_contacts
31
+ should: %s be_a(Array)
32
+ should: %s have(1).items
33
+ should: %s[0] be_a(_contact)
34
+ should: %s[0].type == Whois::Record::Contact::TYPE_REGISTRANT
35
+ should: %s[0].name == "GoDaddy.com, Inc."
36
+ should: %s[0].organization == ""
37
+ should: %s[0].address == "14455 N Hayden Rd Suite 219"
38
+ should: %s[0].city == "Scottsdale"
39
+ should: %s[0].zip == "85260"
40
+ should: %s[0].state == "Arizona"
41
+ should: %s[0].country == "United States"
42
+ should: %s[0].phone == nil
43
+ should: %s[0].fax == nil
44
+ should: %s[0].email == nil
45
+
46
+ #admin_contacts
47
+ should: %s be_a(Array)
48
+ should: %s have(1).items
49
+ should: %s[0] be_a(_contact)
50
+ should: %s[0].type == Whois::Record::Contact::TYPE_ADMIN
51
+ should: %s[0].name == "GoDaddy.com, Inc., GoDaddy.com, Inc."
52
+ should: %s[0].organization == "GoDaddy.com, Inc."
53
+ should: %s[0].address == "14455 N Hayden Rd Suite 219"
54
+ should: %s[0].city == "Scottsdale"
55
+ should: %s[0].zip == "85260"
56
+ should: %s[0].state == "Arizona"
57
+ should: %s[0].country == "United States"
58
+ should: %s[0].phone == "+1.4805058800"
59
+ should: %s[0].fax == "+1.4805058844"
60
+ should: %s[0].email == "dns@jomax.net"
61
+
62
+ #technical_contacts
63
+ should: %s be_a(Array)
64
+ should: %s have(1).items
65
+ should: %s[0] be_a(_contact)
66
+ should: %s[0].type == Whois::Record::Contact::TYPE_TECHNICAL
67
+ should: %s[0].name == "GoDaddy.com, Inc., GoDaddy.com, Inc."
68
+ should: %s[0].organization == "GoDaddy.com, Inc."
69
+ should: %s[0].address == "14455 N Hayden Rd Suite 219"
70
+ should: %s[0].city == "Scottsdale"
71
+ should: %s[0].zip == "85260"
72
+ should: %s[0].state == "Arizona"
73
+ should: %s[0].country == "United States"
74
+ should: %s[0].phone == "+1.4805058800"
75
+ should: %s[0].fax == "+1.4805058844"
76
+ should: %s[0].email == "dns@jomax.net"
77
+
78
+
79
+ #nameservers
80
+ should: %s be_a(Array)
81
+ should: %s have(3).items
82
+ should: %s[0] be_a(_nameserver)
83
+ should: %s[0].name == "CNS1.SECURESERVER.NET"
84
+ should: %s[1] be_a(_nameserver)
85
+ should: %s[1].name == "CNS2.SECURESERVER.NET"
86
+ should: %s[2] be_a(_nameserver)
87
+ should: %s[2].name == "CNS3.SECURESERVER.NET"