whois 2.2.0 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1036) hide show
  1. data/.rspec +1 -0
  2. data/LICENSE +1 -1
  3. data/Rakefile +7 -10
  4. data/lib/core_ext/date_time/conversions.rb +1 -1
  5. data/lib/whois.rb +1 -1
  6. data/lib/whois/client.rb +1 -1
  7. data/lib/whois/definitions/tlds.rb +13 -1
  8. data/lib/whois/errors.rb +1 -1
  9. data/lib/whois/record.rb +1 -1
  10. data/lib/whois/record/contact.rb +1 -1
  11. data/lib/whois/record/nameserver.rb +1 -1
  12. data/lib/whois/record/parser.rb +1 -1
  13. data/lib/whois/record/parser/base.rb +3 -3
  14. data/lib/whois/record/parser/base_afilias.rb +22 -22
  15. data/lib/whois/record/parser/base_cocca.rb +1 -1
  16. data/lib/whois/record/parser/blank.rb +1 -1
  17. data/lib/whois/record/parser/example.rb +1 -1
  18. data/lib/whois/record/parser/jobswhois.verisign-grs.com.rb +1 -5
  19. data/lib/whois/record/parser/kero.yachay.pe.rb +1 -1
  20. data/lib/whois/record/parser/saudinic.net.sa.rb +1 -1
  21. data/lib/whois/record/parser/scanners/afilias.rb +17 -28
  22. data/lib/whois/record/parser/scanners/ast.rb +7 -5
  23. data/lib/whois/record/parser/scanners/base.rb +45 -30
  24. data/lib/whois/record/parser/scanners/iana.rb +12 -9
  25. data/lib/whois/record/parser/scanners/verisign.rb +66 -36
  26. data/lib/whois/record/parser/scanners/whois.biz.rb +16 -29
  27. data/lib/whois/record/parser/scanners/whois.centralnic.com.rb +52 -0
  28. data/lib/whois/record/parser/scanners/whois.cnnic.cn.rb +46 -0
  29. data/lib/whois/record/parser/scanners/whois.denic.de.rb +49 -42
  30. data/lib/whois/record/parser/scanners/whois.nic.hu.rb +40 -47
  31. data/lib/whois/record/parser/scanners/whois.nic.it.rb +54 -64
  32. data/lib/whois/record/parser/scanners/whois.registry.qa.rb +9 -22
  33. data/lib/whois/record/parser/scanners/whois.smallregistry.net.rb +62 -0
  34. data/lib/whois/record/parser/scanners/whois.tld.ee.rb +17 -6
  35. data/lib/whois/record/parser/whois.adamsnames.tc.rb +1 -1
  36. data/lib/whois/record/parser/whois.aeda.net.ae.rb +1 -1
  37. data/lib/whois/record/parser/whois.aero.rb +1 -1
  38. data/lib/whois/record/parser/whois.afilias-grs.info.rb +1 -1
  39. data/lib/whois/record/parser/whois.afilias.info.rb +1 -1
  40. data/lib/whois/record/parser/whois.ai.rb +1 -1
  41. data/lib/whois/record/parser/whois.arnes.si.rb +1 -1
  42. data/lib/whois/record/parser/whois.audns.net.au.rb +4 -1
  43. data/lib/whois/record/parser/whois.ausregistry.net.au.rb +1 -1
  44. data/lib/whois/record/parser/whois.biz.rb +24 -28
  45. data/lib/whois/record/parser/whois.cat.rb +1 -1
  46. data/lib/whois/record/parser/whois.cctld.uz.rb +1 -1
  47. data/lib/whois/record/parser/whois.centralnic.com.rb +87 -61
  48. data/lib/whois/record/parser/whois.centralnic.net.rb +4 -3
  49. data/lib/whois/record/parser/whois.cira.ca.rb +1 -1
  50. data/lib/whois/record/parser/whois.cnnic.cn.rb +19 -23
  51. data/lib/whois/record/parser/whois.cnnic.net.cn.rb +1 -1
  52. data/lib/whois/record/parser/whois.co.ca.rb +1 -1
  53. data/lib/whois/record/parser/whois.co.pl.rb +1 -1
  54. data/lib/whois/record/parser/whois.co.ug.rb +1 -1
  55. data/lib/whois/record/parser/whois.coza.net.za.rb +1 -1
  56. data/lib/whois/record/parser/whois.crsnic.net.rb +15 -11
  57. data/lib/whois/record/parser/whois.denic.de.rb +10 -13
  58. data/lib/whois/record/parser/whois.dk-hostmaster.dk.rb +1 -1
  59. data/lib/whois/record/parser/whois.dns.be.rb +7 -2
  60. data/lib/whois/record/parser/whois.dns.lu.rb +1 -1
  61. data/lib/whois/record/parser/whois.dns.pl.rb +1 -1
  62. data/lib/whois/record/parser/whois.dns.pt.rb +1 -1
  63. data/lib/whois/record/parser/whois.domain-registry.nl.rb +21 -10
  64. data/lib/whois/record/parser/whois.domain.kg.rb +1 -1
  65. data/lib/whois/record/parser/whois.domainregistry.ie.rb +1 -1
  66. data/lib/whois/record/parser/whois.domainregistry.my.rb +1 -1
  67. data/lib/whois/record/parser/whois.domreg.lt.rb +1 -1
  68. data/lib/whois/record/parser/whois.dot.tk.rb +1 -1
  69. data/lib/whois/record/parser/whois.dotmobiregistry.net.rb +1 -1
  70. data/lib/whois/record/parser/whois.educause.edu.rb +24 -4
  71. data/lib/whois/record/parser/whois.eenet.ee.rb +1 -1
  72. data/lib/whois/record/parser/whois.eu.org.rb +1 -1
  73. data/lib/whois/record/parser/whois.eu.rb +1 -1
  74. data/lib/whois/record/parser/whois.ficora.fi.rb +1 -1
  75. data/lib/whois/record/parser/whois.gg.rb +1 -1
  76. data/lib/whois/record/parser/whois.godaddy.com.rb +44 -45
  77. data/lib/whois/record/parser/whois.gov.za.rb +1 -1
  78. data/lib/whois/record/parser/whois.hkdnr.net.hk.rb +1 -1
  79. data/lib/whois/record/parser/whois.hkirc.hk.rb +1 -1
  80. data/lib/whois/record/parser/whois.iam.net.ma.rb +1 -1
  81. data/lib/whois/record/parser/whois.iana.org.rb +23 -27
  82. data/lib/whois/record/parser/whois.in.ua.rb +1 -1
  83. data/lib/whois/record/parser/whois.isnic.is.rb +1 -1
  84. data/lib/whois/record/parser/whois.isoc.org.il.rb +9 -7
  85. data/lib/whois/record/parser/whois.ja.net.rb +1 -1
  86. data/lib/whois/record/parser/whois.je.rb +1 -1
  87. data/lib/whois/record/parser/whois.jprs.jp.rb +18 -11
  88. data/lib/whois/record/parser/whois.kenic.or.ke.rb +1 -1
  89. data/lib/whois/record/parser/whois.kr.rb +1 -1
  90. data/lib/whois/record/parser/whois.markmonitor.com.rb +34 -34
  91. data/lib/whois/record/parser/whois.meregistry.net.rb +29 -29
  92. data/lib/whois/record/parser/whois.museum.rb +1 -1
  93. data/lib/whois/record/parser/whois.na-nic.com.na.rb +1 -1
  94. data/lib/whois/record/parser/whois.net.ua.rb +1 -1
  95. data/lib/whois/record/parser/whois.netcom.cm.rb +1 -1
  96. data/lib/whois/record/parser/whois.nic-se.se.rb +1 -1
  97. data/lib/whois/record/parser/whois.nic.ac.rb +1 -1
  98. data/lib/whois/record/parser/whois.nic.af.rb +1 -1
  99. data/lib/whois/record/parser/whois.nic.ag.rb +1 -1
  100. data/lib/whois/record/parser/whois.nic.am.rb +1 -1
  101. data/lib/whois/record/parser/whois.nic.as.rb +1 -1
  102. data/lib/whois/record/parser/whois.nic.asia.rb +13 -13
  103. data/lib/whois/record/parser/whois.nic.at.rb +1 -1
  104. data/lib/whois/record/parser/whois.nic.bo.rb +1 -1
  105. data/lib/whois/record/parser/whois.nic.cc.rb +1 -5
  106. data/lib/whois/record/parser/whois.nic.cd.rb +1 -1
  107. data/lib/whois/record/parser/whois.nic.ch.rb +1 -1
  108. data/lib/whois/record/parser/whois.nic.ci.rb +1 -1
  109. data/lib/whois/record/parser/whois.nic.ck.rb +1 -1
  110. data/lib/whois/record/parser/whois.nic.cl.rb +1 -1
  111. data/lib/whois/record/parser/whois.nic.co.rb +1 -1
  112. data/lib/whois/record/parser/whois.nic.coop.rb +1 -1
  113. data/lib/whois/record/parser/whois.nic.cx.rb +1 -1
  114. data/lib/whois/record/parser/whois.nic.cz.rb +1 -1
  115. data/lib/whois/record/parser/whois.nic.dz.rb +1 -1
  116. data/lib/whois/record/parser/whois.nic.ec.rb +1 -1
  117. data/lib/whois/record/parser/whois.nic.fr.rb +35 -18
  118. data/lib/whois/record/parser/whois.nic.gl.rb +1 -1
  119. data/lib/whois/record/parser/whois.nic.gov.rb +1 -1
  120. data/lib/whois/record/parser/whois.nic.gs.rb +1 -1
  121. data/lib/whois/record/parser/whois.nic.ht.rb +1 -1
  122. data/lib/whois/record/parser/whois.nic.hu.rb +38 -41
  123. data/lib/whois/record/parser/whois.nic.im.rb +1 -1
  124. data/lib/whois/record/parser/whois.nic.io.rb +1 -1
  125. data/lib/whois/record/parser/whois.nic.ir.rb +1 -1
  126. data/lib/whois/record/parser/whois.nic.it.rb +34 -39
  127. data/lib/whois/record/parser/whois.nic.ki.rb +1 -1
  128. data/lib/whois/record/parser/whois.nic.kz.rb +1 -1
  129. data/lib/whois/record/parser/whois.nic.la.rb +5 -51
  130. data/lib/whois/record/parser/whois.nic.li.rb +1 -1
  131. data/lib/whois/record/parser/whois.nic.lv.rb +6 -7
  132. data/lib/whois/record/parser/whois.nic.ly.rb +1 -1
  133. data/lib/whois/record/parser/whois.nic.md.rb +1 -1
  134. data/lib/whois/record/parser/whois.nic.mg.rb +1 -1
  135. data/lib/whois/record/parser/whois.nic.ms.rb +1 -1
  136. data/lib/whois/record/parser/whois.nic.mu.rb +1 -1
  137. data/lib/whois/record/parser/whois.nic.mx.rb +1 -1
  138. data/lib/whois/record/parser/whois.nic.name.rb +1 -1
  139. data/lib/whois/record/parser/whois.nic.net.nf.rb +20 -3
  140. data/lib/whois/record/parser/whois.nic.net.ng.rb +1 -1
  141. data/lib/whois/record/parser/whois.nic.net.sa.rb +1 -1
  142. data/lib/whois/record/parser/whois.nic.net.sb.rb +1 -1
  143. data/lib/whois/record/parser/whois.nic.nu.rb +15 -4
  144. data/lib/whois/record/parser/whois.nic.or.kr.rb +4 -3
  145. data/lib/whois/record/parser/whois.nic.org.uy.rb +1 -1
  146. data/lib/whois/record/parser/whois.nic.pr.rb +1 -1
  147. data/lib/whois/record/parser/whois.nic.priv.at.rb +1 -1
  148. data/lib/whois/record/parser/whois.nic.sh.rb +1 -1
  149. data/lib/whois/record/parser/whois.nic.sl.rb +1 -1
  150. data/lib/whois/record/parser/whois.nic.sm.rb +1 -1
  151. data/lib/whois/record/parser/whois.nic.sn.rb +12 -8
  152. data/lib/whois/record/parser/whois.nic.so.rb +1 -1
  153. data/lib/whois/record/parser/whois.nic.st.rb +1 -1
  154. data/lib/whois/record/parser/whois.nic.tel.rb +1 -1
  155. data/lib/whois/record/parser/whois.nic.tl.rb +1 -1
  156. data/lib/whois/record/parser/whois.nic.tm.rb +1 -1
  157. data/lib/whois/record/parser/whois.nic.tr.rb +1 -1
  158. data/lib/whois/record/parser/whois.nic.travel.rb +1 -1
  159. data/lib/whois/record/parser/whois.nic.tv.rb +1 -5
  160. data/lib/whois/record/parser/whois.nic.uk.rb +4 -1
  161. data/lib/whois/record/parser/whois.nic.us.rb +1 -1
  162. data/lib/whois/record/parser/whois.nic.ve.rb +1 -1
  163. data/lib/whois/record/parser/whois.nic.xxx.rb +1 -1
  164. data/lib/whois/record/parser/whois.norid.no.rb +1 -1
  165. data/lib/whois/record/parser/whois.org.za.rb +1 -1
  166. data/lib/whois/record/parser/whois.pandi.or.id.rb +1 -1
  167. data/lib/whois/record/parser/whois.pnina.ps.rb +1 -1
  168. data/lib/whois/record/parser/whois.publicinterestregistry.net.rb +1 -1
  169. data/lib/whois/record/parser/whois.register.bg.rb +1 -1
  170. data/lib/whois/record/parser/whois.registro.br.rb +1 -1
  171. data/lib/whois/record/parser/whois.registry.gy.rb +1 -1
  172. data/lib/whois/record/parser/whois.registry.hm.rb +1 -1
  173. data/lib/whois/record/parser/whois.registry.in.rb +1 -1
  174. data/lib/whois/record/parser/whois.registry.qa.rb +13 -13
  175. data/lib/whois/record/parser/whois.registrypro.pro.rb +1 -1
  176. data/lib/whois/record/parser/whois.ripe.net.rb +1 -1
  177. data/lib/whois/record/parser/whois.ripn.net.rb +1 -1
  178. data/lib/whois/record/parser/whois.rotld.ro.rb +1 -1
  179. data/lib/whois/record/parser/whois.samoanic.ws.rb +1 -1
  180. data/lib/whois/record/parser/whois.sgnic.sg.rb +1 -1
  181. data/lib/whois/record/parser/whois.sk-nic.sk.rb +22 -15
  182. data/lib/whois/record/parser/whois.smallregistry.net.rb +132 -0
  183. data/lib/whois/record/parser/whois.srs.net.nz.rb +1 -1
  184. data/lib/whois/record/parser/whois.tcinet.ru.rb +1 -1
  185. data/lib/whois/record/parser/whois.thnic.co.th.rb +1 -1
  186. data/lib/whois/record/parser/whois.tld.ee.rb +13 -16
  187. data/lib/whois/record/parser/whois.tonic.to.rb +1 -1
  188. data/lib/whois/record/parser/whois.twnic.net.tw.rb +1 -1
  189. data/lib/whois/record/parser/whois.tznic.or.tz.rb +1 -1
  190. data/lib/whois/record/parser/whois.usp.ac.fj.rb +1 -1
  191. data/lib/whois/record/parser/whois.za.net.rb +1 -1
  192. data/lib/whois/record/parser/whois.za.org.rb +1 -1
  193. data/lib/whois/record/part.rb +1 -1
  194. data/lib/whois/record/registrar.rb +1 -1
  195. data/lib/whois/record/super_struct.rb +1 -1
  196. data/lib/whois/server.rb +43 -43
  197. data/lib/whois/server/adapters/afilias.rb +1 -1
  198. data/lib/whois/server/adapters/arpa.rb +1 -1
  199. data/lib/whois/server/adapters/base.rb +1 -1
  200. data/lib/whois/server/adapters/formatted.rb +1 -1
  201. data/lib/whois/server/adapters/none.rb +1 -1
  202. data/lib/whois/server/adapters/not_implemented.rb +1 -1
  203. data/lib/whois/server/adapters/pir.rb +1 -1
  204. data/lib/whois/server/adapters/standard.rb +1 -1
  205. data/lib/whois/server/adapters/verisign.rb +1 -1
  206. data/lib/whois/server/adapters/web.rb +1 -1
  207. data/lib/whois/version.rb +2 -2
  208. data/spec/fixtures/responses/jobswhois.verisign-grs.com/property_nameserver_no_nameserver.expected +1 -1
  209. data/spec/fixtures/responses/jobswhois.verisign-grs.com/status_available.expected +1 -1
  210. data/spec/fixtures/responses/jobswhois.verisign-grs.com/status_registered.expected +7 -7
  211. data/spec/fixtures/responses/kero.yachay.pe/status_available.expected +1 -1
  212. data/spec/fixtures/responses/kero.yachay.pe/status_inactive.expected +1 -1
  213. data/spec/fixtures/responses/kero.yachay.pe/status_registered.expected +5 -5
  214. data/spec/fixtures/responses/whois.adamsnames.tc/gd/status_available.expected +1 -1
  215. data/spec/fixtures/responses/whois.adamsnames.tc/gd/status_registered.expected +3 -3
  216. data/spec/fixtures/responses/whois.adamsnames.tc/tc/status_available.expected +1 -1
  217. data/spec/fixtures/responses/whois.adamsnames.tc/tc/status_registered.expected +5 -5
  218. data/spec/fixtures/responses/whois.adamsnames.tc/vg/status_available.expected +1 -1
  219. data/spec/fixtures/responses/whois.adamsnames.tc/vg/status_registered.expected +5 -5
  220. data/spec/fixtures/responses/whois.aeda.net.ae/status_available.expected +1 -1
  221. data/spec/fixtures/responses/whois.aeda.net.ae/status_registered.expected +3 -3
  222. data/spec/fixtures/responses/whois.aero/status_available.expected +4 -4
  223. data/spec/fixtures/responses/whois.aero/status_registered.expected +15 -15
  224. data/spec/fixtures/responses/whois.afilias-grs.info/bz/status_available.expected +4 -4
  225. data/spec/fixtures/responses/whois.afilias-grs.info/bz/status_registered.expected +12 -12
  226. data/spec/fixtures/responses/whois.afilias-grs.info/gi/status_available.expected +4 -4
  227. data/spec/fixtures/responses/whois.afilias-grs.info/gi/status_registered.expected +13 -13
  228. data/spec/fixtures/responses/whois.afilias-grs.info/hn/status_available.expected +4 -4
  229. data/spec/fixtures/responses/whois.afilias-grs.info/hn/status_registered.expected +13 -13
  230. data/spec/fixtures/responses/whois.afilias-grs.info/lc/status_available.expected +4 -4
  231. data/spec/fixtures/responses/whois.afilias-grs.info/lc/status_registered.expected +13 -13
  232. data/spec/fixtures/responses/whois.afilias-grs.info/mn/status_available.expected +4 -4
  233. data/spec/fixtures/responses/whois.afilias-grs.info/mn/status_registered.expected +15 -15
  234. data/spec/fixtures/responses/whois.afilias-grs.info/sc/status_available.expected +5 -5
  235. data/spec/fixtures/responses/whois.afilias-grs.info/sc/status_registered.expected +13 -13
  236. data/spec/fixtures/responses/whois.afilias-grs.info/vc/status_available.expected +4 -4
  237. data/spec/fixtures/responses/whois.afilias-grs.info/vc/status_registered.expected +15 -15
  238. data/spec/fixtures/responses/whois.afilias.info/status_available.expected +4 -4
  239. data/spec/fixtures/responses/whois.afilias.info/status_registered.expected +15 -15
  240. data/spec/fixtures/responses/whois.ai/status_available.expected +1 -1
  241. data/spec/fixtures/responses/whois.ai/status_registered.expected +5 -5
  242. data/spec/fixtures/responses/whois.arnes.si/status_available.expected +1 -1
  243. data/spec/fixtures/responses/whois.arnes.si/status_registered.expected +7 -7
  244. data/spec/fixtures/responses/whois.audns.net.au/status_available.expected +1 -1
  245. data/spec/fixtures/responses/whois.audns.net.au/status_registered.expected +6 -6
  246. data/spec/fixtures/responses/whois.biz/status_available.expected +4 -4
  247. data/spec/fixtures/responses/whois.biz/status_registered.expected +15 -15
  248. data/spec/fixtures/responses/whois.cat/status_available.expected +1 -1
  249. data/spec/fixtures/responses/whois.cat/status_registered.expected +6 -6
  250. data/spec/fixtures/responses/whois.cctld.uz/status_available.expected +1 -1
  251. data/spec/fixtures/responses/whois.cctld.uz/status_registered.expected +5 -5
  252. data/spec/fixtures/responses/whois.centralnic.com/ae.org/status_available.expected +30 -3
  253. data/spec/fixtures/responses/whois.centralnic.com/ae.org/status_available.txt +1 -9
  254. data/spec/fixtures/responses/whois.centralnic.com/ae.org/status_registered.expected +85 -11
  255. data/spec/fixtures/responses/whois.centralnic.com/ae.org/status_registered.txt +69 -66
  256. data/spec/fixtures/responses/whois.centralnic.com/ar.com/status_available.expected +30 -3
  257. data/spec/fixtures/responses/whois.centralnic.com/ar.com/status_available.txt +1 -9
  258. data/spec/fixtures/responses/whois.centralnic.com/ar.com/status_registered.expected +87 -13
  259. data/spec/fixtures/responses/whois.centralnic.com/ar.com/status_registered.txt +70 -57
  260. data/spec/fixtures/responses/whois.centralnic.com/br.com/status_available.expected +30 -3
  261. data/spec/fixtures/responses/whois.centralnic.com/br.com/status_available.txt +1 -9
  262. data/spec/fixtures/responses/whois.centralnic.com/br.com/status_registered.expected +85 -11
  263. data/spec/fixtures/responses/whois.centralnic.com/br.com/status_registered.txt +69 -70
  264. data/spec/fixtures/responses/whois.centralnic.com/cn.com/status_available.expected +30 -3
  265. data/spec/fixtures/responses/whois.centralnic.com/cn.com/status_available.txt +1 -9
  266. data/spec/fixtures/responses/whois.centralnic.com/cn.com/status_registered.expected +83 -9
  267. data/spec/fixtures/responses/whois.centralnic.com/cn.com/status_registered.txt +48 -48
  268. data/spec/fixtures/responses/whois.centralnic.com/de.com/status_available.expected +30 -3
  269. data/spec/fixtures/responses/whois.centralnic.com/de.com/status_available.txt +1 -9
  270. data/spec/fixtures/responses/whois.centralnic.com/de.com/status_registered.expected +88 -12
  271. data/spec/fixtures/responses/whois.centralnic.com/de.com/status_registered.txt +68 -50
  272. data/spec/fixtures/responses/whois.centralnic.com/eu.com/status_available.expected +30 -3
  273. data/spec/fixtures/responses/whois.centralnic.com/eu.com/status_available.txt +1 -9
  274. data/spec/fixtures/responses/whois.centralnic.com/eu.com/status_registered.expected +83 -9
  275. data/spec/fixtures/responses/whois.centralnic.com/eu.com/status_registered.txt +54 -55
  276. data/spec/fixtures/responses/whois.centralnic.com/gb.com/status_available.expected +30 -3
  277. data/spec/fixtures/responses/whois.centralnic.com/gb.com/status_available.txt +1 -9
  278. data/spec/fixtures/responses/whois.centralnic.com/gb.com/status_registered.expected +89 -15
  279. data/spec/fixtures/responses/whois.centralnic.com/gb.com/status_registered.txt +73 -70
  280. data/spec/fixtures/responses/whois.centralnic.com/gb.net/status_available.expected +30 -3
  281. data/spec/fixtures/responses/whois.centralnic.com/gb.net/status_available.txt +1 -9
  282. data/spec/fixtures/responses/whois.centralnic.com/gb.net/status_registered.expected +88 -14
  283. data/spec/fixtures/responses/whois.centralnic.com/gb.net/status_registered.txt +74 -70
  284. data/spec/fixtures/responses/whois.centralnic.com/gr.com/status_available.expected +57 -0
  285. data/spec/fixtures/responses/whois.centralnic.com/gr.com/status_available.txt +1 -0
  286. data/spec/fixtures/responses/whois.centralnic.com/gr.com/status_registered.expected +114 -0
  287. data/spec/fixtures/responses/whois.centralnic.com/gr.com/status_registered.txt +29 -0
  288. data/spec/fixtures/responses/whois.centralnic.com/hu.com/property_contacts_omitted.txt +32 -0
  289. data/spec/fixtures/responses/whois.centralnic.com/hu.com/status_available.expected +30 -3
  290. data/spec/fixtures/responses/whois.centralnic.com/hu.com/status_available.txt +1 -9
  291. data/spec/fixtures/responses/whois.centralnic.com/hu.com/status_registered.expected +83 -9
  292. data/spec/fixtures/responses/whois.centralnic.com/hu.com/status_registered.txt +70 -67
  293. data/spec/fixtures/responses/whois.centralnic.com/jpn.com/status_available.expected +30 -3
  294. data/spec/fixtures/responses/whois.centralnic.com/jpn.com/status_available.txt +1 -9
  295. data/spec/fixtures/responses/whois.centralnic.com/jpn.com/status_registered.expected +83 -9
  296. data/spec/fixtures/responses/whois.centralnic.com/jpn.com/status_registered.txt +72 -60
  297. data/spec/fixtures/responses/whois.centralnic.com/kr.com/status_available.expected +30 -3
  298. data/spec/fixtures/responses/whois.centralnic.com/kr.com/status_available.txt +1 -9
  299. data/spec/fixtures/responses/whois.centralnic.com/kr.com/status_registered.expected +92 -12
  300. data/spec/fixtures/responses/whois.centralnic.com/kr.com/status_registered.txt +74 -68
  301. data/spec/fixtures/responses/whois.centralnic.com/no.com/status_available.expected +30 -3
  302. data/spec/fixtures/responses/whois.centralnic.com/no.com/status_available.txt +1 -9
  303. data/spec/fixtures/responses/whois.centralnic.com/no.com/status_registered.expected +83 -9
  304. data/spec/fixtures/responses/whois.centralnic.com/no.com/status_registered.txt +56 -57
  305. data/spec/fixtures/responses/whois.centralnic.com/qc.com/status_available.expected +30 -3
  306. data/spec/fixtures/responses/whois.centralnic.com/qc.com/status_available.txt +1 -9
  307. data/spec/fixtures/responses/whois.centralnic.com/qc.com/status_registered.expected +89 -15
  308. data/spec/fixtures/responses/whois.centralnic.com/qc.com/status_registered.txt +52 -51
  309. data/spec/fixtures/responses/whois.centralnic.com/ru.com/status_available.expected +30 -3
  310. data/spec/fixtures/responses/whois.centralnic.com/ru.com/status_available.txt +1 -9
  311. data/spec/fixtures/responses/whois.centralnic.com/ru.com/status_registered.expected +81 -11
  312. data/spec/fixtures/responses/whois.centralnic.com/ru.com/status_registered.txt +46 -60
  313. data/spec/fixtures/responses/whois.centralnic.com/sa.com/status_available.expected +30 -3
  314. data/spec/fixtures/responses/whois.centralnic.com/sa.com/status_available.txt +1 -9
  315. data/spec/fixtures/responses/whois.centralnic.com/sa.com/status_registered.expected +83 -9
  316. data/spec/fixtures/responses/whois.centralnic.com/sa.com/status_registered.txt +69 -49
  317. data/spec/fixtures/responses/whois.centralnic.com/se.com/status_available.expected +30 -3
  318. data/spec/fixtures/responses/whois.centralnic.com/se.com/status_available.txt +1 -9
  319. data/spec/fixtures/responses/whois.centralnic.com/se.com/status_registered.expected +90 -14
  320. data/spec/fixtures/responses/whois.centralnic.com/se.com/status_registered.txt +73 -69
  321. data/spec/fixtures/responses/whois.centralnic.com/se.net/status_available.expected +30 -3
  322. data/spec/fixtures/responses/whois.centralnic.com/se.net/status_available.txt +1 -9
  323. data/spec/fixtures/responses/whois.centralnic.com/se.net/status_registered.expected +86 -14
  324. data/spec/fixtures/responses/whois.centralnic.com/se.net/status_registered.txt +69 -65
  325. data/spec/fixtures/responses/whois.centralnic.com/uk.com/status_available.expected +30 -3
  326. data/spec/fixtures/responses/whois.centralnic.com/uk.com/status_available.txt +1 -9
  327. data/spec/fixtures/responses/whois.centralnic.com/uk.com/status_registered.expected +83 -9
  328. data/spec/fixtures/responses/whois.centralnic.com/uk.com/status_registered.txt +61 -54
  329. data/spec/fixtures/responses/whois.centralnic.com/uk.net/status_available.expected +30 -3
  330. data/spec/fixtures/responses/whois.centralnic.com/uk.net/status_available.txt +1 -9
  331. data/spec/fixtures/responses/whois.centralnic.com/uk.net/status_registered.expected +85 -11
  332. data/spec/fixtures/responses/whois.centralnic.com/uk.net/status_registered.txt +61 -57
  333. data/spec/fixtures/responses/whois.centralnic.com/us.com/status_available.expected +30 -3
  334. data/spec/fixtures/responses/whois.centralnic.com/us.com/status_available.txt +1 -9
  335. data/spec/fixtures/responses/whois.centralnic.com/us.com/status_registered.expected +84 -14
  336. data/spec/fixtures/responses/whois.centralnic.com/us.com/status_registered.txt +52 -59
  337. data/spec/fixtures/responses/whois.centralnic.com/us.org/status_available.expected +57 -0
  338. data/spec/fixtures/responses/whois.centralnic.com/us.org/status_available.txt +1 -0
  339. data/spec/fixtures/responses/whois.centralnic.com/uy.com/property_contacts_omitted.txt +32 -0
  340. data/spec/fixtures/responses/whois.centralnic.com/uy.com/status_available.expected +30 -3
  341. data/spec/fixtures/responses/whois.centralnic.com/uy.com/status_available.txt +1 -9
  342. data/spec/fixtures/responses/whois.centralnic.com/uy.com/status_registered.expected +85 -11
  343. data/spec/fixtures/responses/whois.centralnic.com/uy.com/status_registered.txt +69 -70
  344. data/spec/fixtures/responses/whois.centralnic.com/za.com/status_available.expected +30 -3
  345. data/spec/fixtures/responses/whois.centralnic.com/za.com/status_available.txt +1 -9
  346. data/spec/fixtures/responses/whois.centralnic.com/za.com/status_registered.expected +83 -9
  347. data/spec/fixtures/responses/whois.centralnic.com/za.com/status_registered.txt +58 -61
  348. data/spec/fixtures/responses/whois.cira.ca/schema-1/status_available.expected +1 -1
  349. data/spec/fixtures/responses/whois.cira.ca/schema-1/status_registered.expected +9 -9
  350. data/spec/fixtures/responses/whois.cira.ca/schema-2/status_available.expected +1 -1
  351. data/spec/fixtures/responses/whois.cira.ca/schema-2/status_registered.expected +8 -8
  352. data/spec/fixtures/responses/whois.cnnic.cn/status_available.expected +3 -3
  353. data/spec/fixtures/responses/whois.cnnic.cn/status_registered.expected +13 -13
  354. data/spec/fixtures/responses/whois.co.ca/status_available.expected +1 -1
  355. data/spec/fixtures/responses/whois.co.ca/status_registered.expected +5 -5
  356. data/spec/fixtures/responses/whois.co.pl/status_available.expected +1 -1
  357. data/spec/fixtures/responses/whois.co.pl/status_registered.expected +4 -4
  358. data/spec/fixtures/responses/whois.co.ug/status_available.expected +1 -1
  359. data/spec/fixtures/responses/whois.co.ug/status_registered.expected +7 -7
  360. data/spec/fixtures/responses/whois.crsnic.net/property_nameserver_no_nameserver.expected +1 -1
  361. data/spec/fixtures/responses/whois.crsnic.net/property_registrar_with_multiple_entries.expected +1 -1
  362. data/spec/fixtures/responses/whois.crsnic.net/response_unavailable.expected +2 -0
  363. data/spec/fixtures/responses/whois.crsnic.net/response_unavailable.txt +13 -0
  364. data/spec/fixtures/responses/whois.crsnic.net/status_available.expected +1 -1
  365. data/spec/fixtures/responses/whois.crsnic.net/status_registered.expected +9 -9
  366. data/spec/fixtures/responses/whois.denic.de/schema-1.10.0/status_available.expected +4 -4
  367. data/spec/fixtures/responses/whois.denic.de/schema-1.10.0/status_registered.expected +13 -13
  368. data/spec/fixtures/responses/whois.denic.de/schema-1.11.0/property_nameservers_with_ip.expected +4 -4
  369. data/spec/fixtures/responses/whois.denic.de/schema-1.11.0/status_available.expected +4 -4
  370. data/spec/fixtures/responses/whois.denic.de/schema-1.11.0/status_invalid.expected +4 -4
  371. data/spec/fixtures/responses/whois.denic.de/schema-1.11.0/status_registered.expected +11 -11
  372. data/spec/fixtures/responses/whois.denic.de/schema-2.0/property_nameservers_with_ip.expected +4 -4
  373. data/spec/fixtures/responses/whois.denic.de/schema-2.0/status_available.expected +4 -4
  374. data/spec/fixtures/responses/whois.denic.de/schema-2.0/status_invalid.expected +4 -4
  375. data/spec/fixtures/responses/whois.denic.de/schema-2.0/status_registered.expected +11 -11
  376. data/spec/fixtures/responses/whois.dk-hostmaster.dk/status_available.expected +1 -1
  377. data/spec/fixtures/responses/whois.dk-hostmaster.dk/status_registered.expected +5 -5
  378. data/spec/fixtures/responses/whois.dns.be/property_nameservers_with_ip.expected +4 -4
  379. data/spec/fixtures/responses/whois.dns.be/property_status_outofservice.expected +8 -0
  380. data/spec/fixtures/responses/whois.dns.be/property_status_outofservice.txt +65 -0
  381. data/spec/fixtures/responses/whois.dns.be/property_status_quarantine.expected +8 -0
  382. data/spec/fixtures/responses/whois.dns.be/property_status_quarantine.txt +44 -0
  383. data/spec/fixtures/responses/whois.dns.be/response_throttled_max.expected +2 -0
  384. data/spec/fixtures/responses/whois.dns.be/response_throttled_max.txt +40 -0
  385. data/spec/fixtures/responses/whois.dns.be/status_available.expected +1 -1
  386. data/spec/fixtures/responses/whois.dns.be/status_registered.expected +6 -6
  387. data/spec/fixtures/responses/whois.dns.lu/property_nameservers_with_ip.expected +4 -4
  388. data/spec/fixtures/responses/whois.dns.lu/status_available.expected +1 -1
  389. data/spec/fixtures/responses/whois.dns.lu/status_registered.expected +6 -6
  390. data/spec/fixtures/responses/whois.dns.pl/property_nameservers_with_ip.expected +3 -3
  391. data/spec/fixtures/responses/whois.dns.pl/status_available.expected +1 -1
  392. data/spec/fixtures/responses/whois.dns.pl/status_registered.expected +5 -5
  393. data/spec/fixtures/responses/whois.dns.pt/property_nameservers.expected +5 -5
  394. data/spec/fixtures/responses/whois.dns.pt/property_nameservers_without_host.expected +5 -5
  395. data/spec/fixtures/responses/whois.dns.pt/status_available.expected +1 -1
  396. data/spec/fixtures/responses/whois.dns.pt/status_inactive.expected +3 -3
  397. data/spec/fixtures/responses/whois.dns.pt/status_registered.expected +7 -7
  398. data/spec/fixtures/responses/whois.dns.pt/status_reserved.expected +2 -2
  399. data/spec/fixtures/responses/whois.domain-registry.nl/property_nameservers_with_ip.expected +3 -3
  400. data/spec/fixtures/responses/whois.domain-registry.nl/status_available.expected +1 -1
  401. data/spec/fixtures/responses/whois.domain-registry.nl/{status_quarantine.expected → status_redemption.expected} +2 -2
  402. data/spec/fixtures/responses/whois.domain-registry.nl/{status_quarantine.txt → status_redemption.txt} +0 -0
  403. data/spec/fixtures/responses/whois.domain-registry.nl/status_registered.expected +7 -7
  404. data/spec/fixtures/responses/whois.domain.kg/status_available.expected +1 -1
  405. data/spec/fixtures/responses/whois.domain.kg/status_registered.expected +6 -6
  406. data/spec/fixtures/responses/whois.domainregistry.ie/property_nameservers_with_ip.expected +7 -7
  407. data/spec/fixtures/responses/whois.domainregistry.ie/status_available.expected +1 -1
  408. data/spec/fixtures/responses/whois.domainregistry.ie/status_registered.expected +5 -5
  409. data/spec/fixtures/responses/whois.domainregistry.my/status_available.expected +1 -1
  410. data/spec/fixtures/responses/whois.domainregistry.my/status_registered.expected +6 -6
  411. data/spec/fixtures/responses/whois.domreg.lt/property_nameservers_with_ip.expected +5 -5
  412. data/spec/fixtures/responses/whois.domreg.lt/status_available.expected +1 -1
  413. data/spec/fixtures/responses/whois.domreg.lt/status_registered.expected +5 -5
  414. data/spec/fixtures/responses/whois.dot.tk/status_available.expected +1 -1
  415. data/spec/fixtures/responses/whois.dot.tk/status_registered.expected +7 -7
  416. data/spec/fixtures/responses/whois.dotmobiregistry.net/status_available.expected +4 -4
  417. data/spec/fixtures/responses/whois.dotmobiregistry.net/status_registered.expected +15 -15
  418. data/spec/fixtures/responses/whois.educause.edu/property_registrant_without_address.expected +11 -0
  419. data/spec/fixtures/responses/whois.educause.edu/property_registrant_without_address.txt +55 -0
  420. data/spec/fixtures/responses/whois.educause.edu/property_registrant_without_zip.expected +12 -0
  421. data/spec/fixtures/responses/whois.educause.edu/property_registrant_without_zip.txt +65 -0
  422. data/spec/fixtures/responses/whois.educause.edu/status_available.expected +1 -1
  423. data/spec/fixtures/responses/whois.educause.edu/status_registered.expected +21 -7
  424. data/spec/fixtures/responses/whois.educause.edu/status_registered.txt +4 -4
  425. data/spec/fixtures/responses/whois.eenet.ee/status_available.expected +1 -1
  426. data/spec/fixtures/responses/whois.eenet.ee/status_registered.expected +5 -5
  427. data/spec/fixtures/responses/whois.eu/property_nameservers.expected +6 -6
  428. data/spec/fixtures/responses/whois.eu/status_available.expected +1 -1
  429. data/spec/fixtures/responses/whois.eu/status_registered.expected +5 -5
  430. data/spec/fixtures/responses/whois.ficora.fi/status_available.expected +1 -1
  431. data/spec/fixtures/responses/whois.ficora.fi/status_registered.expected +7 -7
  432. data/spec/fixtures/responses/whois.gg/status_available.expected +1 -1
  433. data/spec/fixtures/responses/whois.gg/status_registered.expected +7 -7
  434. data/spec/fixtures/responses/whois.godaddy.com/status_registered.expected +11 -11
  435. data/spec/fixtures/responses/whois.gov.za/status_registered.expected +1 -1
  436. data/spec/fixtures/responses/whois.hkirc.hk/status_available.expected +1 -1
  437. data/spec/fixtures/responses/whois.hkirc.hk/status_registered.expected +5 -5
  438. data/spec/fixtures/responses/whois.iam.net.ma/status_registered.expected +2 -2
  439. data/spec/fixtures/responses/whois.iana.org/{status_available.expected → int/status_available.expected} +4 -4
  440. data/spec/fixtures/responses/whois.iana.org/{status_available.txt → int/status_available.txt} +0 -0
  441. data/spec/fixtures/responses/whois.iana.org/{status_registered.expected → int/status_registered.expected} +13 -13
  442. data/spec/fixtures/responses/whois.iana.org/{status_registered.txt → int/status_registered.txt} +0 -0
  443. data/spec/fixtures/responses/whois.iana.org/{status_not_assigned.expected → tld/status_not_assigned.expected} +5 -5
  444. data/spec/fixtures/responses/whois.iana.org/{status_not_assigned.txt → tld/status_not_assigned.txt} +0 -0
  445. data/spec/fixtures/responses/whois.in.ua/status_available.expected +1 -1
  446. data/spec/fixtures/responses/whois.in.ua/status_registered.expected +6 -6
  447. data/spec/fixtures/responses/whois.isnic.is/status_available.expected +1 -1
  448. data/spec/fixtures/responses/whois.isnic.is/status_registered.expected +5 -5
  449. data/spec/fixtures/responses/whois.isoc.org.il/status_available.expected +1 -1
  450. data/spec/fixtures/responses/whois.isoc.org.il/status_registered.expected +8 -8
  451. data/spec/fixtures/responses/whois.ja.net/ac.uk/status_available.expected +1 -1
  452. data/spec/fixtures/responses/whois.ja.net/ac.uk/status_registered.expected +8 -8
  453. data/spec/fixtures/responses/whois.ja.net/gov.uk/status_available.expected +1 -1
  454. data/spec/fixtures/responses/whois.ja.net/gov.uk/status_registered.expected +12 -12
  455. data/spec/fixtures/responses/whois.je/status_available.expected +1 -1
  456. data/spec/fixtures/responses/whois.je/status_registered.expected +7 -7
  457. data/spec/fixtures/responses/whois.jprs.jp/jp/property_status_to_be_suspended.expected +8 -0
  458. data/spec/fixtures/responses/whois.jprs.jp/jp/property_status_to_be_suspended.txt +28 -0
  459. data/spec/fixtures/responses/whois.jprs.jp/jp/property_updates_on_error_out-of-range.expected +1 -1
  460. data/spec/fixtures/responses/whois.jprs.jp/jp/status_available.expected +1 -1
  461. data/spec/fixtures/responses/whois.jprs.jp/jp/status_registered.expected +8 -8
  462. data/spec/fixtures/responses/whois.jprs.jp/jp/status_reserved.expected +2 -2
  463. data/spec/fixtures/responses/whois.jprs.jp/jp/status_reserved.txt +27 -27
  464. data/spec/fixtures/responses/whois.jprs.jp/ne.jp/property_created_on_and_expires_on_missing.expected +5 -0
  465. data/spec/fixtures/responses/whois.jprs.jp/{jp → ne.jp}/property_created_on_and_expires_on_missing.txt +21 -21
  466. data/spec/fixtures/responses/whois.jprs.jp/{jp → ne.jp}/property_expires_on_missing.expected +0 -0
  467. data/spec/fixtures/responses/whois.jprs.jp/{jp → ne.jp}/property_expires_on_missing.txt +20 -20
  468. data/spec/fixtures/responses/whois.jprs.jp/ne.jp/status_available.expected +1 -1
  469. data/spec/fixtures/responses/whois.jprs.jp/ne.jp/status_registered.expected +7 -7
  470. data/spec/fixtures/responses/whois.kenic.or.ke/status_available.expected +1 -1
  471. data/spec/fixtures/responses/whois.kenic.or.ke/status_registered.expected +8 -8
  472. data/spec/fixtures/responses/whois.kr/property_nameservers_with_ip.expected +3 -3
  473. data/spec/fixtures/responses/whois.kr/status_available.expected +1 -1
  474. data/spec/fixtures/responses/whois.kr/status_registered.expected +6 -6
  475. data/spec/fixtures/responses/whois.markmonitor.com/property_contacts_are_blank.expected +4 -4
  476. data/spec/fixtures/responses/whois.markmonitor.com/status_registered.expected +16 -15
  477. data/spec/fixtures/responses/whois.meregistry.net/property_nameservers_is_blank.expected +1 -1
  478. data/spec/fixtures/responses/whois.meregistry.net/status_available.expected +4 -4
  479. data/spec/fixtures/responses/whois.meregistry.net/status_registered.expected +15 -15
  480. data/spec/fixtures/responses/whois.museum/status_available.expected +1 -1
  481. data/spec/fixtures/responses/whois.museum/status_registered.expected +6 -6
  482. data/spec/fixtures/responses/whois.na-nic.com.na/status_available.expected +1 -1
  483. data/spec/fixtures/responses/whois.na-nic.com.na/status_registered.expected +6 -6
  484. data/spec/fixtures/responses/whois.net.ua/property_nameservers_uppercase.expected +4 -4
  485. data/spec/fixtures/responses/whois.net.ua/status_available.expected +1 -1
  486. data/spec/fixtures/responses/whois.net.ua/status_registered.expected +7 -7
  487. data/spec/fixtures/responses/whois.netcom.cm/status_available.expected +1 -1
  488. data/spec/fixtures/responses/whois.netcom.cm/status_registered.expected +8 -8
  489. data/spec/fixtures/responses/whois.nic-se.se/property_datetime_is_dash.expected +2 -2
  490. data/spec/fixtures/responses/whois.nic-se.se/property_nameservers_with_ip.expected +5 -5
  491. data/spec/fixtures/responses/whois.nic-se.se/status_available.expected +1 -1
  492. data/spec/fixtures/responses/whois.nic-se.se/status_registered.expected +8 -8
  493. data/spec/fixtures/responses/whois.nic.af/status_available.expected +1 -1
  494. data/spec/fixtures/responses/whois.nic.af/status_registered.expected +6 -6
  495. data/spec/fixtures/responses/whois.nic.ag/status_available.expected +4 -4
  496. data/spec/fixtures/responses/whois.nic.ag/status_registered.expected +15 -15
  497. data/spec/fixtures/responses/whois.nic.am/status_available.expected +1 -1
  498. data/spec/fixtures/responses/whois.nic.am/status_registered.expected +8 -8
  499. data/spec/fixtures/responses/whois.nic.as/status_available.expected +1 -1
  500. data/spec/fixtures/responses/whois.nic.as/status_registered.expected +5 -5
  501. data/spec/fixtures/responses/whois.nic.asia/status_available.expected +4 -4
  502. data/spec/fixtures/responses/whois.nic.asia/status_registered.expected +13 -13
  503. data/spec/fixtures/responses/whois.nic.at/status_available.expected +1 -1
  504. data/spec/fixtures/responses/whois.nic.at/status_registered.expected +6 -6
  505. data/spec/fixtures/responses/whois.nic.bo/status_registered.expected +2 -2
  506. data/spec/fixtures/responses/whois.nic.cc/property_nameserver_no_nameserver.expected +1 -1
  507. data/spec/fixtures/responses/whois.nic.cc/status_available.expected +1 -1
  508. data/spec/fixtures/responses/whois.nic.cc/status_registered.expected +8 -8
  509. data/spec/fixtures/responses/whois.nic.cd/status_available.expected +1 -1
  510. data/spec/fixtures/responses/whois.nic.cd/status_registered.expected +7 -7
  511. data/spec/fixtures/responses/whois.nic.ch/property_nameservers_with_ip.expected +3 -3
  512. data/spec/fixtures/responses/whois.nic.ch/status_available.expected +1 -1
  513. data/spec/fixtures/responses/whois.nic.ch/status_registered.expected +5 -5
  514. data/spec/fixtures/responses/whois.nic.ci/status_available.expected +1 -1
  515. data/spec/fixtures/responses/whois.nic.ci/status_registered.expected +7 -7
  516. data/spec/fixtures/responses/whois.nic.ck/status_available.expected +1 -1
  517. data/spec/fixtures/responses/whois.nic.ck/status_registered.expected +5 -5
  518. data/spec/fixtures/responses/whois.nic.cl/status_available.expected +1 -1
  519. data/spec/fixtures/responses/whois.nic.cl/status_registered.expected +5 -5
  520. data/spec/fixtures/responses/whois.nic.co/status_available.expected +1 -1
  521. data/spec/fixtures/responses/whois.nic.co/status_registered.expected +8 -8
  522. data/spec/fixtures/responses/whois.nic.coop/status_available.expected +1 -1
  523. data/spec/fixtures/responses/whois.nic.coop/status_registered.expected +6 -6
  524. data/spec/fixtures/responses/whois.nic.cx/status_available.expected +1 -1
  525. data/spec/fixtures/responses/whois.nic.cx/status_registered.expected +8 -8
  526. data/spec/fixtures/responses/whois.nic.cz/property_nameservers_with_ip.expected +4 -4
  527. data/spec/fixtures/responses/whois.nic.cz/status_available.expected +1 -1
  528. data/spec/fixtures/responses/whois.nic.cz/status_registered.expected +8 -8
  529. data/spec/fixtures/responses/whois.nic.ec/status_available.expected +1 -1
  530. data/spec/fixtures/responses/whois.nic.ec/status_registered.expected +8 -8
  531. data/spec/fixtures/responses/whois.nic.fr/fr/property_contact_without_address.expected +17 -0
  532. data/spec/fixtures/responses/whois.nic.fr/fr/property_contact_without_address.txt +83 -0
  533. data/spec/fixtures/responses/whois.nic.fr/fr/property_nameservers.expected +5 -5
  534. data/spec/fixtures/responses/whois.nic.fr/fr/property_nameservers_multiple_ipv4.expected +11 -0
  535. data/spec/fixtures/responses/whois.nic.fr/fr/property_nameservers_multiple_ipv4.txt +111 -0
  536. data/spec/fixtures/responses/whois.nic.fr/fr/property_nameservers_with_ipv4_and_some_ipv6.expected +7 -7
  537. data/spec/fixtures/responses/whois.nic.fr/fr/property_status_not_open.expected +8 -0
  538. data/spec/fixtures/responses/whois.nic.fr/fr/property_status_not_open.txt +76 -0
  539. data/spec/fixtures/responses/whois.nic.fr/fr/response_contains_contact_remarks.txt +83 -0
  540. data/spec/fixtures/responses/whois.nic.fr/fr/{response_contains_trouble.txt → response_contains_contact_trouble.txt} +0 -0
  541. data/spec/fixtures/responses/whois.nic.fr/fr/response_throttled.expected +2 -0
  542. data/spec/fixtures/responses/whois.nic.fr/fr/response_throttled.txt +21 -0
  543. data/spec/fixtures/responses/whois.nic.fr/fr/status_available.expected +4 -4
  544. data/spec/fixtures/responses/whois.nic.fr/fr/status_registered.expected +13 -12
  545. data/spec/fixtures/responses/whois.nic.fr/pm/property_nameservers_with_ipv4_and_ipv6.expected +4 -4
  546. data/spec/fixtures/responses/whois.nic.fr/pm/response_throttled.expected +2 -0
  547. data/spec/fixtures/responses/whois.nic.fr/pm/response_throttled.txt +21 -0
  548. data/spec/fixtures/responses/whois.nic.fr/pm/status_available.expected +4 -4
  549. data/spec/fixtures/responses/whois.nic.fr/pm/status_registered.expected +9 -8
  550. data/spec/fixtures/responses/whois.nic.fr/re/property_nameservers_with_ipv4_and_ipv6.expected +4 -4
  551. data/spec/fixtures/responses/whois.nic.fr/re/response_throttled.expected +2 -0
  552. data/spec/fixtures/responses/whois.nic.fr/re/response_throttled.txt +21 -0
  553. data/spec/fixtures/responses/whois.nic.fr/re/status_available.expected +4 -4
  554. data/spec/fixtures/responses/whois.nic.fr/re/status_registered.expected +9 -8
  555. data/spec/fixtures/responses/whois.nic.fr/tf/property_status_frozen.expected +1 -1
  556. data/spec/fixtures/responses/whois.nic.fr/tf/response_throttled.expected +2 -0
  557. data/spec/fixtures/responses/whois.nic.fr/tf/response_throttled.txt +21 -0
  558. data/spec/fixtures/responses/whois.nic.fr/tf/status_available.expected +4 -4
  559. data/spec/fixtures/responses/whois.nic.fr/tf/status_registered.expected +13 -12
  560. data/spec/fixtures/responses/whois.nic.fr/wf/response_throttled.expected +2 -0
  561. data/spec/fixtures/responses/whois.nic.fr/wf/response_throttled.txt +21 -0
  562. data/spec/fixtures/responses/whois.nic.fr/wf/status_available.expected +4 -4
  563. data/spec/fixtures/responses/whois.nic.fr/wf/status_registered.expected +12 -11
  564. data/spec/fixtures/responses/whois.nic.fr/yt/response_throttled.expected +2 -0
  565. data/spec/fixtures/responses/whois.nic.fr/yt/response_throttled.txt +21 -0
  566. data/spec/fixtures/responses/whois.nic.fr/yt/status_available.expected +4 -4
  567. data/spec/fixtures/responses/whois.nic.fr/yt/status_registered.expected +12 -11
  568. data/spec/fixtures/responses/whois.nic.gl/status_available.expected +1 -1
  569. data/spec/fixtures/responses/whois.nic.gl/status_registered.expected +6 -6
  570. data/spec/fixtures/responses/whois.nic.gs/status_available.expected +1 -1
  571. data/spec/fixtures/responses/whois.nic.gs/status_registered.expected +6 -6
  572. data/spec/fixtures/responses/whois.nic.ht/status_available.expected +1 -1
  573. data/spec/fixtures/responses/whois.nic.ht/status_registered.expected +8 -8
  574. data/spec/fixtures/responses/whois.nic.hu/schema-1.99/property_contact_company.expected +2 -2
  575. data/spec/fixtures/responses/whois.nic.hu/schema-1.99/property_contact_private_person.expected +2 -2
  576. data/spec/fixtures/responses/whois.nic.hu/schema-1.99/property_contact_without_address.expected +2 -2
  577. data/spec/fixtures/responses/whois.nic.hu/schema-1.99/status_available.expected +4 -4
  578. data/spec/fixtures/responses/whois.nic.hu/schema-1.99/status_in_progress.expected +3 -3
  579. data/spec/fixtures/responses/whois.nic.hu/schema-1.99/status_registered.expected +16 -16
  580. data/spec/fixtures/responses/whois.nic.hu/schema-current/status_available.expected +4 -4
  581. data/spec/fixtures/responses/whois.nic.hu/schema-current/status_registered.expected +4 -4
  582. data/spec/fixtures/responses/whois.nic.im/status_available.expected +1 -1
  583. data/spec/fixtures/responses/whois.nic.im/status_registered.expected +6 -6
  584. data/spec/fixtures/responses/whois.nic.ir/status_available.expected +1 -1
  585. data/spec/fixtures/responses/whois.nic.ir/status_registered.expected +6 -6
  586. data/spec/fixtures/responses/whois.nic.it/property_contact_province.expected +2 -2
  587. data/spec/fixtures/responses/whois.nic.it/property_contact_with_company_in_address.expected +2 -2
  588. data/spec/fixtures/responses/whois.nic.it/property_contact_with_organization.expected +2 -2
  589. data/spec/fixtures/responses/whois.nic.it/property_technical_contact.expected +2 -2
  590. data/spec/fixtures/responses/whois.nic.it/status_available.expected +4 -4
  591. data/spec/fixtures/responses/whois.nic.it/status_registered.expected +15 -15
  592. data/spec/fixtures/responses/whois.nic.ki/status_available.expected +1 -1
  593. data/spec/fixtures/responses/whois.nic.ki/status_registered.expected +8 -8
  594. data/spec/fixtures/responses/whois.nic.kz/status_available.expected +1 -1
  595. data/spec/fixtures/responses/whois.nic.kz/status_registered.expected +5 -5
  596. data/spec/fixtures/responses/whois.nic.la/status_available.expected +35 -1
  597. data/spec/fixtures/responses/whois.nic.la/status_registered.expected +88 -8
  598. data/spec/fixtures/responses/whois.nic.li/status_available.expected +1 -1
  599. data/spec/fixtures/responses/whois.nic.li/status_registered.expected +5 -5
  600. data/spec/fixtures/responses/whois.nic.lv/status_available.expected +1 -1
  601. data/spec/fixtures/responses/whois.nic.lv/status_available.txt +5 -6
  602. data/spec/fixtures/responses/whois.nic.lv/status_registered.expected +7 -7
  603. data/spec/fixtures/responses/whois.nic.lv/status_registered.txt +32 -28
  604. data/spec/fixtures/responses/whois.nic.ly/status_available.expected +1 -1
  605. data/spec/fixtures/responses/whois.nic.ly/status_registered.expected +8 -8
  606. data/spec/fixtures/responses/whois.nic.md/status_available.expected +2 -2
  607. data/spec/fixtures/responses/whois.nic.md/status_registered.expected +7 -7
  608. data/spec/fixtures/responses/whois.nic.mg/status_available.expected +1 -1
  609. data/spec/fixtures/responses/whois.nic.mg/status_registered.expected +8 -8
  610. data/spec/fixtures/responses/whois.nic.ms/status_available.expected +1 -1
  611. data/spec/fixtures/responses/whois.nic.ms/status_registered.expected +6 -6
  612. data/spec/fixtures/responses/whois.nic.mu/status_available.expected +1 -1
  613. data/spec/fixtures/responses/whois.nic.mu/status_registered.expected +8 -8
  614. data/spec/fixtures/responses/whois.nic.mx/property_nameservers_with_ip.expected +3 -3
  615. data/spec/fixtures/responses/whois.nic.mx/status_available.expected +1 -1
  616. data/spec/fixtures/responses/whois.nic.mx/status_registered.expected +7 -7
  617. data/spec/fixtures/responses/whois.nic.net.nf/property_status_excluded_pendingpurge.expected +8 -0
  618. data/spec/fixtures/responses/whois.nic.net.nf/property_status_excluded_pendingpurge.txt +73 -0
  619. data/spec/fixtures/responses/whois.nic.net.nf/status_available.expected +1 -1
  620. data/spec/fixtures/responses/whois.nic.net.nf/status_invalid_nozone.expected +9 -0
  621. data/spec/fixtures/responses/whois.nic.net.nf/status_invalid_nozone.txt +11 -0
  622. data/spec/fixtures/responses/whois.nic.net.nf/status_registered.expected +8 -8
  623. data/spec/fixtures/responses/whois.nic.net.ng/status_available.expected +1 -1
  624. data/spec/fixtures/responses/whois.nic.net.ng/status_registered.expected +8 -8
  625. data/spec/fixtures/responses/whois.nic.net.sa/status_available.expected +1 -1
  626. data/spec/fixtures/responses/whois.nic.net.sa/status_registered.expected +4 -4
  627. data/spec/fixtures/responses/whois.nic.net.sb/status_available.expected +1 -1
  628. data/spec/fixtures/responses/whois.nic.net.sb/status_registered.expected +6 -6
  629. data/spec/fixtures/responses/whois.nic.nu/property_status_notrenewed.expected +8 -0
  630. data/spec/fixtures/responses/whois.nic.nu/property_status_notrenewed.txt +30 -0
  631. data/spec/fixtures/responses/whois.nic.nu/status_available.expected +1 -1
  632. data/spec/fixtures/responses/whois.nic.nu/status_registered.expected +8 -8
  633. data/spec/fixtures/responses/whois.nic.org.uy/response_is_error.txt +27 -0
  634. data/spec/fixtures/responses/whois.nic.org.uy/status_available.expected +1 -1
  635. data/spec/fixtures/responses/whois.nic.org.uy/status_registered.expected +5 -5
  636. data/spec/fixtures/responses/whois.nic.pr/status_registered.expected +2 -2
  637. data/spec/fixtures/responses/whois.nic.priv.at/status_registered.expected +1 -1
  638. data/spec/fixtures/responses/whois.nic.sl/status_available.expected +1 -1
  639. data/spec/fixtures/responses/whois.nic.sl/status_registered.expected +7 -7
  640. data/spec/fixtures/responses/whois.nic.sm/status_available.expected +1 -1
  641. data/spec/fixtures/responses/whois.nic.sm/status_registered.expected +7 -7
  642. data/spec/fixtures/responses/whois.nic.sn/status_available.expected +4 -4
  643. data/spec/fixtures/responses/whois.nic.sn/status_registered.expected +13 -13
  644. data/spec/fixtures/responses/whois.nic.so/status_available.expected +1 -1
  645. data/spec/fixtures/responses/whois.nic.so/status_registered.expected +8 -8
  646. data/spec/fixtures/responses/whois.nic.st/status_available.expected +1 -1
  647. data/spec/fixtures/responses/whois.nic.st/status_registered.expected +7 -7
  648. data/spec/fixtures/responses/whois.nic.tel/status_available.expected +1 -1
  649. data/spec/fixtures/responses/whois.nic.tel/status_registered.expected +9 -9
  650. data/spec/fixtures/responses/whois.nic.tl/status_available.expected +1 -1
  651. data/spec/fixtures/responses/whois.nic.tl/status_registered.expected +6 -6
  652. data/spec/fixtures/responses/whois.nic.tr/property_nameservers_with_ip.expected +4 -4
  653. data/spec/fixtures/responses/whois.nic.tr/property_nameservers_with_trailing_space.expected +3 -3
  654. data/spec/fixtures/responses/whois.nic.tr/status_available.expected +1 -1
  655. data/spec/fixtures/responses/whois.nic.tr/status_registered.expected +5 -5
  656. data/spec/fixtures/responses/whois.nic.travel/status_available.expected +1 -1
  657. data/spec/fixtures/responses/whois.nic.travel/status_registered.expected +6 -6
  658. data/spec/fixtures/responses/whois.nic.tv/property_nameserver_no_nameserver.expected +1 -1
  659. data/spec/fixtures/responses/whois.nic.tv/status_available.expected +1 -1
  660. data/spec/fixtures/responses/whois.nic.tv/status_registered.expected +6 -6
  661. data/spec/fixtures/responses/whois.nic.uk/property_nameservers_with_ip.expected +3 -3
  662. data/spec/fixtures/responses/whois.nic.uk/property_registrar_without_trading_name.expected +1 -1
  663. data/spec/fixtures/responses/whois.nic.uk/status_available.expected +1 -1
  664. data/spec/fixtures/responses/whois.nic.uk/status_registered.expected +11 -11
  665. data/spec/fixtures/responses/whois.nic.uk/status_suspended.expected +5 -5
  666. data/spec/fixtures/responses/whois.nic.us/status_available.expected +1 -1
  667. data/spec/fixtures/responses/whois.nic.us/status_registered.expected +8 -8
  668. data/spec/fixtures/responses/whois.nic.ve/property_nameservers.expected +3 -3
  669. data/spec/fixtures/responses/whois.nic.ve/property_nameservers_missing.expected +1 -1
  670. data/spec/fixtures/responses/whois.nic.ve/property_updated_on.expected +1 -1
  671. data/spec/fixtures/responses/whois.nic.ve/status_available.expected +1 -1
  672. data/spec/fixtures/responses/whois.nic.ve/status_inactive.expected +6 -6
  673. data/spec/fixtures/responses/whois.nic.ve/status_registered.expected +3 -3
  674. data/spec/fixtures/responses/whois.nic.xxx/status_available.expected +4 -4
  675. data/spec/fixtures/responses/whois.nic.xxx/status_registered.expected +12 -12
  676. data/spec/fixtures/responses/whois.norid.no/status_registered.expected +2 -2
  677. data/spec/fixtures/responses/whois.pandi.or.id/status_available.expected +1 -1
  678. data/spec/fixtures/responses/whois.pandi.or.id/status_registered.expected +8 -8
  679. data/spec/fixtures/responses/whois.pnina.ps/property_nameservers_with_nodns.expected +2 -2
  680. data/spec/fixtures/responses/whois.pnina.ps/status_available.expected +1 -1
  681. data/spec/fixtures/responses/whois.pnina.ps/status_registered.expected +6 -6
  682. data/spec/fixtures/responses/whois.publicinterestregistry.net/status_available.expected +4 -4
  683. data/spec/fixtures/responses/whois.publicinterestregistry.net/status_registered.expected +15 -15
  684. data/spec/fixtures/responses/whois.register.bg/property_nameservers_with_ip.expected +3 -3
  685. data/spec/fixtures/responses/whois.register.bg/status_available.expected +1 -1
  686. data/spec/fixtures/responses/whois.register.bg/status_registered.expected +7 -7
  687. data/spec/fixtures/responses/whois.registro.br/property_nameservers_with_ip.expected +5 -5
  688. data/spec/fixtures/responses/whois.registro.br/status_available.expected +1 -1
  689. data/spec/fixtures/responses/whois.registro.br/status_registered.expected +6 -6
  690. data/spec/fixtures/responses/whois.registry.gy/status_available.expected +1 -1
  691. data/spec/fixtures/responses/whois.registry.gy/status_registered.expected +8 -8
  692. data/spec/fixtures/responses/whois.registry.hm/status_available.expected +1 -1
  693. data/spec/fixtures/responses/whois.registry.hm/status_registered.expected +5 -5
  694. data/spec/fixtures/responses/whois.registry.in/status_available.expected +4 -4
  695. data/spec/fixtures/responses/whois.registry.in/status_registered.expected +11 -11
  696. data/spec/fixtures/responses/whois.registry.qa/qa/status_available.expected +3 -3
  697. data/spec/fixtures/responses/whois.registry.qa/qa/status_registered.expected +8 -8
  698. data/spec/fixtures/responses/whois.registrypro.pro/status_available.expected +1 -1
  699. data/spec/fixtures/responses/whois.registrypro.pro/status_registered.expected +8 -8
  700. data/spec/fixtures/responses/whois.ripe.net/fo/status_available.expected +1 -1
  701. data/spec/fixtures/responses/whois.ripe.net/fo/status_registered.expected +3 -3
  702. data/spec/fixtures/responses/whois.ripe.net/gm/status_available.expected +1 -1
  703. data/spec/fixtures/responses/whois.ripe.net/gm/status_registered.expected +3 -3
  704. data/spec/fixtures/responses/whois.ripe.net/mc/status_available.expected +1 -1
  705. data/spec/fixtures/responses/whois.ripe.net/mc/status_registered.expected +4 -4
  706. data/spec/fixtures/responses/whois.ripe.net/va/status_available.expected +1 -1
  707. data/spec/fixtures/responses/whois.ripe.net/va/status_registered.expected +6 -6
  708. data/spec/fixtures/responses/whois.rotld.ro/status_available.expected +1 -1
  709. data/spec/fixtures/responses/whois.rotld.ro/status_registered.expected +5 -5
  710. data/spec/fixtures/responses/whois.samoanic.ws/status_available.expected +1 -1
  711. data/spec/fixtures/responses/whois.samoanic.ws/status_registered.expected +8 -8
  712. data/spec/fixtures/responses/whois.sgnic.sg/property_nameservers_schema_1.expected +5 -5
  713. data/spec/fixtures/responses/whois.sgnic.sg/property_nameservers_schema_1_with_ip.expected +4 -4
  714. data/spec/fixtures/responses/whois.sgnic.sg/property_nameservers_schema_2.expected +5 -5
  715. data/spec/fixtures/responses/whois.sgnic.sg/status_available.expected +1 -1
  716. data/spec/fixtures/responses/whois.sgnic.sg/status_registered.expected +7 -7
  717. data/spec/fixtures/responses/whois.sk-nic.sk/status_available.expected +1 -1
  718. data/spec/fixtures/responses/whois.sk-nic.sk/status_registered.expected +7 -7
  719. data/spec/fixtures/responses/whois.smallregistry.net/status_available.expected +50 -0
  720. data/spec/fixtures/responses/whois.smallregistry.net/status_available.txt +21 -0
  721. data/spec/fixtures/responses/whois.smallregistry.net/status_registered.expected +91 -0
  722. data/spec/fixtures/responses/whois.smallregistry.net/status_registered.txt +89 -0
  723. data/spec/fixtures/responses/whois.srs.net.nz/status_available.expected +1 -1
  724. data/spec/fixtures/responses/whois.srs.net.nz/status_invalid.expected +1 -1
  725. data/spec/fixtures/responses/whois.srs.net.nz/status_registered.expected +8 -8
  726. data/spec/fixtures/responses/whois.tcinet.ru/ru/property_nameservers_with_ip.expected +4 -4
  727. data/spec/fixtures/responses/whois.tcinet.ru/ru/status_available.expected +2 -2
  728. data/spec/fixtures/responses/whois.tcinet.ru/ru/status_registered.expected +10 -10
  729. data/spec/fixtures/responses/whois.tcinet.ru/su/status_available.expected +2 -2
  730. data/spec/fixtures/responses/whois.tcinet.ru/su/status_registered.expected +8 -8
  731. data/spec/fixtures/responses/whois.tcinet.ru/xn--p1ai/status_available.expected +2 -2
  732. data/spec/fixtures/responses/whois.tcinet.ru/xn--p1ai/status_registered.expected +9 -9
  733. data/spec/fixtures/responses/whois.thnic.co.th/status_available.expected +1 -1
  734. data/spec/fixtures/responses/whois.thnic.co.th/status_registered.expected +8 -8
  735. data/spec/fixtures/responses/whois.tld.ee/status_available.expected +3 -3
  736. data/spec/fixtures/responses/whois.tld.ee/status_expired.expected +5 -5
  737. data/spec/fixtures/responses/whois.tld.ee/status_registered.expected +11 -11
  738. data/spec/fixtures/responses/whois.twnic.net.tw/status_available.expected +1 -1
  739. data/spec/fixtures/responses/whois.twnic.net.tw/status_registered.expected +7 -7
  740. data/spec/fixtures/responses/whois.tznic.or.tz/status_available.expected +1 -1
  741. data/spec/fixtures/responses/whois.tznic.or.tz/status_registered.expected +6 -6
  742. data/spec/fixtures/responses/whois.usp.ac.fj/status_available.expected +1 -1
  743. data/spec/fixtures/responses/whois.usp.ac.fj/status_registered.expected +4 -4
  744. data/spec/fixtures/responses/whois.za.net/status_available.expected +1 -1
  745. data/spec/fixtures/responses/whois.za.net/status_registered.expected +5 -5
  746. data/spec/fixtures/responses/whois.za.org/status_available.expected +1 -1
  747. data/spec/fixtures/responses/whois.za.org/status_registered.expected +6 -6
  748. data/spec/tlds +7 -4
  749. data/spec/whois/record/parser/responses/jobswhois.verisign-grs.com/status_registered_spec.rb +3 -3
  750. data/spec/whois/record/parser/responses/kero.yachay.pe/status_registered_spec.rb +4 -4
  751. data/spec/whois/record/parser/responses/whois.adamsnames.tc/gd/status_registered_spec.rb +2 -2
  752. data/spec/whois/record/parser/responses/whois.adamsnames.tc/tc/status_registered_spec.rb +4 -4
  753. data/spec/whois/record/parser/responses/whois.adamsnames.tc/vg/status_registered_spec.rb +4 -4
  754. data/spec/whois/record/parser/responses/whois.aeda.net.ae/status_registered_spec.rb +2 -2
  755. data/spec/whois/record/parser/responses/whois.aero/status_registered_spec.rb +8 -8
  756. data/spec/whois/record/parser/responses/whois.afilias-grs.info/bz/status_registered_spec.rb +5 -5
  757. data/spec/whois/record/parser/responses/whois.afilias-grs.info/gi/status_registered_spec.rb +6 -6
  758. data/spec/whois/record/parser/responses/whois.afilias-grs.info/hn/status_registered_spec.rb +6 -6
  759. data/spec/whois/record/parser/responses/whois.afilias-grs.info/lc/status_registered_spec.rb +6 -6
  760. data/spec/whois/record/parser/responses/whois.afilias-grs.info/mn/status_registered_spec.rb +8 -8
  761. data/spec/whois/record/parser/responses/whois.afilias-grs.info/sc/status_registered_spec.rb +6 -6
  762. data/spec/whois/record/parser/responses/whois.afilias-grs.info/vc/status_registered_spec.rb +8 -8
  763. data/spec/whois/record/parser/responses/whois.afilias.info/status_registered_spec.rb +8 -8
  764. data/spec/whois/record/parser/responses/whois.ai/status_registered_spec.rb +4 -4
  765. data/spec/whois/record/parser/responses/whois.arnes.si/status_registered_spec.rb +4 -4
  766. data/spec/whois/record/parser/responses/whois.audns.net.au/status_registered_spec.rb +4 -4
  767. data/spec/whois/record/parser/responses/whois.biz/status_registered_spec.rb +8 -8
  768. data/spec/whois/record/parser/responses/whois.cat/status_registered_spec.rb +2 -2
  769. data/spec/whois/record/parser/responses/whois.cctld.uz/status_registered_spec.rb +2 -2
  770. data/spec/whois/record/parser/responses/whois.centralnic.com/ae.org/status_available_spec.rb +40 -2
  771. data/spec/whois/record/parser/responses/whois.centralnic.com/ae.org/status_registered_spec.rb +93 -8
  772. data/spec/whois/record/parser/responses/whois.centralnic.com/ar.com/status_available_spec.rb +40 -2
  773. data/spec/whois/record/parser/responses/whois.centralnic.com/ar.com/status_registered_spec.rb +95 -10
  774. data/spec/whois/record/parser/responses/whois.centralnic.com/br.com/status_available_spec.rb +40 -2
  775. data/spec/whois/record/parser/responses/whois.centralnic.com/br.com/status_registered_spec.rb +93 -8
  776. data/spec/whois/record/parser/responses/whois.centralnic.com/cn.com/status_available_spec.rb +40 -2
  777. data/spec/whois/record/parser/responses/whois.centralnic.com/cn.com/status_registered_spec.rb +91 -6
  778. data/spec/whois/record/parser/responses/whois.centralnic.com/de.com/status_available_spec.rb +40 -2
  779. data/spec/whois/record/parser/responses/whois.centralnic.com/de.com/status_registered_spec.rb +96 -9
  780. data/spec/whois/record/parser/responses/whois.centralnic.com/eu.com/status_available_spec.rb +40 -2
  781. data/spec/whois/record/parser/responses/whois.centralnic.com/eu.com/status_registered_spec.rb +91 -6
  782. data/spec/whois/record/parser/responses/whois.centralnic.com/gb.com/status_available_spec.rb +40 -2
  783. data/spec/whois/record/parser/responses/whois.centralnic.com/gb.com/status_registered_spec.rb +97 -12
  784. data/spec/whois/record/parser/responses/whois.centralnic.com/gb.net/status_available_spec.rb +40 -2
  785. data/spec/whois/record/parser/responses/whois.centralnic.com/gb.net/status_registered_spec.rb +96 -11
  786. data/spec/whois/record/parser/responses/whois.centralnic.com/gr.com/status_available_spec.rb +108 -0
  787. data/spec/whois/record/parser/responses/whois.centralnic.com/gr.com/status_registered_spec.rb +165 -0
  788. data/spec/whois/record/parser/responses/whois.centralnic.com/hu.com/status_available_spec.rb +40 -2
  789. data/spec/whois/record/parser/responses/whois.centralnic.com/hu.com/status_registered_spec.rb +91 -6
  790. data/spec/whois/record/parser/responses/whois.centralnic.com/jpn.com/status_available_spec.rb +40 -2
  791. data/spec/whois/record/parser/responses/whois.centralnic.com/jpn.com/status_registered_spec.rb +91 -6
  792. data/spec/whois/record/parser/responses/whois.centralnic.com/kr.com/status_available_spec.rb +40 -2
  793. data/spec/whois/record/parser/responses/whois.centralnic.com/kr.com/status_registered_spec.rb +100 -9
  794. data/spec/whois/record/parser/responses/whois.centralnic.com/no.com/status_available_spec.rb +40 -2
  795. data/spec/whois/record/parser/responses/whois.centralnic.com/no.com/status_registered_spec.rb +91 -6
  796. data/spec/whois/record/parser/responses/whois.centralnic.com/qc.com/status_available_spec.rb +40 -2
  797. data/spec/whois/record/parser/responses/whois.centralnic.com/qc.com/status_registered_spec.rb +97 -12
  798. data/spec/whois/record/parser/responses/whois.centralnic.com/ru.com/status_available_spec.rb +40 -2
  799. data/spec/whois/record/parser/responses/whois.centralnic.com/ru.com/status_registered_spec.rb +89 -8
  800. data/spec/whois/record/parser/responses/whois.centralnic.com/sa.com/status_available_spec.rb +40 -2
  801. data/spec/whois/record/parser/responses/whois.centralnic.com/sa.com/status_registered_spec.rb +91 -6
  802. data/spec/whois/record/parser/responses/whois.centralnic.com/se.com/status_available_spec.rb +40 -2
  803. data/spec/whois/record/parser/responses/whois.centralnic.com/se.com/status_registered_spec.rb +98 -11
  804. data/spec/whois/record/parser/responses/whois.centralnic.com/se.net/status_available_spec.rb +40 -2
  805. data/spec/whois/record/parser/responses/whois.centralnic.com/se.net/status_registered_spec.rb +94 -11
  806. data/spec/whois/record/parser/responses/whois.centralnic.com/uk.com/status_available_spec.rb +40 -2
  807. data/spec/whois/record/parser/responses/whois.centralnic.com/uk.com/status_registered_spec.rb +91 -6
  808. data/spec/whois/record/parser/responses/whois.centralnic.com/uk.net/status_available_spec.rb +40 -2
  809. data/spec/whois/record/parser/responses/whois.centralnic.com/uk.net/status_registered_spec.rb +93 -8
  810. data/spec/whois/record/parser/responses/whois.centralnic.com/us.com/status_available_spec.rb +40 -2
  811. data/spec/whois/record/parser/responses/whois.centralnic.com/us.com/status_registered_spec.rb +92 -11
  812. data/spec/whois/record/parser/responses/whois.centralnic.com/us.org/status_available_spec.rb +108 -0
  813. data/spec/whois/record/parser/responses/whois.centralnic.com/uy.com/status_available_spec.rb +40 -2
  814. data/spec/whois/record/parser/responses/whois.centralnic.com/uy.com/status_registered_spec.rb +93 -8
  815. data/spec/whois/record/parser/responses/whois.centralnic.com/za.com/status_available_spec.rb +40 -2
  816. data/spec/whois/record/parser/responses/whois.centralnic.com/za.com/status_registered_spec.rb +91 -6
  817. data/spec/whois/record/parser/responses/whois.cira.ca/schema-1/status_registered_spec.rb +5 -5
  818. data/spec/whois/record/parser/responses/whois.cira.ca/schema-2/status_registered_spec.rb +5 -5
  819. data/spec/whois/record/parser/responses/whois.cnnic.cn/status_registered_spec.rb +8 -8
  820. data/spec/whois/record/parser/responses/whois.co.ca/status_registered_spec.rb +2 -2
  821. data/spec/whois/record/parser/responses/whois.co.pl/status_registered_spec.rb +2 -2
  822. data/spec/whois/record/parser/responses/whois.co.ug/status_registered_spec.rb +3 -3
  823. data/spec/whois/record/parser/responses/whois.crsnic.net/property_registrar_with_multiple_entries_spec.rb +1 -1
  824. data/spec/whois/record/parser/responses/whois.crsnic.net/response_unavailable_spec.rb +29 -0
  825. data/spec/whois/record/parser/responses/whois.crsnic.net/status_registered_spec.rb +5 -5
  826. data/spec/whois/record/parser/responses/whois.denic.de/schema-1.10.0/status_registered_spec.rb +8 -8
  827. data/spec/whois/record/parser/responses/whois.denic.de/schema-1.11.0/property_nameservers_with_ip_spec.rb +3 -3
  828. data/spec/whois/record/parser/responses/whois.denic.de/schema-1.11.0/status_registered_spec.rb +6 -6
  829. data/spec/whois/record/parser/responses/whois.denic.de/schema-2.0/property_nameservers_with_ip_spec.rb +3 -3
  830. data/spec/whois/record/parser/responses/whois.denic.de/schema-2.0/status_registered_spec.rb +6 -6
  831. data/spec/whois/record/parser/responses/whois.dk-hostmaster.dk/status_registered_spec.rb +2 -2
  832. data/spec/whois/record/parser/responses/whois.dns.be/property_nameservers_with_ip_spec.rb +3 -3
  833. data/spec/whois/record/parser/responses/whois.dns.be/property_status_outofservice_spec.rb +39 -0
  834. data/spec/whois/record/parser/responses/whois.dns.be/property_status_quarantine_spec.rb +39 -0
  835. data/spec/whois/record/parser/responses/whois.dns.be/response_throttled_max_spec.rb +29 -0
  836. data/spec/whois/record/parser/responses/whois.dns.be/status_registered_spec.rb +4 -4
  837. data/spec/whois/record/parser/responses/whois.dns.lu/property_nameservers_with_ip_spec.rb +3 -3
  838. data/spec/whois/record/parser/responses/whois.dns.lu/status_registered_spec.rb +4 -4
  839. data/spec/whois/record/parser/responses/whois.dns.pl/property_nameservers_with_ip_spec.rb +2 -2
  840. data/spec/whois/record/parser/responses/whois.dns.pl/status_registered_spec.rb +2 -2
  841. data/spec/whois/record/parser/responses/whois.dns.pt/property_nameservers_spec.rb +4 -4
  842. data/spec/whois/record/parser/responses/whois.dns.pt/property_nameservers_without_host_spec.rb +4 -4
  843. data/spec/whois/record/parser/responses/whois.dns.pt/status_registered_spec.rb +4 -4
  844. data/spec/whois/record/parser/responses/whois.domain-registry.nl/property_nameservers_with_ip_spec.rb +2 -2
  845. data/spec/whois/record/parser/responses/whois.domain-registry.nl/{status_quarantine_spec.rb → status_redemption_spec.rb} +4 -4
  846. data/spec/whois/record/parser/responses/whois.domain-registry.nl/status_registered_spec.rb +4 -4
  847. data/spec/whois/record/parser/responses/whois.domain.kg/status_registered_spec.rb +2 -2
  848. data/spec/whois/record/parser/responses/whois.domainregistry.ie/property_nameservers_with_ip_spec.rb +6 -6
  849. data/spec/whois/record/parser/responses/whois.domainregistry.ie/status_registered_spec.rb +3 -3
  850. data/spec/whois/record/parser/responses/whois.domainregistry.my/status_registered_spec.rb +2 -2
  851. data/spec/whois/record/parser/responses/whois.domreg.lt/property_nameservers_with_ip_spec.rb +4 -4
  852. data/spec/whois/record/parser/responses/whois.domreg.lt/status_registered_spec.rb +3 -3
  853. data/spec/whois/record/parser/responses/whois.dot.tk/status_registered_spec.rb +4 -4
  854. data/spec/whois/record/parser/responses/whois.dotmobiregistry.net/status_registered_spec.rb +8 -8
  855. data/spec/whois/record/parser/responses/whois.educause.edu/property_registrant_without_address_spec.rb +38 -0
  856. data/spec/whois/record/parser/responses/whois.educause.edu/property_registrant_without_zip_spec.rb +39 -0
  857. data/spec/whois/record/parser/responses/whois.educause.edu/status_registered_spec.rb +18 -3
  858. data/spec/whois/record/parser/responses/whois.eenet.ee/status_registered_spec.rb +2 -2
  859. data/spec/whois/record/parser/responses/whois.eu/property_nameservers_spec.rb +5 -5
  860. data/spec/whois/record/parser/responses/whois.eu/status_registered_spec.rb +4 -4
  861. data/spec/whois/record/parser/responses/whois.ficora.fi/status_registered_spec.rb +4 -4
  862. data/spec/whois/record/parser/responses/whois.gg/status_registered_spec.rb +4 -4
  863. data/spec/whois/record/parser/responses/whois.godaddy.com/status_registered_spec.rb +7 -7
  864. data/spec/whois/record/parser/responses/whois.hkirc.hk/status_registered_spec.rb +2 -2
  865. data/spec/whois/record/parser/responses/whois.iana.org/{status_available_spec.rb → int/status_available_spec.rb} +2 -2
  866. data/spec/whois/record/parser/responses/whois.iana.org/{status_registered_spec.rb → int/status_registered_spec.rb} +9 -9
  867. data/spec/whois/record/parser/responses/whois.iana.org/{status_not_assigned_spec.rb → tld/status_not_assigned_spec.rb} +2 -2
  868. data/spec/whois/record/parser/responses/whois.in.ua/status_registered_spec.rb +3 -3
  869. data/spec/whois/record/parser/responses/whois.isnic.is/status_registered_spec.rb +2 -2
  870. data/spec/whois/record/parser/responses/whois.isoc.org.il/status_registered_spec.rb +6 -6
  871. data/spec/whois/record/parser/responses/whois.ja.net/ac.uk/status_registered_spec.rb +4 -4
  872. data/spec/whois/record/parser/responses/whois.ja.net/gov.uk/status_registered_spec.rb +8 -8
  873. data/spec/whois/record/parser/responses/whois.je/status_registered_spec.rb +4 -4
  874. data/spec/whois/record/parser/responses/whois.jprs.jp/jp/property_status_to_be_suspended_spec.rb +39 -0
  875. data/spec/whois/record/parser/responses/whois.jprs.jp/jp/status_registered_spec.rb +4 -4
  876. data/spec/whois/record/parser/responses/whois.jprs.jp/{jp → ne.jp}/property_created_on_and_expires_on_missing_spec.rb +7 -2
  877. data/spec/whois/record/parser/responses/whois.jprs.jp/{jp → ne.jp}/property_expires_on_missing_spec.rb +2 -2
  878. data/spec/whois/record/parser/responses/whois.jprs.jp/ne.jp/status_registered_spec.rb +4 -4
  879. data/spec/whois/record/parser/responses/whois.kenic.or.ke/status_registered_spec.rb +4 -4
  880. data/spec/whois/record/parser/responses/whois.kr/property_nameservers_with_ip_spec.rb +2 -2
  881. data/spec/whois/record/parser/responses/whois.kr/status_registered_spec.rb +2 -2
  882. data/spec/whois/record/parser/responses/whois.markmonitor.com/property_contacts_are_blank_spec.rb +1 -1
  883. data/spec/whois/record/parser/responses/whois.markmonitor.com/status_registered_spec.rb +8 -8
  884. data/spec/whois/record/parser/responses/whois.meregistry.net/status_registered_spec.rb +8 -8
  885. data/spec/whois/record/parser/responses/whois.museum/status_registered_spec.rb +2 -2
  886. data/spec/whois/record/parser/responses/whois.na-nic.com.na/status_registered_spec.rb +2 -2
  887. data/spec/whois/record/parser/responses/whois.net.ua/property_nameservers_uppercase_spec.rb +3 -3
  888. data/spec/whois/record/parser/responses/whois.net.ua/status_registered_spec.rb +4 -4
  889. data/spec/whois/record/parser/responses/whois.netcom.cm/status_registered_spec.rb +4 -4
  890. data/spec/whois/record/parser/responses/whois.nic-se.se/property_nameservers_with_ip_spec.rb +4 -4
  891. data/spec/whois/record/parser/responses/whois.nic-se.se/status_registered_spec.rb +4 -4
  892. data/spec/whois/record/parser/responses/whois.nic.af/status_registered_spec.rb +2 -2
  893. data/spec/whois/record/parser/responses/whois.nic.ag/status_registered_spec.rb +8 -8
  894. data/spec/whois/record/parser/responses/whois.nic.am/status_registered_spec.rb +4 -4
  895. data/spec/whois/record/parser/responses/whois.nic.as/status_registered_spec.rb +4 -4
  896. data/spec/whois/record/parser/responses/whois.nic.asia/status_registered_spec.rb +6 -6
  897. data/spec/whois/record/parser/responses/whois.nic.at/status_registered_spec.rb +4 -4
  898. data/spec/whois/record/parser/responses/whois.nic.cc/status_registered_spec.rb +4 -4
  899. data/spec/whois/record/parser/responses/whois.nic.cd/status_registered_spec.rb +4 -4
  900. data/spec/whois/record/parser/responses/whois.nic.ch/property_nameservers_with_ip_spec.rb +2 -2
  901. data/spec/whois/record/parser/responses/whois.nic.ch/status_registered_spec.rb +4 -4
  902. data/spec/whois/record/parser/responses/whois.nic.ci/status_registered_spec.rb +4 -4
  903. data/spec/whois/record/parser/responses/whois.nic.ck/status_registered_spec.rb +2 -2
  904. data/spec/whois/record/parser/responses/whois.nic.cl/status_registered_spec.rb +4 -4
  905. data/spec/whois/record/parser/responses/whois.nic.co/status_registered_spec.rb +4 -4
  906. data/spec/whois/record/parser/responses/whois.nic.coop/status_registered_spec.rb +2 -2
  907. data/spec/whois/record/parser/responses/whois.nic.cx/status_registered_spec.rb +4 -4
  908. data/spec/whois/record/parser/responses/whois.nic.cz/property_nameservers_with_ip_spec.rb +3 -3
  909. data/spec/whois/record/parser/responses/whois.nic.cz/status_registered_spec.rb +4 -4
  910. data/spec/whois/record/parser/responses/whois.nic.ec/status_registered_spec.rb +4 -4
  911. data/spec/whois/record/parser/responses/whois.nic.fr/fr/property_contact_without_address_spec.rb +44 -0
  912. data/spec/whois/record/parser/responses/whois.nic.fr/fr/property_nameservers_multiple_ipv4_spec.rb +38 -0
  913. data/spec/whois/record/parser/responses/whois.nic.fr/fr/property_nameservers_spec.rb +4 -4
  914. data/spec/whois/record/parser/responses/whois.nic.fr/fr/property_nameservers_with_ipv4_and_some_ipv6_spec.rb +6 -6
  915. data/spec/whois/record/parser/responses/whois.nic.fr/fr/property_status_not_open_spec.rb +39 -0
  916. data/spec/whois/record/parser/responses/whois.nic.fr/fr/response_throttled_spec.rb +29 -0
  917. data/spec/whois/record/parser/responses/whois.nic.fr/fr/status_registered_spec.rb +7 -6
  918. data/spec/whois/record/parser/responses/whois.nic.fr/pm/property_nameservers_with_ipv4_and_ipv6_spec.rb +3 -3
  919. data/spec/whois/record/parser/responses/whois.nic.fr/pm/response_throttled_spec.rb +29 -0
  920. data/spec/whois/record/parser/responses/whois.nic.fr/pm/status_registered_spec.rb +3 -2
  921. data/spec/whois/record/parser/responses/whois.nic.fr/re/property_nameservers_with_ipv4_and_ipv6_spec.rb +3 -3
  922. data/spec/whois/record/parser/responses/whois.nic.fr/re/response_throttled_spec.rb +29 -0
  923. data/spec/whois/record/parser/responses/whois.nic.fr/re/status_registered_spec.rb +3 -2
  924. data/spec/whois/record/parser/responses/whois.nic.fr/tf/property_status_frozen_spec.rb +1 -1
  925. data/spec/whois/record/parser/responses/whois.nic.fr/tf/response_throttled_spec.rb +29 -0
  926. data/spec/whois/record/parser/responses/whois.nic.fr/tf/status_registered_spec.rb +7 -6
  927. data/spec/whois/record/parser/responses/whois.nic.fr/wf/response_throttled_spec.rb +29 -0
  928. data/spec/whois/record/parser/responses/whois.nic.fr/wf/status_registered_spec.rb +6 -5
  929. data/spec/whois/record/parser/responses/whois.nic.fr/yt/response_throttled_spec.rb +29 -0
  930. data/spec/whois/record/parser/responses/whois.nic.fr/yt/status_registered_spec.rb +6 -5
  931. data/spec/whois/record/parser/responses/whois.nic.gl/status_registered_spec.rb +2 -2
  932. data/spec/whois/record/parser/responses/whois.nic.gs/status_registered_spec.rb +2 -2
  933. data/spec/whois/record/parser/responses/whois.nic.ht/status_registered_spec.rb +4 -4
  934. data/spec/whois/record/parser/responses/whois.nic.hu/schema-1.99/property_contact_company_spec.rb +1 -1
  935. data/spec/whois/record/parser/responses/whois.nic.hu/schema-1.99/property_contact_private_person_spec.rb +1 -1
  936. data/spec/whois/record/parser/responses/whois.nic.hu/schema-1.99/property_contact_without_address_spec.rb +1 -1
  937. data/spec/whois/record/parser/responses/whois.nic.hu/schema-1.99/status_registered_spec.rb +10 -10
  938. data/spec/whois/record/parser/responses/whois.nic.im/status_registered_spec.rb +4 -4
  939. data/spec/whois/record/parser/responses/whois.nic.ir/status_registered_spec.rb +4 -4
  940. data/spec/whois/record/parser/responses/whois.nic.it/property_contact_province_spec.rb +1 -1
  941. data/spec/whois/record/parser/responses/whois.nic.it/property_contact_with_company_in_address_spec.rb +1 -1
  942. data/spec/whois/record/parser/responses/whois.nic.it/property_contact_with_organization_spec.rb +1 -1
  943. data/spec/whois/record/parser/responses/whois.nic.it/property_technical_contact_spec.rb +1 -1
  944. data/spec/whois/record/parser/responses/whois.nic.it/status_registered_spec.rb +8 -8
  945. data/spec/whois/record/parser/responses/whois.nic.ki/status_registered_spec.rb +4 -4
  946. data/spec/whois/record/parser/responses/whois.nic.kz/status_registered_spec.rb +2 -2
  947. data/spec/whois/record/parser/responses/whois.nic.la/property_status_multiple_spec.rb +1 -1
  948. data/spec/whois/record/parser/responses/whois.nic.la/property_status_single_spec.rb +1 -1
  949. data/spec/whois/record/parser/responses/whois.nic.la/status_available_spec.rb +49 -1
  950. data/spec/whois/record/parser/responses/whois.nic.la/status_registered_spec.rb +99 -5
  951. data/spec/whois/record/parser/responses/whois.nic.li/status_registered_spec.rb +4 -4
  952. data/spec/whois/record/parser/responses/whois.nic.lv/status_registered_spec.rb +5 -5
  953. data/spec/whois/record/parser/responses/whois.nic.ly/status_registered_spec.rb +4 -4
  954. data/spec/whois/record/parser/responses/whois.nic.md/status_registered_spec.rb +3 -3
  955. data/spec/whois/record/parser/responses/whois.nic.mg/status_registered_spec.rb +4 -4
  956. data/spec/whois/record/parser/responses/whois.nic.ms/status_registered_spec.rb +2 -2
  957. data/spec/whois/record/parser/responses/whois.nic.mu/status_registered_spec.rb +4 -4
  958. data/spec/whois/record/parser/responses/whois.nic.mx/property_nameservers_with_ip_spec.rb +2 -2
  959. data/spec/whois/record/parser/responses/whois.nic.mx/status_registered_spec.rb +4 -4
  960. data/spec/whois/record/parser/responses/whois.nic.net.nf/property_status_excluded_pendingpurge_spec.rb +39 -0
  961. data/spec/whois/record/parser/responses/whois.nic.net.nf/status_invalid_nozone_spec.rb +39 -0
  962. data/spec/whois/record/parser/responses/whois.nic.net.nf/status_registered_spec.rb +4 -4
  963. data/spec/whois/record/parser/responses/whois.nic.net.ng/status_registered_spec.rb +4 -4
  964. data/spec/whois/record/parser/responses/whois.nic.net.sa/status_registered_spec.rb +2 -2
  965. data/spec/whois/record/parser/responses/whois.nic.net.sb/status_registered_spec.rb +2 -2
  966. data/spec/whois/record/parser/responses/whois.nic.nu/property_status_notrenewed_spec.rb +39 -0
  967. data/spec/whois/record/parser/responses/whois.nic.nu/status_registered_spec.rb +4 -4
  968. data/spec/whois/record/parser/responses/whois.nic.org.uy/status_registered_spec.rb +2 -2
  969. data/spec/whois/record/parser/responses/whois.nic.sl/status_registered_spec.rb +4 -4
  970. data/spec/whois/record/parser/responses/whois.nic.sm/status_registered_spec.rb +4 -4
  971. data/spec/whois/record/parser/responses/whois.nic.sn/status_registered_spec.rb +8 -8
  972. data/spec/whois/record/parser/responses/whois.nic.so/status_registered_spec.rb +4 -4
  973. data/spec/whois/record/parser/responses/whois.nic.st/status_registered_spec.rb +4 -4
  974. data/spec/whois/record/parser/responses/whois.nic.tel/status_registered_spec.rb +5 -5
  975. data/spec/whois/record/parser/responses/whois.nic.tl/status_registered_spec.rb +2 -2
  976. data/spec/whois/record/parser/responses/whois.nic.tr/property_nameservers_with_ip_spec.rb +3 -3
  977. data/spec/whois/record/parser/responses/whois.nic.tr/property_nameservers_with_trailing_space_spec.rb +2 -2
  978. data/spec/whois/record/parser/responses/whois.nic.tr/status_registered_spec.rb +2 -2
  979. data/spec/whois/record/parser/responses/whois.nic.travel/status_registered_spec.rb +2 -2
  980. data/spec/whois/record/parser/responses/whois.nic.tv/status_registered_spec.rb +2 -2
  981. data/spec/whois/record/parser/responses/whois.nic.uk/property_nameservers_with_ip_spec.rb +2 -2
  982. data/spec/whois/record/parser/responses/whois.nic.uk/property_registrar_without_trading_name_spec.rb +1 -1
  983. data/spec/whois/record/parser/responses/whois.nic.uk/status_registered_spec.rb +6 -6
  984. data/spec/whois/record/parser/responses/whois.nic.uk/status_suspended_spec.rb +1 -1
  985. data/spec/whois/record/parser/responses/whois.nic.us/status_registered_spec.rb +4 -4
  986. data/spec/whois/record/parser/responses/whois.nic.ve/property_nameservers_spec.rb +2 -2
  987. data/spec/whois/record/parser/responses/whois.nic.ve/status_inactive_spec.rb +2 -2
  988. data/spec/whois/record/parser/responses/whois.nic.xxx/status_registered_spec.rb +6 -6
  989. data/spec/whois/record/parser/responses/whois.pandi.or.id/status_registered_spec.rb +4 -4
  990. data/spec/whois/record/parser/responses/whois.pnina.ps/property_nameservers_with_nodns_spec.rb +1 -1
  991. data/spec/whois/record/parser/responses/whois.pnina.ps/status_registered_spec.rb +3 -3
  992. data/spec/whois/record/parser/responses/whois.publicinterestregistry.net/status_registered_spec.rb +8 -8
  993. data/spec/whois/record/parser/responses/whois.register.bg/property_nameservers_with_ip_spec.rb +2 -2
  994. data/spec/whois/record/parser/responses/whois.register.bg/status_registered_spec.rb +4 -4
  995. data/spec/whois/record/parser/responses/whois.registro.br/property_nameservers_with_ip_spec.rb +4 -4
  996. data/spec/whois/record/parser/responses/whois.registro.br/status_registered_spec.rb +2 -2
  997. data/spec/whois/record/parser/responses/whois.registry.gy/status_registered_spec.rb +4 -4
  998. data/spec/whois/record/parser/responses/whois.registry.hm/status_registered_spec.rb +2 -2
  999. data/spec/whois/record/parser/responses/whois.registry.in/status_registered_spec.rb +7 -7
  1000. data/spec/whois/record/parser/responses/whois.registry.qa/qa/status_registered_spec.rb +5 -5
  1001. data/spec/whois/record/parser/responses/whois.registrypro.pro/status_registered_spec.rb +4 -4
  1002. data/spec/whois/record/parser/responses/whois.ripe.net/fo/status_registered_spec.rb +2 -2
  1003. data/spec/whois/record/parser/responses/whois.ripe.net/gm/status_registered_spec.rb +2 -2
  1004. data/spec/whois/record/parser/responses/whois.ripe.net/mc/status_registered_spec.rb +3 -3
  1005. data/spec/whois/record/parser/responses/whois.ripe.net/va/status_registered_spec.rb +5 -5
  1006. data/spec/whois/record/parser/responses/whois.rotld.ro/status_registered_spec.rb +4 -4
  1007. data/spec/whois/record/parser/responses/whois.samoanic.ws/status_registered_spec.rb +4 -4
  1008. data/spec/whois/record/parser/responses/whois.sgnic.sg/property_nameservers_schema_1_spec.rb +4 -4
  1009. data/spec/whois/record/parser/responses/whois.sgnic.sg/property_nameservers_schema_1_with_ip_spec.rb +3 -3
  1010. data/spec/whois/record/parser/responses/whois.sgnic.sg/property_nameservers_schema_2_spec.rb +4 -4
  1011. data/spec/whois/record/parser/responses/whois.sgnic.sg/status_registered_spec.rb +4 -4
  1012. data/spec/whois/record/parser/responses/whois.sk-nic.sk/status_registered_spec.rb +4 -4
  1013. data/spec/whois/record/parser/responses/whois.smallregistry.net/status_available_spec.rb +98 -0
  1014. data/spec/whois/record/parser/responses/whois.smallregistry.net/status_registered_spec.rb +139 -0
  1015. data/spec/whois/record/parser/responses/whois.srs.net.nz/status_registered_spec.rb +4 -4
  1016. data/spec/whois/record/parser/responses/whois.tcinet.ru/ru/property_nameservers_with_ip_spec.rb +3 -3
  1017. data/spec/whois/record/parser/responses/whois.tcinet.ru/ru/status_registered_spec.rb +6 -6
  1018. data/spec/whois/record/parser/responses/whois.tcinet.ru/su/status_registered_spec.rb +4 -4
  1019. data/spec/whois/record/parser/responses/whois.tcinet.ru/xn--p1ai/status_registered_spec.rb +5 -5
  1020. data/spec/whois/record/parser/responses/whois.thnic.co.th/status_registered_spec.rb +4 -4
  1021. data/spec/whois/record/parser/responses/whois.tld.ee/status_expired_spec.rb +2 -2
  1022. data/spec/whois/record/parser/responses/whois.tld.ee/status_registered_spec.rb +5 -5
  1023. data/spec/whois/record/parser/responses/whois.twnic.net.tw/status_registered_spec.rb +4 -4
  1024. data/spec/whois/record/parser/responses/whois.tznic.or.tz/status_registered_spec.rb +2 -2
  1025. data/spec/whois/record/parser/responses/whois.usp.ac.fj/status_registered_spec.rb +2 -2
  1026. data/spec/whois/record/parser/responses/whois.za.net/status_registered_spec.rb +2 -2
  1027. data/spec/whois/record/parser/responses/whois.za.org/status_registered_spec.rb +3 -3
  1028. data/whois.gemspec +6 -6
  1029. metadata +110 -36
  1030. data/lib/whois/record/parser/scanners/cnnic.rb +0 -57
  1031. data/spec/fixtures/responses/whois.centralnic.com/hu.com/registered_details_omitted.txt +0 -36
  1032. data/spec/fixtures/responses/whois.centralnic.com/uy.com/property_billing_contact_missing.txt +0 -36
  1033. data/spec/fixtures/responses/whois.centralnic.com/uy.com/status_registered_details_omitted.txt +0 -41
  1034. data/spec/fixtures/responses/whois.centralnic.com/web.com/status_available.txt +0 -2
  1035. data/spec/fixtures/responses/whois.iana.org/MULTIPLE.txt +0 -3
  1036. data/spec/fixtures/responses/whois.jprs.jp/jp/property_created_on_and_expires_on_missing.expected +0 -2
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -14,9 +14,6 @@ module Whois
14
14
  class Record
15
15
  class Parser
16
16
 
17
- #
18
- # = whois.nic.fr parser
19
- #
20
17
  # Parser for the whois.nic.fr server.
21
18
  #
22
19
  # NOTE: This parser is just a stub and provides only a few basic methods
@@ -30,14 +27,20 @@ module Whois
30
27
  property_supported :status do
31
28
  if content_for_scanner =~ /status:\s+(.+)\n/
32
29
  case $1.downcase
33
- when "active" then :registered
34
- when "registered" then :registered
35
- when "redemption" then :redemption
36
- when "blocked" then :inactive
37
- # NEWSTATUS (reserved)
38
- when "frozen" then :frozen
39
- else
40
- Whois.bug!(ParserError, "Unknown status `#{$1}'.")
30
+ when "active" then :registered
31
+ when "registered" then :registered
32
+ when "redemption" then :redemption
33
+ when "blocked" then :inactive
34
+ # The 'frozen' status seems to be a status
35
+ # where a registered domain is placed to prevent changes
36
+ # and/or when changes can't be made.
37
+ when "frozen" then :registered
38
+ # The 'not_open' status seems to indicate a domain
39
+ # that is already reserved and can't be registered directly.
40
+ # This is the case of second level names.
41
+ when "not_open" then :reserved
42
+ else
43
+ Whois.bug!(ParserError, "Unknown status `#{$1}'.")
41
44
  end
42
45
  else
43
46
  :available
@@ -87,15 +90,26 @@ module Whois
87
90
  property_supported :nameservers do
88
91
  content_for_scanner.scan(/nserver:\s+(.+)\n/).flatten.map do |line|
89
92
  if line =~ /(.+) \[(.+)\]/
90
- Record::Nameserver.new($1, *$2.split(/\s+/))
93
+ name = $1
94
+ ips = $2.split(/\s+/)
95
+ ipv4 = ips.find { |ip| Whois::Server.valid_ipv4?(ip) }
96
+ ipv6 = ips.find { |ip| Whois::Server.valid_ipv6?(ip) }
97
+ Record::Nameserver.new(:name => name, :ipv4 => ipv4, :ipv6 => ipv6)
91
98
  else
92
- Record::Nameserver.new(line)
99
+ Record::Nameserver.new(:name => line)
93
100
  end
94
101
  end
95
102
  end
96
103
 
104
+ # Checks whether the response has been throttled.
105
+ #
106
+ # @return [Boolean]
107
+ def response_throttled?
108
+ !!(content_for_scanner =~ /^%% Too many requests\.{3}/)
109
+ end
110
+
97
111
 
98
- private
112
+ private
99
113
 
100
114
  MULTIVALUE_KEYS = %w( address )
101
115
 
@@ -113,12 +127,15 @@ module Whois
113
127
  address = values["address"].join("\n")
114
128
  else
115
129
  name = values["contact"]
116
- if values["address"].size > 2
130
+ if values["address"].nil?
131
+ organization = nil
132
+ address = nil
133
+ elsif values["address"].size > 2
117
134
  organization = values["address"][0]
118
- address = values["address"][1..-1].join("\n")
135
+ address = values["address"][1..-1].join("\n")
119
136
  else
120
137
  organization = nil
121
- address = values["address"].join("\n")
138
+ address = values["address"].join("\n")
122
139
  end
123
140
  end
124
141
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -15,9 +15,6 @@ module Whois
15
15
  class Record
16
16
  class Parser
17
17
 
18
- #
19
- # = whois.nic.hu parser
20
- #
21
18
  # Parser for the whois.nic.hu server.
22
19
  #
23
20
  # @author Simone Carletti <weppos@weppos.net>
@@ -27,16 +24,16 @@ module Whois
27
24
  include Scanners::Ast
28
25
 
29
26
  property_supported :disclaimer do
30
- node("disclaimer")
27
+ node("field:disclaimer")
31
28
  end
32
29
 
33
30
 
34
31
  property_supported :domain do
35
- node("domain")
32
+ node("field:domain")
36
33
  end
37
34
 
38
35
  property_supported :domain_id do
39
- node('hun-id')
36
+ node("hun-id")
40
37
  end
41
38
 
42
39
 
@@ -60,11 +57,11 @@ module Whois
60
57
 
61
58
 
62
59
  property_supported :created_on do
63
- node('registered') { |raw| Time.parse(raw) }
60
+ node("registered") { |raw| Time.parse(raw) }
64
61
  end
65
62
 
66
63
  property_supported :updated_on do
67
- node('changed') { |raw| Time.parse(raw) }
64
+ node("changed") { |raw| Time.parse(raw) }
68
65
  end
69
66
 
70
67
  property_not_supported :expires_on
@@ -86,24 +83,24 @@ module Whois
86
83
  address, city, zip, country_code = decompose_address(node("address"))
87
84
 
88
85
  Whois::Record::Contact.new(
89
- :type => Whois::Record::Contact::TYPE_REGISTRANT,
90
- :name => node("name"),
91
- :organization => node("org"),
92
- :address => address,
93
- :city => city,
94
- :zip => zip,
95
- :country_code => country_code,
96
- :phone => node("phone"),
97
- :fax => node("fax-no")
86
+ :type => Whois::Record::Contact::TYPE_REGISTRANT,
87
+ :name => node("name"),
88
+ :organization => node("org"),
89
+ :address => address,
90
+ :city => city,
91
+ :zip => zip,
92
+ :country_code => country_code,
93
+ :phone => node("phone"),
94
+ :fax => node("fax-no")
98
95
  )
99
96
  end
100
97
 
101
98
  property_supported :admin_contacts do
102
- contact("admin-c", Whois::Record::Contact::TYPE_ADMIN)
99
+ build_contact("admin-c", Whois::Record::Contact::TYPE_ADMIN)
103
100
  end
104
101
 
105
102
  property_supported :technical_contacts do
106
- contact("tech-c", Whois::Record::Contact::TYPE_TECHNICAL)
103
+ build_contact("tech-c", Whois::Record::Contact::TYPE_TECHNICAL)
107
104
  end
108
105
 
109
106
 
@@ -117,14 +114,14 @@ module Whois
117
114
  # NEWPROPERTY
118
115
  def registrar_contact
119
116
  cached_properties_fetch(:registrar_contact) do
120
- contact("registrar", nil)
117
+ build_contact("registrar", nil)
121
118
  end
122
119
  end
123
120
 
124
121
  # NEWPROPERTY
125
122
  def zone_contact
126
123
  cached_properties_fetch(:zone_contact) do
127
- contact("zone-c", nil)
124
+ build_contact("zone-c", nil)
128
125
  end
129
126
  end
130
127
 
@@ -139,32 +136,32 @@ module Whois
139
136
  end
140
137
 
141
138
 
142
- protected
139
+ private
143
140
 
144
- def contact(element, type)
145
- node(node(element)) do |raw|
146
- Whois::Record::Contact.new do |c|
147
- c.type = type
148
- raw.each { |k,v| c[k.to_sym] = v }
149
- end
141
+ def build_contact(element, type)
142
+ node(node(element)) do |raw|
143
+ Whois::Record::Contact.new do |c|
144
+ c.type = type
145
+ raw.each { |k,v| c[k.to_sym] = v }
150
146
  end
151
147
  end
148
+ end
152
149
 
153
- # Depending on record type, the address can be <tt>nil</tt>
154
- # or an array containing different address parts.
155
- def decompose_address(parts)
156
- addresses = parts || []
157
- address, city, zip, country_code = nil, nil, nil, nil
150
+ # Depending on record type, the address can be <tt>nil</tt>
151
+ # or an array containing different address parts.
152
+ def decompose_address(parts)
153
+ addresses = parts || []
154
+ address, city, zip, country_code = nil, nil, nil, nil
158
155
 
159
- if !addresses.empty?
160
- address = addresses[0] if addresses[0]
161
- zip, city = addresses[1].split(" ", 2) if addresses[1]
162
- country_code = addresses[2] if addresses[2]
163
- end
164
-
165
- [address, city, zip, country_code]
156
+ if !addresses.empty?
157
+ address = addresses[0] if addresses[0]
158
+ zip, city = addresses[1].split(" ", 2) if addresses[1]
159
+ country_code = addresses[2] if addresses[2]
166
160
  end
167
161
 
162
+ [address, city, zip, country_code]
163
+ end
164
+
168
165
  end
169
166
 
170
167
  end
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # An intelligent pure Ruby WHOIS client and parser.
5
5
  #
6
- # Copyright (c) 2009-2011 Simone Carletti <weppos@weppos.net>
6
+ # Copyright (c) 2009-2012 Simone Carletti <weppos@weppos.net>
7
7
  #++
8
8
 
9
9
 
@@ -15,11 +15,7 @@ module Whois
15
15
  class Record
16
16
  class Parser
17
17
 
18
- #
19
- # = whois.nic.it parser
20
- #
21
18
  # Parser for the whois.nic.it server.
22
- #
23
19
  class WhoisNicIt < Base
24
20
  include Scanners::Ast
25
21
 
@@ -30,7 +26,7 @@ module Whois
30
26
 
31
27
 
32
28
  property_supported :domain do
33
- node("Domain") { |raw| raw.downcase }
29
+ node("Domain") { |str| str.downcase }
34
30
  end
35
31
 
36
32
  property_not_supported :domain_id
@@ -82,39 +78,38 @@ module Whois
82
78
 
83
79
 
84
80
  property_supported :created_on do
85
- node("Created") { |raw| Time.parse(raw) }
81
+ node("Created") { |str| Time.parse(str) }
86
82
  end
87
83
 
88
84
  property_supported :updated_on do
89
- node("Last Update") { |raw| Time.parse(raw) }
85
+ node("Last Update") { |str| Time.parse(str) }
90
86
  end
91
87
 
92
88
  property_supported :expires_on do
93
- node("Expire Date") { |raw| Time.parse(raw) }
89
+ node("Expire Date") { |str| Time.parse(str) }
94
90
  end
95
91
 
96
92
 
97
93
  property_supported :registrar do
98
- node("Registrar") do |raw|
94
+ node("Registrar") do |str|
99
95
  Record::Registrar.new(
100
- :id => raw["Name"],
101
- :name => raw["Name"],
102
- :organization => raw["Organization"]
96
+ :id => str["Name"],
97
+ :name => str["Name"],
98
+ :organization => str["Organization"]
103
99
  )
104
100
  end
105
101
  end
106
102
 
107
-
108
103
  property_supported :registrant_contacts do
109
- contact("Registrant", Whois::Record::Contact::TYPE_REGISTRANT)
104
+ build_contact("Registrant", Whois::Record::Contact::TYPE_REGISTRANT)
110
105
  end
111
106
 
112
107
  property_supported :admin_contacts do
113
- contact("Admin Contact", Whois::Record::Contact::TYPE_ADMIN)
108
+ build_contact("Admin Contact", Whois::Record::Contact::TYPE_ADMIN)
114
109
  end
115
110
 
116
111
  property_supported :technical_contacts do
117
- contact("Technical Contacts", Whois::Record::Contact::TYPE_TECHNICAL)
112
+ build_contact("Technical Contacts", Whois::Record::Contact::TYPE_TECHNICAL)
118
113
  end
119
114
 
120
115
 
@@ -130,10 +125,10 @@ module Whois
130
125
  #
131
126
  # @return [Boolean]
132
127
  def response_unavailable?
133
- !!node("status:unavailable")
128
+ !!node("response:unavailable")
134
129
  end
135
130
 
136
- # Initializes a new {Scanners::WhoisIt} instance
131
+ # Initializes a new {Scanners::WhoisNicIt} instance
137
132
  # passing the {#content_for_scanner}
138
133
  # and calls +parse+ on it.
139
134
  #
@@ -143,27 +138,27 @@ module Whois
143
138
  end
144
139
 
145
140
 
146
- protected
147
-
148
- def contact(element, type)
149
- node(element) do |raw|
150
- address = (raw["Address"] || "").split("\n")
151
- company = address.size == 6 ? address.shift : nil
152
- Record::Contact.new(
153
- :id => raw["ContactID"],
154
- :type => type,
155
- :name => raw["Name"],
156
- :organization => raw["Organization"] || company,
157
- :address => address[0],
158
- :city => address[1],
159
- :zip => address[2],
160
- :state => address[3],
161
- :country_code => address[4],
162
- :created_on => raw["Created"] ? Time.parse(raw["Created"]) : nil,
163
- :updated_on => raw["Last Update"] ? Time.parse(raw["Last Update"]) : nil
164
- )
165
- end
141
+ private
142
+
143
+ def build_contact(element, type)
144
+ node(element) do |str|
145
+ address = (str["Address"] || "").split("\n")
146
+ company = address.size == 6 ? address.shift : nil
147
+ Record::Contact.new(
148
+ :id => str["ContactID"],
149
+ :type => type,
150
+ :name => str["Name"],
151
+ :organization => str["Organization"] || company,
152
+ :address => address[0],
153
+ :city => address[1],
154
+ :zip => address[2],
155
+ :state => address[3],
156
+ :country_code => address[4],
157
+ :created_on => str["Created"] ? Time.parse(str["Created"]) : nil,
158
+ :updated_on => str["Last Update"] ? Time.parse(str["Last Update"]) : nil
159
+ )
166
160
  end
161
+ end
167
162
 
168
163
  end
169
164