microformats2 2.9.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (313) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +125 -25
  3. data/Rakefile +0 -60
  4. data/lib/microformats2.rb +7 -15
  5. data/lib/microformats2/absolute_uri.rb +5 -1
  6. data/lib/microformats2/format_parser.rb +321 -46
  7. data/lib/microformats2/parser.rb +86 -6
  8. data/lib/microformats2/parser_core.rb +343 -0
  9. data/lib/microformats2/property_parser.rb +104 -34
  10. data/lib/microformats2/results/collection.rb +121 -0
  11. data/lib/microformats2/results/parser_result.rb +111 -0
  12. data/lib/microformats2/results/property_set.rb +87 -0
  13. data/lib/microformats2/time_property_parser.rb +161 -0
  14. data/lib/microformats2/version.rb +1 -1
  15. data/microformats2.gemspec +2 -1
  16. data/spec/lib/microformats2/absolute_uri_spec.rb +2 -2
  17. data/spec/lib/microformats2/parser_spec.rb +36 -5
  18. data/spec/lib/microformats2_spec.rb +5 -5
  19. data/spec/spec_helper.rb +0 -1
  20. data/vendor/tests/.gitignore +25 -0
  21. data/vendor/tests/LICENSE.md +36 -0
  22. data/vendor/tests/README.md +48 -0
  23. data/vendor/tests/app.js +84 -0
  24. data/vendor/tests/composer.json +5 -0
  25. data/vendor/tests/css/testsuite.css +159 -0
  26. data/vendor/tests/interface.js +18 -0
  27. data/vendor/tests/package.json +27 -0
  28. data/vendor/tests/tests/microformats-mixed/h-card/change-log.html +63 -0
  29. data/vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.html +14 -0
  30. data/vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.json +22 -0
  31. data/vendor/tests/tests/microformats-mixed/h-card/tworoots.html +1 -0
  32. data/vendor/tests/tests/microformats-mixed/h-card/tworoots.json +10 -0
  33. data/vendor/tests/tests/microformats-mixed/h-entry/mixedroots.html +16 -0
  34. data/vendor/tests/tests/microformats-mixed/h-entry/mixedroots.json +38 -0
  35. data/vendor/tests/tests/microformats-mixed/h-resume/change-log.html +68 -0
  36. data/vendor/tests/tests/microformats-mixed/h-resume/mixedroots.html +16 -0
  37. data/vendor/tests/tests/microformats-mixed/h-resume/mixedroots.json +31 -0
  38. data/vendor/tests/tests/microformats-v1/adr/change-log.html +63 -0
  39. data/vendor/tests/tests/microformats-v1/adr/simpleproperties.html +8 -0
  40. data/vendor/tests/tests/microformats-v1/adr/simpleproperties.json +15 -0
  41. data/vendor/tests/tests/microformats-v1/geo/abbrpattern.html +5 -0
  42. data/vendor/tests/tests/microformats-v1/geo/abbrpattern.json +11 -0
  43. data/vendor/tests/tests/microformats-v1/geo/change-log.1.html +78 -0
  44. data/vendor/tests/tests/microformats-v1/geo/change-log.html +63 -0
  45. data/vendor/tests/tests/microformats-v1/geo/hidden.html +10 -0
  46. data/vendor/tests/tests/microformats-v1/geo/hidden.json +11 -0
  47. data/vendor/tests/tests/microformats-v1/geo/simpleproperties.html +6 -0
  48. data/vendor/tests/tests/microformats-v1/geo/simpleproperties.json +11 -0
  49. data/vendor/tests/tests/microformats-v1/geo/valuetitleclass.html +11 -0
  50. data/vendor/tests/tests/microformats-v1/geo/valuetitleclass.json +11 -0
  51. data/vendor/tests/tests/microformats-v1/hcalendar/ampm.html +41 -0
  52. data/vendor/tests/tests/microformats-v1/hcalendar/ampm.json +21 -0
  53. data/vendor/tests/tests/microformats-v1/hcalendar/attendees.html +13 -0
  54. data/vendor/tests/tests/microformats-v1/hcalendar/attendees.json +37 -0
  55. data/vendor/tests/tests/microformats-v1/hcalendar/change-log.html +68 -0
  56. data/vendor/tests/tests/microformats-v1/hcalendar/combining.html +15 -0
  57. data/vendor/tests/tests/microformats-v1/hcalendar/combining.json +31 -0
  58. data/vendor/tests/tests/microformats-v1/hcalendar/concatenate.html +7 -0
  59. data/vendor/tests/tests/microformats-v1/hcalendar/concatenate.json +12 -0
  60. data/vendor/tests/tests/microformats-v1/hcalendar/time.html +44 -0
  61. data/vendor/tests/tests/microformats-v1/hcalendar/time.json +22 -0
  62. data/vendor/tests/tests/microformats-v1/hcard/change-log.html +68 -0
  63. data/vendor/tests/tests/microformats-v1/hcard/email.html +14 -0
  64. data/vendor/tests/tests/microformats-v1/hcard/email.json +11 -0
  65. data/vendor/tests/tests/microformats-v1/hcard/format.html +6 -0
  66. data/vendor/tests/tests/microformats-v1/hcard/format.json +11 -0
  67. data/vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.html +3 -0
  68. data/vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.json +8 -0
  69. data/vendor/tests/tests/microformats-v1/hcard/justahyperlink.html +1 -0
  70. data/vendor/tests/tests/microformats-v1/hcard/justahyperlink.json +8 -0
  71. data/vendor/tests/tests/microformats-v1/hcard/justaname.html +1 -0
  72. data/vendor/tests/tests/microformats-v1/hcard/justaname.json +8 -0
  73. data/vendor/tests/tests/microformats-v1/hcard/multiple.html +74 -0
  74. data/vendor/tests/tests/microformats-v1/hcard/multiple.json +65 -0
  75. data/vendor/tests/tests/microformats-v1/hcard/name.html +11 -0
  76. data/vendor/tests/tests/microformats-v1/hcard/name.json +15 -0
  77. data/vendor/tests/tests/microformats-v1/hcard/single.html +14 -0
  78. data/vendor/tests/tests/microformats-v1/hcard/single.json +24 -0
  79. data/vendor/tests/tests/microformats-v1/hentry/change-log.html +73 -0
  80. data/vendor/tests/tests/microformats-v1/hentry/summarycontent.html +20 -0
  81. data/vendor/tests/tests/microformats-v1/hentry/summarycontent.json +24 -0
  82. data/vendor/tests/tests/microformats-v1/hfeed/simple.html +30 -0
  83. data/vendor/tests/tests/microformats-v1/hfeed/simple.json +49 -0
  84. data/vendor/tests/tests/microformats-v1/hnews/all.html +37 -0
  85. data/vendor/tests/tests/microformats-v1/hnews/all.json +74 -0
  86. data/vendor/tests/tests/microformats-v1/hnews/change-log.html +72 -0
  87. data/vendor/tests/tests/microformats-v1/hnews/minimum.html +25 -0
  88. data/vendor/tests/tests/microformats-v1/hnews/minimum.json +48 -0
  89. data/vendor/tests/tests/microformats-v1/hproduct/aggregate.html +26 -0
  90. data/vendor/tests/tests/microformats-v1/hproduct/aggregate.json +52 -0
  91. data/vendor/tests/tests/microformats-v1/hproduct/change-log.html +62 -0
  92. data/vendor/tests/tests/microformats-v1/hproduct/simpleproperties.html +13 -0
  93. data/vendor/tests/tests/microformats-v1/hproduct/simpleproperties.json +33 -0
  94. data/vendor/tests/tests/microformats-v1/hresume/affiliation.html +12 -0
  95. data/vendor/tests/tests/microformats-v1/hresume/affiliation.json +25 -0
  96. data/vendor/tests/tests/microformats-v1/hresume/change-log.html +73 -0
  97. data/vendor/tests/tests/microformats-v1/hresume/contact.html +18 -0
  98. data/vendor/tests/tests/microformats-v1/hresume/contact.json +32 -0
  99. data/vendor/tests/tests/microformats-v1/hresume/education.html +13 -0
  100. data/vendor/tests/tests/microformats-v1/hresume/education.json +29 -0
  101. data/vendor/tests/tests/microformats-v1/hresume/skill.html +12 -0
  102. data/vendor/tests/tests/microformats-v1/hresume/skill.json +33 -0
  103. data/vendor/tests/tests/microformats-v1/hresume/work.html +16 -0
  104. data/vendor/tests/tests/microformats-v1/hresume/work.json +30 -0
  105. data/vendor/tests/tests/microformats-v1/hreview-aggregate/change-log.html +67 -0
  106. data/vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.html +18 -0
  107. data/vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.json +31 -0
  108. data/vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.html +6 -0
  109. data/vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.json +19 -0
  110. data/vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.html +13 -0
  111. data/vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.json +22 -0
  112. data/vendor/tests/tests/microformats-v1/hreview/change-log.html +73 -0
  113. data/vendor/tests/tests/microformats-v1/hreview/item.html +8 -0
  114. data/vendor/tests/tests/microformats-v1/hreview/item.json +19 -0
  115. data/vendor/tests/tests/microformats-v1/hreview/vcard.html +23 -0
  116. data/vendor/tests/tests/microformats-v1/hreview/vcard.json +58 -0
  117. data/vendor/tests/tests/microformats-v1/includes/change-log.html +72 -0
  118. data/vendor/tests/tests/microformats-v1/includes/hcarditemref.html +16 -0
  119. data/vendor/tests/tests/microformats-v1/includes/hcarditemref.json +49 -0
  120. data/vendor/tests/tests/microformats-v1/includes/heventitemref.html +25 -0
  121. data/vendor/tests/tests/microformats-v1/includes/heventitemref.json +33 -0
  122. data/vendor/tests/tests/microformats-v1/includes/hyperlink.html +18 -0
  123. data/vendor/tests/tests/microformats-v1/includes/hyperlink.json +43 -0
  124. data/vendor/tests/tests/microformats-v1/includes/object.html +23 -0
  125. data/vendor/tests/tests/microformats-v1/includes/object.json +42 -0
  126. data/vendor/tests/tests/microformats-v1/includes/table.html +12 -0
  127. data/vendor/tests/tests/microformats-v1/includes/table.json +19 -0
  128. data/vendor/tests/tests/microformats-v2/h-adr/change-log.html +62 -0
  129. data/vendor/tests/tests/microformats-v2/h-adr/geo.html +10 -0
  130. data/vendor/tests/tests/microformats-v2/h-adr/geo.json +16 -0
  131. data/vendor/tests/tests/microformats-v2/h-adr/geourl.html +4 -0
  132. data/vendor/tests/tests/microformats-v2/h-adr/geourl.json +13 -0
  133. data/vendor/tests/tests/microformats-v2/h-adr/justaname.html +1 -0
  134. data/vendor/tests/tests/microformats-v2/h-adr/justaname.json +10 -0
  135. data/vendor/tests/tests/microformats-v2/h-adr/lettercase.html +21 -0
  136. data/vendor/tests/tests/microformats-v2/h-adr/lettercase.json +12 -0
  137. data/vendor/tests/tests/microformats-v2/h-adr/simpleproperties.html +8 -0
  138. data/vendor/tests/tests/microformats-v2/h-adr/simpleproperties.json +16 -0
  139. data/vendor/tests/tests/microformats-v2/h-as-note/note.html +56 -0
  140. data/vendor/tests/tests/microformats-v2/h-as-note/note.json +98 -0
  141. data/vendor/tests/tests/microformats-v2/h-card/baseurl.html +6 -0
  142. data/vendor/tests/tests/microformats-v2/h-card/baseurl.json +26 -0
  143. data/vendor/tests/tests/microformats-v2/h-card/change-log.html +100 -0
  144. data/vendor/tests/tests/microformats-v2/h-card/childimplied.html +7 -0
  145. data/vendor/tests/tests/microformats-v2/h-card/childimplied.json +12 -0
  146. data/vendor/tests/tests/microformats-v2/h-card/extendeddescription.html +10 -0
  147. data/vendor/tests/tests/microformats-v2/h-card/extendeddescription.json +15 -0
  148. data/vendor/tests/tests/microformats-v2/h-card/hcard.html +4 -0
  149. data/vendor/tests/tests/microformats-v2/h-card/hcard.json +19 -0
  150. data/vendor/tests/tests/microformats-v2/h-card/horghcard.html +4 -0
  151. data/vendor/tests/tests/microformats-v2/h-card/horghcard.json +19 -0
  152. data/vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.html +3 -0
  153. data/vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.json +12 -0
  154. data/vendor/tests/tests/microformats-v2/h-card/impliedname.html +15 -0
  155. data/vendor/tests/tests/microformats-v2/h-card/impliedname.json +90 -0
  156. data/vendor/tests/tests/microformats-v2/h-card/impliedphoto.html +11 -0
  157. data/vendor/tests/tests/microformats-v2/h-card/impliedphoto.json +72 -0
  158. data/vendor/tests/tests/microformats-v2/h-card/impliedurl.html +5 -0
  159. data/vendor/tests/tests/microformats-v2/h-card/impliedurl.json +45 -0
  160. data/vendor/tests/tests/microformats-v2/h-card/justahyperlink.html +1 -0
  161. data/vendor/tests/tests/microformats-v2/h-card/justahyperlink.json +11 -0
  162. data/vendor/tests/tests/microformats-v2/h-card/justaname.html +1 -0
  163. data/vendor/tests/tests/microformats-v2/h-card/justaname.json +10 -0
  164. data/vendor/tests/tests/microformats-v2/h-card/nested.html +4 -0
  165. data/vendor/tests/tests/microformats-v2/h-card/nested.json +18 -0
  166. data/vendor/tests/tests/microformats-v2/h-card/p-property.html +21 -0
  167. data/vendor/tests/tests/microformats-v2/h-card/p-property.json +15 -0
  168. data/vendor/tests/tests/microformats-v2/h-card/relativeurls.html +6 -0
  169. data/vendor/tests/tests/microformats-v2/h-card/relativeurls.json +29 -0
  170. data/vendor/tests/tests/microformats-v2/h-entry/change-log.html +90 -0
  171. data/vendor/tests/tests/microformats-v2/h-entry/encoding.html +3 -0
  172. data/vendor/tests/tests/microformats-v2/h-entry/encoding.json +14 -0
  173. data/vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.html +9 -0
  174. data/vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.json +27 -0
  175. data/vendor/tests/tests/microformats-v2/h-entry/justahyperlink.html +1 -0
  176. data/vendor/tests/tests/microformats-v2/h-entry/justahyperlink.json +11 -0
  177. data/vendor/tests/tests/microformats-v2/h-entry/justaname.html +1 -0
  178. data/vendor/tests/tests/microformats-v2/h-entry/justaname.json +10 -0
  179. data/vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.html +4 -0
  180. data/vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.json +14 -0
  181. data/vendor/tests/tests/microformats-v2/h-entry/summarycontent.html +20 -0
  182. data/vendor/tests/tests/microformats-v2/h-entry/summarycontent.json +25 -0
  183. data/vendor/tests/tests/microformats-v2/h-entry/u-property.html +33 -0
  184. data/vendor/tests/tests/microformats-v2/h-entry/u-property.json +12 -0
  185. data/vendor/tests/tests/microformats-v2/h-entry/urlincontent.html +13 -0
  186. data/vendor/tests/tests/microformats-v2/h-entry/urlincontent.json +14 -0
  187. data/vendor/tests/tests/microformats-v2/h-event/ampm.html +41 -0
  188. data/vendor/tests/tests/microformats-v2/h-event/ampm.json +21 -0
  189. data/vendor/tests/tests/microformats-v2/h-event/attendees.html +13 -0
  190. data/vendor/tests/tests/microformats-v2/h-event/attendees.json +37 -0
  191. data/vendor/tests/tests/microformats-v2/h-event/change-log.html +82 -0
  192. data/vendor/tests/tests/microformats-v2/h-event/combining.html +13 -0
  193. data/vendor/tests/tests/microformats-v2/h-event/combining.json +25 -0
  194. data/vendor/tests/tests/microformats-v2/h-event/concatenate.html +8 -0
  195. data/vendor/tests/tests/microformats-v2/h-event/concatenate.json +12 -0
  196. data/vendor/tests/tests/microformats-v2/h-event/dates.html +13 -0
  197. data/vendor/tests/tests/microformats-v2/h-event/dates.json +26 -0
  198. data/vendor/tests/tests/microformats-v2/h-event/dt-property.html +23 -0
  199. data/vendor/tests/tests/microformats-v2/h-event/dt-property.json +20 -0
  200. data/vendor/tests/tests/microformats-v2/h-event/justahyperlink.html +1 -0
  201. data/vendor/tests/tests/microformats-v2/h-event/justahyperlink.json +11 -0
  202. data/vendor/tests/tests/microformats-v2/h-event/justaname.html +1 -0
  203. data/vendor/tests/tests/microformats-v2/h-event/justaname.json +10 -0
  204. data/vendor/tests/tests/microformats-v2/h-event/time.html +47 -0
  205. data/vendor/tests/tests/microformats-v2/h-event/time.json +25 -0
  206. data/vendor/tests/tests/microformats-v2/h-feed/implied-title.html +30 -0
  207. data/vendor/tests/tests/microformats-v2/h-feed/implied-title.json +23 -0
  208. data/vendor/tests/tests/microformats-v2/h-feed/simple.html +26 -0
  209. data/vendor/tests/tests/microformats-v2/h-feed/simple.json +33 -0
  210. data/vendor/tests/tests/microformats-v2/h-geo/abbrpattern.html +5 -0
  211. data/vendor/tests/tests/microformats-v2/h-geo/abbrpattern.json +12 -0
  212. data/vendor/tests/tests/microformats-v2/h-geo/altitude.html +8 -0
  213. data/vendor/tests/tests/microformats-v2/h-geo/altitude.json +13 -0
  214. data/vendor/tests/tests/microformats-v2/h-geo/change-log.html +67 -0
  215. data/vendor/tests/tests/microformats-v2/h-geo/hidden.html +10 -0
  216. data/vendor/tests/tests/microformats-v2/h-geo/hidden.json +12 -0
  217. data/vendor/tests/tests/microformats-v2/h-geo/justaname.html +3 -0
  218. data/vendor/tests/tests/microformats-v2/h-geo/justaname.json +10 -0
  219. data/vendor/tests/tests/microformats-v2/h-geo/simpleproperties.html +5 -0
  220. data/vendor/tests/tests/microformats-v2/h-geo/simpleproperties.json +12 -0
  221. data/vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.html +11 -0
  222. data/vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.json +12 -0
  223. data/vendor/tests/tests/microformats-v2/h-news/all.html +35 -0
  224. data/vendor/tests/tests/microformats-v2/h-news/all.json +51 -0
  225. data/vendor/tests/tests/microformats-v2/h-news/change-log.html +78 -0
  226. data/vendor/tests/tests/microformats-v2/h-news/minimum.html +24 -0
  227. data/vendor/tests/tests/microformats-v2/h-news/minimum.json +40 -0
  228. data/vendor/tests/tests/microformats-v2/h-org/change-log.html +57 -0
  229. data/vendor/tests/tests/microformats-v2/h-org/hyperlink.html +1 -0
  230. data/vendor/tests/tests/microformats-v2/h-org/hyperlink.json +11 -0
  231. data/vendor/tests/tests/microformats-v2/h-org/simple.html +1 -0
  232. data/vendor/tests/tests/microformats-v2/h-org/simple.json +10 -0
  233. data/vendor/tests/tests/microformats-v2/h-org/simpleproperties.html +4 -0
  234. data/vendor/tests/tests/microformats-v2/h-org/simpleproperties.json +12 -0
  235. data/vendor/tests/tests/microformats-v2/h-product/aggregate.html +21 -0
  236. data/vendor/tests/tests/microformats-v2/h-product/aggregate.json +45 -0
  237. data/vendor/tests/tests/microformats-v2/h-product/change-log.html +62 -0
  238. data/vendor/tests/tests/microformats-v2/h-product/justahyperlink.html +1 -0
  239. data/vendor/tests/tests/microformats-v2/h-product/justahyperlink.json +11 -0
  240. data/vendor/tests/tests/microformats-v2/h-product/justaname.html +1 -0
  241. data/vendor/tests/tests/microformats-v2/h-product/justaname.json +10 -0
  242. data/vendor/tests/tests/microformats-v2/h-product/simpleproperties.html +10 -0
  243. data/vendor/tests/tests/microformats-v2/h-product/simpleproperties.json +26 -0
  244. data/vendor/tests/tests/microformats-v2/h-recipe/all.html +63 -0
  245. data/vendor/tests/tests/microformats-v2/h-recipe/all.json +54 -0
  246. data/vendor/tests/tests/microformats-v2/h-recipe/change-log.html +62 -0
  247. data/vendor/tests/tests/microformats-v2/h-recipe/minimum.html +7 -0
  248. data/vendor/tests/tests/microformats-v2/h-recipe/minimum.json +17 -0
  249. data/vendor/tests/tests/microformats-v2/h-resume/affiliation.html +12 -0
  250. data/vendor/tests/tests/microformats-v2/h-resume/affiliation.json +20 -0
  251. data/vendor/tests/tests/microformats-v2/h-resume/change-log.html +78 -0
  252. data/vendor/tests/tests/microformats-v2/h-resume/contact.html +17 -0
  253. data/vendor/tests/tests/microformats-v2/h-resume/contact.json +26 -0
  254. data/vendor/tests/tests/microformats-v2/h-resume/education.html +13 -0
  255. data/vendor/tests/tests/microformats-v2/h-resume/education.json +30 -0
  256. data/vendor/tests/tests/microformats-v2/h-resume/justaname.html +1 -0
  257. data/vendor/tests/tests/microformats-v2/h-resume/justaname.json +10 -0
  258. data/vendor/tests/tests/microformats-v2/h-resume/skill.html +12 -0
  259. data/vendor/tests/tests/microformats-v2/h-resume/skill.json +12 -0
  260. data/vendor/tests/tests/microformats-v2/h-resume/work.html +16 -0
  261. data/vendor/tests/tests/microformats-v2/h-resume/work.json +31 -0
  262. data/vendor/tests/tests/microformats-v2/h-review-aggregate/change-log.html +78 -0
  263. data/vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.html +13 -0
  264. data/vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.json +23 -0
  265. data/vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.html +8 -0
  266. data/vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.json +19 -0
  267. data/vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.html +18 -0
  268. data/vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.json +26 -0
  269. data/vendor/tests/tests/microformats-v2/h-review/change-log.html +84 -0
  270. data/vendor/tests/tests/microformats-v2/h-review/hyperlink.html +1 -0
  271. data/vendor/tests/tests/microformats-v2/h-review/hyperlink.json +11 -0
  272. data/vendor/tests/tests/microformats-v2/h-review/implieditem.html +4 -0
  273. data/vendor/tests/tests/microformats-v2/h-review/implieditem.json +19 -0
  274. data/vendor/tests/tests/microformats-v2/h-review/item.html +8 -0
  275. data/vendor/tests/tests/microformats-v2/h-review/item.json +20 -0
  276. data/vendor/tests/tests/microformats-v2/h-review/justaname.html +1 -0
  277. data/vendor/tests/tests/microformats-v2/h-review/justaname.json +10 -0
  278. data/vendor/tests/tests/microformats-v2/h-review/photo.html +1 -0
  279. data/vendor/tests/tests/microformats-v2/h-review/photo.json +11 -0
  280. data/vendor/tests/tests/microformats-v2/h-review/vcard.html +23 -0
  281. data/vendor/tests/tests/microformats-v2/h-review/vcard.json +48 -0
  282. data/vendor/tests/tests/microformats-v2/rel/change-log.html +67 -0
  283. data/vendor/tests/tests/microformats-v2/rel/duplicate-rels.html +10 -0
  284. data/vendor/tests/tests/microformats-v2/rel/duplicate-rels.json +75 -0
  285. data/vendor/tests/tests/microformats-v2/rel/license.html +1 -0
  286. data/vendor/tests/tests/microformats-v2/rel/license.json +12 -0
  287. data/vendor/tests/tests/microformats-v2/rel/nofollow.html +1 -0
  288. data/vendor/tests/tests/microformats-v2/rel/nofollow.json +12 -0
  289. data/vendor/tests/tests/microformats-v2/rel/rel-urls.html +8 -0
  290. data/vendor/tests/tests/microformats-v2/rel/rel-urls.json +33 -0
  291. data/vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.html +4 -0
  292. data/vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.json +20 -0
  293. data/vendor/tests/tests/microformats-v2/rel/xfn-all.html +19 -0
  294. data/vendor/tests/tests/microformats-v2/rel/xfn-all.json +92 -0
  295. data/vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.html +10 -0
  296. data/vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.json +40 -0
  297. metadata +285 -37
  298. data/lib/microformats2/collection.rb +0 -136
  299. data/lib/microformats2/format.rb +0 -151
  300. data/lib/microformats2/implied_property/foundation.rb +0 -59
  301. data/lib/microformats2/implied_property/name.rb +0 -34
  302. data/lib/microformats2/implied_property/photo.rb +0 -28
  303. data/lib/microformats2/implied_property/url.rb +0 -24
  304. data/lib/microformats2/property.rb +0 -21
  305. data/lib/microformats2/property/date_time.rb +0 -28
  306. data/lib/microformats2/property/embedded.rb +0 -9
  307. data/lib/microformats2/property/foundation.rb +0 -143
  308. data/lib/microformats2/property/text.rb +0 -16
  309. data/lib/microformats2/property/url.rb +0 -26
  310. data/spec/lib/microformats2/collection_spec.rb +0 -252
  311. data/spec/lib/microformats2/implied_property/name_spec.rb +0 -31
  312. data/spec/lib/microformats2/implied_property/photo_spec.rb +0 -31
  313. data/spec/lib/microformats2/implied_property/url_spec.rb +0 -58
@@ -0,0 +1,15 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-card"],
4
+ "properties": {
5
+ "name": ["JohnDoe"],
6
+ "given-name": ["John"],
7
+ "additional-name": ["Peter"],
8
+ "family-name": ["Doe"],
9
+ "honorific-suffix": ["MSc", "PHD"],
10
+ "org": ["Madgex", "Mozilla"]
11
+ }
12
+ }],
13
+ "rels": {},
14
+ "rel-urls": {}
15
+ }
@@ -0,0 +1,6 @@
1
+ <base href="http://example.com" >
2
+ <div class="h-card">
3
+ <a class="p-name u-url" href="http://blog.lizardwrangler.com/">Mitchell Baker</a>
4
+ (<a class="p-org h-card" href="bios/mitchell-baker/">Mozilla Foundation</a>)
5
+ <img class="u-photo" src="bios/mitchell-baker/picture.jpeg"/>
6
+ </div>
@@ -0,0 +1,29 @@
1
+
2
+ {
3
+ "items": [{
4
+ "type": [
5
+ "h-card"
6
+ ],
7
+ "properties": {
8
+ "name": [
9
+ "Mitchell Baker"
10
+ ],
11
+ "url": ["http://blog.lizardwrangler.com/"],
12
+ "org": [
13
+ {
14
+ "value": "Mozilla Foundation",
15
+ "type": [
16
+ "h-card"
17
+ ],
18
+ "properties": {
19
+ "name": ["Mozilla Foundation"],
20
+ "url": ["http://example.com/bios/mitchell-baker/"]
21
+ }
22
+ }
23
+ ],
24
+ "photo": ["http://example.com/bios/mitchell-baker/picture.jpeg"]
25
+ }
26
+ }],
27
+ "rels": {},
28
+ "rel-urls": {}
29
+ }
@@ -0,0 +1,90 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <title>h-entry parsing tests</title>
6
+
7
+ <link rel="stylesheet" href="../../../css/testsuite.css">
8
+ <link rel="stylesheet" href="../../../prettify.css">
9
+
10
+ <script src="../../../javascript/prettify.js"></script>
11
+ <script src="../../../javascript/testsuite.js"></script>
12
+
13
+ </head>
14
+ <body class="h-feed">
15
+
16
+ <h1 class="p-name"><span class="p-x-format">h-entry</span> parsing tests &dash; change logs</h1>
17
+
18
+ <p class="p-description">The files in this directory where designed to test the expanding of relative URLs to absolute URLs in the HTML content of e-* propreties. </p>
19
+
20
+
21
+ <h2>Change log:</h2>
22
+ <ul>
23
+ <!-- Add change log event to the top of this list as a h-entry -->
24
+ <li class="h-entry">
25
+ <span class="p-name e-content">Moved from experiemental implied value nested test</span> &dash;
26
+ <time class="dt-published" datetime="2015-06-08">8 June 2015</time>
27
+ by <span class="p-author">Glenn Jones</span>
28
+ </li>
29
+ <li class="h-entry">
30
+ <span class="p-name e-content">Created implied value nested test</span> &dash;
31
+ <time class="dt-published" datetime="2015-06-01">1 June 2015</time>
32
+ by <span class="p-author">Kyle Mahan</span>
33
+ </li>
34
+ <li class="h-entry">
35
+ <span class="p-name e-content">Added missing space into html proprety of urlcontent test JSON</span> &dash;
36
+ <time class="dt-published" datetime="2015-05-31">31 May 2015</time>
37
+ by <span class="p-author">Glenn Jones</span>
38
+ </li>
39
+ <li class="h-entry">
40
+ <span class="p-name e-content">Update text output to be textContent non-trimmed for summarycontent and urlcontent tests</span> &dash;
41
+ <time class="dt-published" datetime="2015-05-29">29 May 2015</time>
42
+ by <span class="p-author">Glenn Jones</span>
43
+ </li>
44
+ <li class="h-entry">
45
+ <span class="p-name e-content">Added missing summmary property to summarycontent test</span> &dash;
46
+ <time class="dt-published" datetime="2015-05-23">23 May 2015</time>
47
+ by <span class="p-author">Glenn Jones</span>
48
+ </li>
49
+ <li class="h-entry">
50
+ <span class="p-name e-content">Remove duplicate structures from items[] in summarycontent test</span> &dash;
51
+ <time class="dt-published" datetime="2015-05-23">23 May 2015</time>
52
+ by <span class="p-author">Glenn Jones</span>
53
+ </li>
54
+ <li class="h-entry">
55
+ <span class="p-name e-content">Broke old HTML format into small files to aid simpler testing</span> &dash;
56
+ <time class="dt-published" datetime="2015-05-21">21 May 2015</time>
57
+ by <span class="p-author">Glenn Jones</span>
58
+ </li>
59
+ <li class="h-entry">
60
+ <span class="p-name e-content">Updated encoding issue on e-*</span> &dash;
61
+ <time class="dt-published" datetime="2013-09-19">19 September 2013</time>
62
+ by <span class="p-author">Glenn Jones</span>
63
+ </li>
64
+ <li class="h-entry">
65
+ <span class="p-name e-content">Created</span> &dash;
66
+ <time class="dt-published" datetime="2013-06-30">30 June 2013</time>
67
+ by <span class="p-author">Glenn Jones</span>
68
+ </li>
69
+ </ul>
70
+
71
+
72
+ <h2>Contributors:</h2>
73
+ <ul>
74
+ <!-- If you Contribute to the test please add yourself as an author using p-author h-card -->
75
+ <li class="p-author h-card">
76
+ <a class="u-url p-name" rel="author" href="https://kylewm.com/">Kyle Mahan</a>
77
+ </li>
78
+ <li class="p-author h-card">
79
+ <a class="u-url p-name" rel="author" href="http://www.glennjones.net/">Glenn Jones</a>
80
+ </li>
81
+ </ul>
82
+
83
+
84
+ <footer>
85
+ All content and code is released into the <a href="http://en.wikipedia.org/wiki/public_domain">public domain</a>
86
+ </footer>
87
+
88
+ </body>
89
+
90
+ </html>
@@ -0,0 +1,3 @@
1
+ <div class="h-entry">
2
+ <div class="p-name e-content">x&lt;y AT&amp;T &lt;b&gt;NotBold&lt;/b&gt; <b>Bold</b></div>
3
+ </div>
@@ -0,0 +1,14 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "name": ["x<y AT&T <b>NotBold</b> Bold"],
6
+ "content": [{
7
+ "value": "x<y AT&T <b>NotBold</b> Bold",
8
+ "html": "x&lt;y AT&amp;T &lt;b&gt;NotBold&lt;/b&gt; <b>Bold</b>"
9
+ }]
10
+ }
11
+ }],
12
+ "rels": {},
13
+ "rel-urls": {}
14
+ }
@@ -0,0 +1,9 @@
1
+ <div class="h-entry">
2
+ <div class="u-in-reply-to h-cite">
3
+ <span class="p-author h-card">
4
+ <span class="p-name">Example Author</span>
5
+ <a class="u-url" href="http://example.com">Home</a>
6
+ </span>
7
+ <a class="p-name u-url" href="http://example.com/post">Example Post</a>
8
+ </div>
9
+ </div>
@@ -0,0 +1,27 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "in-reply-to": [{
6
+ "type": ["h-cite"],
7
+ "properties": {
8
+ "name": ["Example Post"],
9
+ "url": ["http://example.com/post"],
10
+
11
+ "author": [{
12
+ "type": ["h-card"],
13
+ "properties": {
14
+ "url": ["http://example.com"],
15
+ "name": ["Example Author"]
16
+ },
17
+ "value": "Example Author"
18
+ }]
19
+ },
20
+ "value": "http://example.com/post"
21
+ }],
22
+ "name": ["Example Author\n Home\n \n Example Post"]
23
+ }
24
+ }],
25
+ "rels": {},
26
+ "rel-urls": {}
27
+ }
@@ -0,0 +1 @@
1
+ <a class="h-entry" href="http://microformats.org/2012/06/25/microformats-org-at-7">microformats.org at 7</a>
@@ -0,0 +1,11 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "name": ["microformats.org at 7"],
6
+ "url": ["http://microformats.org/2012/06/25/microformats-org-at-7"]
7
+ }
8
+ }],
9
+ "rels": {},
10
+ "rel-urls": {}
11
+ }
@@ -0,0 +1 @@
1
+ <p class="h-entry">microformats.org at 7</p>
@@ -0,0 +1,10 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "name": ["microformats.org at 7"]
6
+ }
7
+ }],
8
+ "rels": {},
9
+ "rel-urls": {}
10
+ }
@@ -0,0 +1,4 @@
1
+ <section class="h-entry">
2
+ <span class="p-name">A post<script>x = 1</script><style>p {color: #fff};</style></span>
3
+ <div class="e-content">text <strong>bold</strong><script>x = 1</script><style>strong {color: #fff};</style></span></div>
4
+ </section>
@@ -0,0 +1,14 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "name": ["A post"],
6
+ "content": [{
7
+ "value": "text bold",
8
+ "html": "text <strong>bold</strong><script>x = 1</script><style>strong {color: #fff};</style>"
9
+ }]
10
+ }
11
+ }],
12
+ "rels": {},
13
+ "rel-urls": {}
14
+ }
@@ -0,0 +1,20 @@
1
+ <meta charset="utf-8">
2
+ <div class="h-entry">
3
+ <h1><a class="p-name u-url" href="http://microformats.org/2012/06/25/microformats-org-at-7">microformats.org at 7</a></h1>
4
+ <div class="e-content">
5
+ <p class="p-summary">Last week the microformats.org community
6
+ celebrated its 7th birthday at a gathering hosted by Mozilla in
7
+ San Francisco and recognized accomplishments, challenges, and
8
+ opportunities.</p>
9
+
10
+ <p>The microformats tagline “humans first, machines second”
11
+ forms the basis of many of our
12
+ <a href="http://microformats.org/wiki/principles">principles</a>, and
13
+ in that regard, we’d like to recognize a few people and
14
+ thank them for their years of volunteer service </p>
15
+ </div>
16
+ <p>Updated
17
+ <time class="dt-updated" datetime="2012-06-25T17:08:26">June 25th, 2012</time> by
18
+ <a class="p-author h-card" href="http://tantek.com/">Tantek</a>
19
+ </p>
20
+ </div>
@@ -0,0 +1,25 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "url": ["http://microformats.org/2012/06/25/microformats-org-at-7"],
6
+ "name": ["microformats.org at 7"],
7
+ "content": [{
8
+ "value": "Last week the microformats.org community \n celebrated its 7th birthday at a gathering hosted by Mozilla in \n San Francisco and recognized accomplishments, challenges, and \n opportunities.\n\n The microformats tagline “humans first, machines second” \n forms the basis of many of our \n principles, and \n in that regard, we’d like to recognize a few people and \n thank them for their years of volunteer service",
9
+ "html": "\n <p class=\"p-summary\">Last week the microformats.org community \n celebrated its 7th birthday at a gathering hosted by Mozilla in \n San Francisco and recognized accomplishments, challenges, and \n opportunities.</p>\n\n <p>The microformats tagline “humans first, machines second” \n forms the basis of many of our \n <a href=\"http://microformats.org/wiki/principles\">principles</a>, and \n in that regard, we’d like to recognize a few people and \n thank them for their years of volunteer service </p>\n"
10
+ }],
11
+ "summary": ["Last week the microformats.org community \n celebrated its 7th birthday at a gathering hosted by Mozilla in \n San Francisco and recognized accomplishments, challenges, and \n opportunities."],
12
+ "updated": ["2012-06-25 17:08:26"],
13
+ "author": [{
14
+ "value": "Tantek",
15
+ "type": ["h-card"],
16
+ "properties": {
17
+ "name": ["Tantek"],
18
+ "url": ["http://tantek.com/"]
19
+ }
20
+ }]
21
+ }
22
+ }],
23
+ "rels": {},
24
+ "rel-urls": {}
25
+ }
@@ -0,0 +1,33 @@
1
+ <base href="http://example.com">
2
+ <div class="h-entry">
3
+ <p class="p-name">microformats.org at 7</p>
4
+
5
+
6
+ <p class="u-url">
7
+ <span class="value-title" title="http://microformats.org/"> </span>
8
+ Article permalink
9
+ </p>
10
+ <p class="u-url">
11
+ <span class="value">http://microformats.org/</span> -
12
+ <span class="value">2012/06/25/microformats-org-at-7</span>
13
+ </p>
14
+
15
+ <p><a class="u-url" href="http://microformats.org/2012/06/25/microformats-org-at-7">Article permalink</a></p>
16
+
17
+ <img src="images/logo.gif" alt="company logos" usemap="#logomap" />
18
+ <map name="logomap">
19
+ <area class="u-url" shape="rect" coords="0,0,82,126" href="http://microformats.org/" alt="microformats.org" />
20
+ </map>
21
+
22
+ <img class="u-photo" src="images/logo.gif" alt="company logos" />
23
+
24
+ <video class="u-photo" poster="posterimage.jpg">
25
+ Sorry, your browser doesn't support embedded videos.
26
+ </video>
27
+
28
+ <object class="u-url" data="http://microformats.org/wiki/microformats2-parsing"></object>
29
+
30
+ <abbr class="u-url" title="http://microformats.org/wiki/value-class-pattern">value-class-pattern</abbr>
31
+ <data class="u-url" value="http://microformats.org/wiki/"></data>
32
+ <p class="u-url">http://microformats.org/discuss</p>
33
+ </div>
@@ -0,0 +1,12 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "name": ["microformats.org at 7"],
6
+ "url": ["http://microformats.org/", "http://microformats.org/2012/06/25/microformats-org-at-7", "http://microformats.org/2012/06/25/microformats-org-at-7", "http://microformats.org/", "http://microformats.org/wiki/microformats2-parsing", "http://microformats.org/wiki/value-class-pattern", "http://microformats.org/wiki/", "http://microformats.org/discuss"],
7
+ "photo": ["http://example.com/images/logo.gif", "http://example.com/posterimage.jpg"]
8
+ }
9
+ }],
10
+ "rels": {},
11
+ "rel-urls": {}
12
+ }
@@ -0,0 +1,13 @@
1
+ <div class="h-entry">
2
+ <h1><a class="p-name">Expanding URLs within HTML content</a></h1>
3
+ <div class="e-content">
4
+ <ul>
5
+ <li><a href="http://www.w3.org/">Should not change: http://www.w3.org/</a></li>
6
+ <li><a href="http://example.com/">Should not change: http://example.com/</a></li>
7
+ <li><a href="test.html">File relative: test.html = http://example.com/test.html</a></li>
8
+ <li><a href="/test/test.html">Directory relative: /test/test.html = http://example.com/test/test.html</a></li>
9
+ <li><a href="/test.html">Relative to root: /test.html = http://example.com/test.html</a></li>
10
+ </ul>
11
+ <img src="images/photo.gif" />
12
+ </div>
13
+ </div>
@@ -0,0 +1,14 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-entry"],
4
+ "properties": {
5
+ "name": ["Expanding URLs within HTML content"],
6
+ "content": [{
7
+ "value": "Should not change: http://www.w3.org/\n Should not change: http://example.com/\n File relative: test.html = http://example.com/test.html\n Directory relative: /test/test.html = http://example.com/test/test.html\n Relative to root: /test.html = http://example.com/test.html",
8
+ "html": "\n <ul>\n <li><a href=\"http://www.w3.org/\">Should not change: http://www.w3.org/</a></li>\n <li><a href=\"http://example.com/\">Should not change: http://example.com/</a></li>\n <li><a href=\"http://example.com/test.html\">File relative: test.html = http://example.com/test.html</a></li>\n <li><a href=\"http://example.com/test/test.html\">Directory relative: /test/test.html = http://example.com/test/test.html</a></li>\n <li><a href=\"http://example.com/test.html\">Relative to root: /test.html = http://example.com/test.html</a></li>\n </ul>\n <img src=\"http://example.com/images/photo.gif\" />\n"
9
+ }]
10
+ }
11
+ }],
12
+ "rels": {},
13
+ "rel-urls": {}
14
+ }
@@ -0,0 +1,41 @@
1
+ <span class="h-event">
2
+ <span class="p-name">The 4th Microformat party</span> will be on
3
+ <ul>
4
+ <li class="dt-start">
5
+ <time class="value" datetime="2009-06-26">26 July</time>, from
6
+ <span class="value">07:00:00pm
7
+ </span></li>
8
+ <li class="dt-start">
9
+ <time class="value" datetime="2009-06-26">26 July</time>, from
10
+ <span class="value">07:00:00am
11
+ </span></li>
12
+ <li class="dt-start">
13
+ <time class="value" datetime="2009-06-26">26 July</time>, from
14
+ <span class="value">07:00pm
15
+ </span></li>
16
+ <li class="dt-start">
17
+ <time class="value" datetime="2009-06-26">26 July</time>, from
18
+ <span class="value">07pm
19
+ </span></li>
20
+ <li class="dt-start">
21
+ <time class="value" datetime="2009-06-26">26 July</time>, from
22
+ <span class="value">7pm
23
+ </span></li>
24
+ <li class="dt-start">
25
+ <time class="value" datetime="2009-06-26">26 July</time>, from
26
+ <span class="value">7:00pm
27
+ </span></li>
28
+ <li class="dt-start">
29
+ <time class="value" datetime="2009-06-26">26 July</time>, from
30
+ <span class="value">07:00p.m.
31
+ </span></li>
32
+ <li class="dt-start">
33
+ <time class="value" datetime="2009-06-26">26 July</time>, from
34
+ <span class="value">07:00PM
35
+ </span></li>
36
+ <li class="dt-start">
37
+ <time class="value" datetime="2009-06-26">26 July</time>, from
38
+ <span class="value">7:00am
39
+ </span></li>
40
+ </ul>
41
+ </span>
@@ -0,0 +1,21 @@
1
+ {
2
+ "items": [{
3
+ "type": ["h-event"],
4
+ "properties": {
5
+ "name": ["The 4th Microformat party"],
6
+ "start": [
7
+ "2009-06-26 19:00:00",
8
+ "2009-06-26 07:00:00",
9
+ "2009-06-26 19:00",
10
+ "2009-06-26 19:00",
11
+ "2009-06-26 19:00",
12
+ "2009-06-26 19:00",
13
+ "2009-06-26 19:00",
14
+ "2009-06-26 19:00",
15
+ "2009-06-26 07:00"
16
+ ]
17
+ }
18
+ }],
19
+ "rels": {},
20
+ "rel-urls": {}
21
+ }