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
@@ -10,7 +10,7 @@
10
10
 
11
11
 
12
12
  #status
13
- should: %s == nil
13
+ should: %s == []
14
14
 
15
15
  #available?
16
16
  should: %s == true
@@ -9,6 +9,13 @@
9
9
  should: %s == "D2244233-LROR"
10
10
 
11
11
 
12
+ #referral_whois
13
+ should: %s raise_error(Whois::PropertyNotSupported)
14
+
15
+ #referral_url
16
+ should: %s raise_error(Whois::PropertyNotSupported)
17
+
18
+
12
19
  #status
13
20
  should: %s == ["CLIENT DELETE PROHIBITED", "CLIENT TRANSFER PROHIBITED", "CLIENT UPDATE PROHIBITED"]
14
21
 
@@ -36,7 +43,7 @@
36
43
  should: %s be_a(_registrar)
37
44
  should: %s.id == "R37-LROR"
38
45
  should: %s.name == "MarkMonitor Inc."
39
- should: %s.organization == nil
46
+ should: %s.organization == "MarkMonitor Inc."
40
47
  should: %s.url == nil
41
48
 
42
49
  #registrant_contacts
@@ -1,2 +1,2 @@
1
1
  #status
2
- should: %s == nil
2
+ should: %s == []
@@ -1,2 +1,2 @@
1
1
  #status
2
- should: %s == [ "client delete prohibited", "client renew prohibited", "client transfer prohibited", "client update prohibited" ]
2
+ should: %s == ["CLIENT DELETE PROHIBITED", "CLIENT RENEW PROHIBITED", "CLIENT TRANSFER PROHIBITED", "CLIENT UPDATE PROHIBITED"]
@@ -1,2 +1,2 @@
1
1
  #status
2
- should: %s == %w( ok )
2
+ should: %s == ["OK"]
@@ -1,6 +1,24 @@
1
- #status
1
+ #disclaimer
2
+ should: %s == nil
3
+
4
+
5
+ #domain
6
+ should: %s == nil
7
+
8
+ #domain_id
2
9
  should: %s == nil
3
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
+
19
+ #status
20
+ should: %s == []
21
+
4
22
  #available?
5
23
  should: %s == true
6
24
 
@@ -21,6 +39,18 @@
21
39
  #registrar
22
40
  should: %s == nil
23
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
+
24
54
 
25
55
  #nameservers
26
56
  should: %s be_a(Array)
@@ -1,5 +1,23 @@
1
+ #disclaimer
2
+ should: %s == "Access to .IN WHOIS information is provided to assist persons in determining the contents of a domain name registration record in the .IN registry database. The data in this record is provided by .IN Registry for informational purposes only, and .IN 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. .IN 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.in"
7
+
8
+ #domain_id
9
+ should: %s == "D21089-AFIN"
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
- should: %s == %w( ok )
20
+ should: %s == ["OK"]
3
21
 
4
22
  #available?
5
23
  should: %s == false
@@ -23,6 +41,57 @@
23
41
  should: %s.id == "R84-AFIN"
24
42
  should: %s.name == "Mark Monitor"
25
43
 
44
+ #registrant_contacts
45
+ should: %s be_a(Array)
46
+ should: %s have(1).items
47
+ should: %s[0] be_a(_contact)
48
+ should: %s[0].type == Whois::Record::Contact::TYPE_REGISTRANT
49
+ should: %s[0].id == "EPPIPM-143349"
50
+ should: %s[0].name == "Admin DNS"
51
+ should: %s[0].organization == "GOOGLE INC."
52
+ should: %s[0].address == "1600 Amphitheatre Parkway"
53
+ should: %s[0].city == "Mountain View, CA"
54
+ should: %s[0].zip == "94043"
55
+ should: %s[0].state == ""
56
+ should: %s[0].country_code == "US"
57
+ should: %s[0].phone == "+1.6503300100"
58
+ should: %s[0].fax == ""
59
+ should: %s[0].email == "dns-admin@google.com"
60
+
61
+ #admin_contacts
62
+ should: %s be_a(Array)
63
+ should: %s have(1).items
64
+ should: %s[0] be_a(_contact)
65
+ should: %s[0].type == Whois::Record::Contact::TYPE_ADMIN
66
+ should: %s[0].id == "EPPIPM-143349"
67
+ should: %s[0].name == "Admin DNS"
68
+ should: %s[0].organization == "GOOGLE INC."
69
+ should: %s[0].address == "1600 Amphitheatre Parkway"
70
+ should: %s[0].city == "Mountain View, CA"
71
+ should: %s[0].zip == "94043"
72
+ should: %s[0].state == ""
73
+ should: %s[0].country_code == "US"
74
+ should: %s[0].phone == "+1.6503300100"
75
+ should: %s[0].fax == ""
76
+ should: %s[0].email == "dns-admin@google.com"
77
+
78
+ #technical_contacts
79
+ should: %s be_a(Array)
80
+ should: %s have(1).items
81
+ should: %s[0] be_a(_contact)
82
+ should: %s[0].type == Whois::Record::Contact::TYPE_TECHNICAL
83
+ should: %s[0].id == "EPPIPM-143349"
84
+ should: %s[0].name == "Admin DNS"
85
+ should: %s[0].organization == "GOOGLE INC."
86
+ should: %s[0].address == "1600 Amphitheatre Parkway"
87
+ should: %s[0].city == "Mountain View, CA"
88
+ should: %s[0].zip == "94043"
89
+ should: %s[0].state == ""
90
+ should: %s[0].country_code == "US"
91
+ should: %s[0].phone == "+1.6503300100"
92
+ should: %s[0].fax == ""
93
+ should: %s[0].email == "dns-admin@google.com"
94
+
26
95
 
27
96
  #nameservers
28
97
  should: %s be_a(Array)
@@ -0,0 +1,56 @@
1
+ #disclaimer
2
+ should: %s raise_error(Whois::PropertyNotSupported)
3
+
4
+
5
+ #domain
6
+ should: %s == nil
7
+
8
+ #domain_id
9
+ should: %s raise_error(Whois::PropertyNotSupported)
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
+
19
+ #status
20
+ should: %s == []
21
+
22
+ #available?
23
+ should: %s == true
24
+
25
+ #registered?
26
+ should: %s == false
27
+
28
+
29
+ #created_on
30
+ should: %s raise_error(Whois::PropertyNotSupported)
31
+
32
+ #updated_on
33
+ should: %s raise_error(Whois::PropertyNotSupported)
34
+
35
+ #expires_on
36
+ should: %s raise_error(Whois::PropertyNotSupported)
37
+
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 raise_error(Whois::PropertyNotSupported)
48
+
49
+ #technical_contacts
50
+ should: %s be_a(Array)
51
+ should: %s == []
52
+
53
+
54
+ #nameservers
55
+ should: %s be_a(Array)
56
+ should: %s == []
@@ -0,0 +1,91 @@
1
+ #disclaimer
2
+ should: %s raise_error(Whois::PropertyNotSupported)
3
+
4
+
5
+ #domain
6
+ should: %s == "qtel.com.qa"
7
+
8
+ #domain_id
9
+ should: %s raise_error(Whois::PropertyNotSupported)
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
+
19
+ #status
20
+ should: %s == ["serverDeleteProhibited (Legacy)", "serverRenewProhibited (Legacy)", "serverTransferProhibited (Legacy)"]
21
+
22
+ #available?
23
+ should: %s == false
24
+
25
+ #registered?
26
+ should: %s == true
27
+
28
+
29
+ #created_on
30
+ should: %s raise_error(Whois::PropertyNotSupported)
31
+
32
+ #updated_on
33
+ should: %s raise_error(Whois::PropertyNotSupported)
34
+
35
+ #expires_on
36
+ should: %s raise_error(Whois::PropertyNotSupported)
37
+
38
+
39
+ #registrar
40
+ should: %s be_a(_registrar)
41
+ should: %s.id == "QatarTelecom"
42
+ should: %s.name == "Qatar Telecom (Qtel) Q. S. C"
43
+ should: %s.organization == "Qatar Telecom (Qtel) Q. S. C"
44
+
45
+ #registrant_contacts
46
+ should: %s be_a(Array)
47
+ should: %s have(1).items
48
+ should: %s[0] be_a(_contact)
49
+ should: %s[0].type == Whois::Record::Contact::TYPE_REGISTRANT
50
+ should: %s[0].id == "QT11734"
51
+ should: %s[0].name == "DNS Administrator - Qtel Internet Services"
52
+ should: %s[0].organization == nil
53
+ should: %s[0].address == nil
54
+ should: %s[0].city == nil
55
+ should: %s[0].zip == nil
56
+ should: %s[0].state == nil
57
+ should: %s[0].country_code == nil
58
+ should: %s[0].phone == nil
59
+ should: %s[0].fax == nil
60
+ should: %s[0].email == "Visit portal.registry.qa for Web based WhoIs"
61
+
62
+ #admin_contacts
63
+ should: %s raise_error(Whois::PropertyNotSupported)
64
+
65
+ #technical_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_TECHNICAL
70
+ should: %s[0].id == "QT11734"
71
+ should: %s[0].name == "DNS Administrator - Qtel Internet Services"
72
+ should: %s[0].organization == nil
73
+ should: %s[0].address == nil
74
+ should: %s[0].city == nil
75
+ should: %s[0].zip == nil
76
+ should: %s[0].state == nil
77
+ should: %s[0].country_code == nil
78
+ should: %s[0].phone == nil
79
+ should: %s[0].fax == nil
80
+ should: %s[0].email == "Visit portal.registry.qa for Web based WhoIs"
81
+
82
+
83
+ #nameservers
84
+ should: %s be_a(Array)
85
+ should: %s have(2).items
86
+ should: %s[0] be_a(_nameserver)
87
+ should: %s[0].name == "ns1.qtel.com.qa"
88
+ should: %s[0].ipv4 == "212.77.203.185"
89
+ should: %s[1] be_a(_nameserver)
90
+ should: %s[1].name == "ns2.qtel.com.qa"
91
+ should: %s[1].ipv4 == "213.130.113.101"
@@ -0,0 +1,23 @@
1
+ Domain Name: qtel.com.qa
2
+ Registrar ID: QatarTelecom
3
+ Registrar Name: Qatar Telecom (Qtel) Q. S. C
4
+ Status: serverDeleteProhibited (Legacy)
5
+ Status: serverRenewProhibited (Legacy)
6
+ Status: serverTransferProhibited (Legacy)
7
+
8
+ Registrant: Qatar Telecom (Qtel) Q.S.C
9
+ Eligibility Type: Legacy
10
+ Eligibility ID: Legacy Domain Name
11
+
12
+ Registrant Contact ID: QT11734
13
+ Registrant Contact Name: DNS Administrator - Qtel Internet Services
14
+ Registrant Contact Email: Visit portal.registry.qa for Web based WhoIs
15
+
16
+ Tech Contact ID: QT11734
17
+ Tech Contact Name: DNS Administrator - Qtel Internet Services
18
+ Tech Contact Email: Visit portal.registry.qa for Web based WhoIs
19
+
20
+ Name Server: ns1.qtel.com.qa
21
+ Name Server IP: 212.77.203.185
22
+ Name Server: ns2.qtel.com.qa
23
+ Name Server IP: 213.130.113.101
@@ -0,0 +1,12 @@
1
+ #nameservers
2
+ should: %s be_a(Array)
3
+ should: %s have(3).items
4
+ should: %s[0] be_a(_nameserver)
5
+ should: %s[0].name == "dnssec1.singnet.com.sg"
6
+ should: %s[0].ipv4 == "165.21.83.11"
7
+ should: %s[1] be_a(_nameserver)
8
+ should: %s[1].name == "dnssec2.singnet.com.sg"
9
+ should: %s[1].ipv4 == "195.13.10.226"
10
+ should: %s[2] be_a(_nameserver)
11
+ should: %s[2].name == "dnssec3.singnet.com.sg"
12
+ should: %s[2].ipv4 == "165.21.100.11"
@@ -0,0 +1,94 @@
1
+
2
+ ----------------------------------------------------------------------
3
+ SGNIC WHOIS Server
4
+ ----------------------------------------------------------------------
5
+
6
+ The following data is provided for information purposes only.
7
+
8
+ Registrar: SINGNET PTE LTD
9
+ Registrant: CANON SINGAPORE PTE. LTD.
10
+
11
+ Domain Name: CANON.COM.SG
12
+ Creation Date: 09-Jan-1996 00:00:00
13
+ Expiration Date: 09-Jan-2012 00:00:00
14
+ Domain Status: OK
15
+
16
+
17
+ Owner/Main Contact:
18
+
19
+ Name: CANON SINGAPORE PTE. LTD. (SGNIC-ORGCA65520)
20
+ Registered Address(line1): 1 HarbourFront Avenue
21
+ Registered Address(line2): #08-01
22
+ Registered Address(line3):
23
+ Registered State:
24
+ Registered Country: SG
25
+ Registered Postalcode: 098632
26
+
27
+
28
+
29
+ Administrative Contact:
30
+
31
+ Name: CANON SINGAPORE PTE. LTD. (SGNIC-ORGCA65520)
32
+ Registered Address(line1): 1 HarbourFront Avenue
33
+ Registered Address(line2): #08-01
34
+ Registered Address(line3):
35
+ Registered State:
36
+ Registered Country: SG
37
+ Registered Postalcode: 098632
38
+
39
+
40
+
41
+ Technical Contact:
42
+
43
+ Name: SingNet Hostmaster (SGNIC-PERSI60492)
44
+ Registered Address(line1): 2 STIRLING ROAD
45
+ Registered Address(line2): QUEENSTOWN TELEPHONE EXCHANGE
46
+ Registered Address(line3): #03-00
47
+ Registered State:
48
+ Registered Country: SG
49
+ Registered Postalcode: 148943
50
+
51
+ Telephone: 67845922
52
+ Facsimile: 64753273
53
+ EMAIL: hostmaster@singnet.com.sg
54
+
55
+
56
+
57
+ Billing Contact:
58
+
59
+ Name: NEE CHUEN LAI (SGNIC-PERNE65521)
60
+ Registered Address(line1): 1 HarbourFront Avenue
61
+ Registered Address(line2): #08-01
62
+ Registered Address(line3):
63
+ Registered State:
64
+ Registered Country: SG
65
+ Registered Postalcode: 098632
66
+
67
+
68
+
69
+ Name Servers:
70
+ DNSSEC1.SINGNET.COM.SG (165.21.83.11)
71
+ DNSSEC2.SINGNET.COM.SG (195.13.10.226)
72
+ DNSSEC3.SINGNET.COM.SG (165.21.100.11)
73
+
74
+
75
+
76
+
77
+ Note: With immediate effect from 1 Jun 2005 email address and phone numbers for Registrant,
78
+ Administrative Contact and Billing Contact will not be shown in the above WHOIS results.
79
+ This move is in-line with national and global efforts to curb SPAM.
80
+
81
+ Technical Contact details will still be available for troubleshooting of technical problems
82
+ which may be time-sensitive.
83
+
84
+ Any party who has legitimate reason to obtain email address or phone numbers of the domain
85
+ name contacts can either (1) obtain the contacts from the domain name's website (usually by
86
+ prepending 'www.' in front of the domain name or perform an Internet search using the
87
+ organization name or; (2) Request the information from SGNIC via email (dnq@sgnic.sg),
88
+ stating the reasons.
89
+
90
+
91
+
92
+
93
+
94
+