narf 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (657) hide show
  1. data/ChangeLog +163 -0
  2. data/InstalledFiles +2227 -0
  3. data/README +124 -0
  4. data/TODO +88 -0
  5. data/bin/narftest +17 -0
  6. data/bug.rb +9 -0
  7. data/build.rb +314 -0
  8. data/build.rb~ +314 -0
  9. data/config.save +12 -0
  10. data/doc/apache_cgi.txt +17 -0
  11. data/doc/fastcgi.txt +19 -0
  12. data/doc/mod_ruby.txt +7 -0
  13. data/doc/rdoc/classes/Web.html +366 -0
  14. data/doc/rdoc/classes/Web.src/M000002.html +15 -0
  15. data/doc/rdoc/classes/Web.src/M000003.html +15 -0
  16. data/doc/rdoc/classes/Web.src/M000004.html +15 -0
  17. data/doc/rdoc/classes/Web.src/M000005.html +15 -0
  18. data/doc/rdoc/classes/Web.src/M000006.html +20 -0
  19. data/doc/rdoc/classes/Web.src/M000007.html +18 -0
  20. data/doc/rdoc/classes/Web.src/M000008.html +18 -0
  21. data/doc/rdoc/classes/Web.src/M000009.html +18 -0
  22. data/doc/rdoc/classes/Web.src/M000010.html +15 -0
  23. data/doc/rdoc/classes/Web.src/M000011.html +15 -0
  24. data/doc/rdoc/classes/Web.src/M000012.html +15 -0
  25. data/doc/rdoc/classes/Web/CGD.html +173 -0
  26. data/doc/rdoc/classes/Web/CGD.src/M000037.html +24 -0
  27. data/doc/rdoc/classes/Web/CGD.src/M000038.html +23 -0
  28. data/doc/rdoc/classes/Web/CGD.src/M000039.html +15 -0
  29. data/doc/rdoc/classes/Web/CGD.src/M000040.html +15 -0
  30. data/doc/rdoc/classes/Web/CGD.src/M000041.html +23 -0
  31. data/doc/rdoc/classes/Web/CGI.html +946 -0
  32. data/doc/rdoc/classes/Web/CGI.src/M000051.html +15 -0
  33. data/doc/rdoc/classes/Web/CGI.src/M000052.html +24 -0
  34. data/doc/rdoc/classes/Web/CGI.src/M000053.html +15 -0
  35. data/doc/rdoc/classes/Web/CGI.src/M000054.html +15 -0
  36. data/doc/rdoc/classes/Web/CGI.src/M000055.html +15 -0
  37. data/doc/rdoc/classes/Web/CGI.src/M000056.html +15 -0
  38. data/doc/rdoc/classes/Web/CGI.src/M000057.html +17 -0
  39. data/doc/rdoc/classes/Web/CGI.src/M000058.html +34 -0
  40. data/doc/rdoc/classes/Web/CGI.src/M000059.html +22 -0
  41. data/doc/rdoc/classes/Web/CGI.src/M000060.html +15 -0
  42. data/doc/rdoc/classes/Web/CGI.src/M000061.html +15 -0
  43. data/doc/rdoc/classes/Web/CGI.src/M000062.html +19 -0
  44. data/doc/rdoc/classes/Web/CGI.src/M000063.html +18 -0
  45. data/doc/rdoc/classes/Web/CGI.src/M000064.html +19 -0
  46. data/doc/rdoc/classes/Web/CGI.src/M000065.html +15 -0
  47. data/doc/rdoc/classes/Web/CGI.src/M000066.html +15 -0
  48. data/doc/rdoc/classes/Web/CGI.src/M000067.html +15 -0
  49. data/doc/rdoc/classes/Web/CGI.src/M000068.html +13 -0
  50. data/doc/rdoc/classes/Web/CGI.src/M000069.html +13 -0
  51. data/doc/rdoc/classes/Web/CGI.src/M000070.html +13 -0
  52. data/doc/rdoc/classes/Web/CGI.src/M000071.html +13 -0
  53. data/doc/rdoc/classes/Web/CGI.src/M000072.html +19 -0
  54. data/doc/rdoc/classes/Web/CGI.src/M000073.html +15 -0
  55. data/doc/rdoc/classes/Web/CGI.src/M000074.html +19 -0
  56. data/doc/rdoc/classes/Web/CGI.src/M000075.html +15 -0
  57. data/doc/rdoc/classes/Web/CGI.src/M000076.html +15 -0
  58. data/doc/rdoc/classes/Web/CGI.src/M000077.html +15 -0
  59. data/doc/rdoc/classes/Web/CGI.src/M000078.html +20 -0
  60. data/doc/rdoc/classes/Web/CGI.src/M000079.html +36 -0
  61. data/doc/rdoc/classes/Web/CGI.src/M000080.html +19 -0
  62. data/doc/rdoc/classes/Web/CGI.src/M000081.html +18 -0
  63. data/doc/rdoc/classes/Web/CGI.src/M000082.html +15 -0
  64. data/doc/rdoc/classes/Web/CGI.src/M000083.html +17 -0
  65. data/doc/rdoc/classes/Web/CGI.src/M000084.html +15 -0
  66. data/doc/rdoc/classes/Web/CGI.src/M000085.html +16 -0
  67. data/doc/rdoc/classes/Web/CGI.src/M000086.html +15 -0
  68. data/doc/rdoc/classes/Web/CGI.src/M000087.html +15 -0
  69. data/doc/rdoc/classes/Web/CGI.src/M000088.html +15 -0
  70. data/doc/rdoc/classes/Web/CGI.src/M000089.html +16 -0
  71. data/doc/rdoc/classes/Web/CGI.src/M000090.html +15 -0
  72. data/doc/rdoc/classes/Web/CGI.src/M000091.html +15 -0
  73. data/doc/rdoc/classes/Web/CGI.src/M000092.html +15 -0
  74. data/doc/rdoc/classes/Web/CGI.src/M000093.html +15 -0
  75. data/doc/rdoc/classes/Web/CGI.src/M000094.html +15 -0
  76. data/doc/rdoc/classes/Web/CGI.src/M000095.html +15 -0
  77. data/doc/rdoc/classes/Web/CGI.src/M000096.html +19 -0
  78. data/doc/rdoc/classes/Web/CGI.src/M000097.html +15 -0
  79. data/doc/rdoc/classes/Web/CGI.src/M000098.html +15 -0
  80. data/doc/rdoc/classes/Web/CGI.src/M000099.html +43 -0
  81. data/doc/rdoc/classes/Web/CGI.src/M000100.html +18 -0
  82. data/doc/rdoc/classes/Web/CGI.src/M000101.html +20 -0
  83. data/doc/rdoc/classes/Web/CGI.src/M000102.html +15 -0
  84. data/doc/rdoc/classes/Web/CGI.src/M000103.html +15 -0
  85. data/doc/rdoc/classes/Web/CGI.src/M000104.html +15 -0
  86. data/doc/rdoc/classes/Web/CGI.src/M000105.html +24 -0
  87. data/doc/rdoc/classes/Web/CGI.src/M000106.html +24 -0
  88. data/doc/rdoc/classes/Web/CGI.src/M000107.html +22 -0
  89. data/doc/rdoc/classes/Web/CaseInsensitiveHash.html +104 -0
  90. data/doc/rdoc/classes/Web/CaseInsensitiveHash.src/M000118.html +15 -0
  91. data/doc/rdoc/classes/Web/CaseInsensitiveHash.src/M000119.html +15 -0
  92. data/doc/rdoc/classes/Web/CaseInsensitiveHash.src/M000120.html +15 -0
  93. data/doc/rdoc/classes/Web/Mime.html +122 -0
  94. data/doc/rdoc/classes/Web/Mime.src/M000118.html +15 -0
  95. data/doc/rdoc/classes/Web/Mime.src/M000119.html +15 -0
  96. data/doc/rdoc/classes/Web/Mime.src/M000120.html +23 -0
  97. data/doc/rdoc/classes/Web/Mime.src/M000121.html +15 -0
  98. data/doc/rdoc/classes/Web/Mime.src/M000122.html +15 -0
  99. data/doc/rdoc/classes/Web/Mime.src/M000123.html +23 -0
  100. data/doc/rdoc/classes/Web/Mime.src/M000124.html +15 -0
  101. data/doc/rdoc/classes/Web/Narflates.html +132 -0
  102. data/doc/rdoc/classes/Web/Parser.html +219 -0
  103. data/doc/rdoc/classes/Web/Parser.src/M000013.html +21 -0
  104. data/doc/rdoc/classes/Web/Parser.src/M000014.html +19 -0
  105. data/doc/rdoc/classes/Web/Parser.src/M000015.html +21 -0
  106. data/doc/rdoc/classes/Web/Parser.src/M000016.html +15 -0
  107. data/doc/rdoc/classes/Web/Parser.src/M000017.html +30 -0
  108. data/doc/rdoc/classes/Web/Parser.src/M000018.html +15 -0
  109. data/doc/rdoc/classes/Web/Parser.src/M000019.html +19 -0
  110. data/doc/rdoc/classes/Web/Parser.src/M000020.html +27 -0
  111. data/doc/rdoc/classes/Web/Parser.src/M000021.html +15 -0
  112. data/doc/rdoc/classes/Web/Parser.src/M000022.html +16 -0
  113. data/doc/rdoc/classes/Web/Parser.src/M000023.html +18 -0
  114. data/doc/rdoc/classes/Web/Session.html +178 -0
  115. data/doc/rdoc/classes/Web/Session.src/M000042.html +20 -0
  116. data/doc/rdoc/classes/Web/Session.src/M000043.html +19 -0
  117. data/doc/rdoc/classes/Web/Session.src/M000044.html +21 -0
  118. data/doc/rdoc/classes/Web/Session.src/M000045.html +21 -0
  119. data/doc/rdoc/classes/Web/Session.src/M000046.html +15 -0
  120. data/doc/rdoc/classes/Web/Session.src/M000047.html +17 -0
  121. data/doc/rdoc/classes/Web/Session.src/M000048.html +15 -0
  122. data/doc/rdoc/classes/Web/Session.src/M000049.html +15 -0
  123. data/doc/rdoc/classes/Web/Session.src/M000050.html +16 -0
  124. data/doc/rdoc/classes/Web/Testing.html +474 -0
  125. data/doc/rdoc/classes/Web/Testing.src/M000024.html +15 -0
  126. data/doc/rdoc/classes/Web/Testing.src/M000025.html +25 -0
  127. data/doc/rdoc/classes/Web/Testing.src/M000026.html +15 -0
  128. data/doc/rdoc/classes/Web/Testing.src/M000027.html +28 -0
  129. data/doc/rdoc/classes/Web/Testing.src/M000028.html +58 -0
  130. data/doc/rdoc/classes/Web/Testing.src/M000029.html +15 -0
  131. data/doc/rdoc/classes/Web/Testing.src/M000030.html +15 -0
  132. data/doc/rdoc/classes/Web/Testing.src/M000031.html +15 -0
  133. data/doc/rdoc/classes/Web/Testing.src/M000032.html +15 -0
  134. data/doc/rdoc/classes/Web/Testing.src/M000033.html +15 -0
  135. data/doc/rdoc/classes/Web/Testing.src/M000034.html +15 -0
  136. data/doc/rdoc/classes/Web/Testing.src/M000035.html +15 -0
  137. data/doc/rdoc/classes/Web/Testing.src/M000036.html +18 -0
  138. data/doc/rdoc/classes/Web/Upload.html +160 -0
  139. data/doc/rdoc/classes/Web/Upload.src/M000108.html +25 -0
  140. data/doc/rdoc/classes/Web/Upload.src/M000109.html +18 -0
  141. data/doc/rdoc/classes/Web/Upload.src/M000110.html +16 -0
  142. data/doc/rdoc/classes/Web/Upload.src/M000111.html +16 -0
  143. data/doc/rdoc/classes/Web/Wiki.html +249 -0
  144. data/doc/rdoc/classes/Web/Wiki.src/M000112.html +25 -0
  145. data/doc/rdoc/classes/Web/Wiki.src/M000113.html +15 -0
  146. data/doc/rdoc/classes/Web/Wiki.src/M000114.html +26 -0
  147. data/doc/rdoc/classes/Web/Wiki.src/M000115.html +21 -0
  148. data/doc/rdoc/classes/Web/Wiki.src/M000116.html +18 -0
  149. data/doc/rdoc/classes/Web/Wiki.src/M000117.html +19 -0
  150. data/doc/rdoc/created.rid +1 -0
  151. data/doc/rdoc/files/README.html +226 -0
  152. data/doc/rdoc/files/doc/apache_cgi_txt.html +82 -0
  153. data/doc/rdoc/files/doc/fastcgi_txt.html +82 -0
  154. data/doc/rdoc/files/doc/mod_ruby_txt.html +62 -0
  155. data/doc/rdoc/files/doc/webrick_txt.html +79 -0
  156. data/doc/rdoc/files/examples/examples_rdoc.html +73 -0
  157. data/doc/rdoc/files/lib/web/cgi_rb.html +75 -0
  158. data/doc/rdoc/files/lib/web/mime_rb.html +67 -0
  159. data/doc/rdoc/files/lib/web/parser_rb.html +73 -0
  160. data/doc/rdoc/files/lib/web/session_rb.html +73 -0
  161. data/doc/rdoc/files/lib/web/template_rb.html +73 -0
  162. data/doc/rdoc/files/lib/web/testing_rb.html +67 -0
  163. data/doc/rdoc/files/lib/web/upload_rb.html +73 -0
  164. data/doc/rdoc/files/lib/web/wiki_rb.html +79 -0
  165. data/doc/rdoc/files/lib/web_rb.html +116 -0
  166. data/doc/rdoc/files/lib/web_rb.src/M000001.html +15 -0
  167. data/doc/rdoc/fr_class_index.html +47 -0
  168. data/doc/rdoc/fr_file_index.html +52 -0
  169. data/doc/rdoc/fr_method_index.html +158 -0
  170. data/doc/rdoc/index.html +22 -0
  171. data/doc/rdoc/rdoc-style.css +99 -0
  172. data/doc/webrick.txt +23 -0
  173. data/examples/admin.rb +8 -0
  174. data/examples/admin.rb~ +5 -0
  175. data/examples/cookbook.rdoc +247 -0
  176. data/examples/cookbook.rdoc~ +238 -0
  177. data/examples/examples.rdoc +19 -0
  178. data/examples/examples.rdoc~ +17 -0
  179. data/examples/hello.world.rb +5 -0
  180. data/examples/hello.world.rb~ +3 -0
  181. data/examples/session.rb +34 -0
  182. data/examples/session.rb~ +31 -0
  183. data/examples/test/test.hello.world.rb +9 -0
  184. data/examples/test/test.hello.world.rb~ +9 -0
  185. data/examples/test/test.session.rb +37 -0
  186. data/examples/test/test.session.rb~ +37 -0
  187. data/examples/webunit/COPYING +340 -0
  188. data/examples/webunit/Makefile +14 -0
  189. data/examples/webunit/TIPS-ja.html +126 -0
  190. data/examples/webunit/TIPS-ja.rd +154 -0
  191. data/examples/webunit/TODO-ja.html +35 -0
  192. data/examples/webunit/TODO-ja.rd +28 -0
  193. data/examples/webunit/changes.rd +185 -0
  194. data/examples/webunit/conv/digit-0.cgi +40 -0
  195. data/examples/webunit/conv/digit-0.rb +21 -0
  196. data/examples/webunit/conv/digit-1.cgi +44 -0
  197. data/examples/webunit/conv/digit-1.rb +17 -0
  198. data/examples/webunit/conv/digit.cgi +59 -0
  199. data/examples/webunit/conv/digit.rb +23 -0
  200. data/examples/webunit/conv/test_digit-0.rb +16 -0
  201. data/examples/webunit/conv/test_digit-1.rb +19 -0
  202. data/examples/webunit/conv/test_digit.rb +26 -0
  203. data/examples/webunit/conv/test_digit_view-0.rb +76 -0
  204. data/examples/webunit/conv/test_digit_view-1.rb +102 -0
  205. data/examples/webunit/conv/test_digit_view.rb +134 -0
  206. data/examples/webunit/example.rd +37 -0
  207. data/examples/webunit/index-en.html +263 -0
  208. data/examples/webunit/index-en.rd +60 -0
  209. data/examples/webunit/index-ja.html +263 -0
  210. data/examples/webunit/index-ja.rd +60 -0
  211. data/examples/wiki.rb +7 -0
  212. data/examples/wiki.rb~ +5 -0
  213. data/install.rb +1022 -0
  214. data/lib/web.rb +290 -0
  215. data/lib/web.rb~ +290 -0
  216. data/lib/web/#assertinclude.rb# +110 -0
  217. data/lib/web/action.rb +82 -0
  218. data/lib/web/assertinclude.rb +110 -0
  219. data/lib/web/assertinclude.rb~ +110 -0
  220. data/lib/web/buffer.rb +20 -0
  221. data/lib/web/cgi.rb +641 -0
  222. data/lib/web/cgi.rb~ +640 -0
  223. data/lib/web/formreader.rb +317 -0
  224. data/lib/web/forms.rb +104 -0
  225. data/lib/web/htmlparser/html-parser.rb +429 -0
  226. data/lib/web/htmlparser/html-parser.rb~ +429 -0
  227. data/lib/web/htmlparser/sgml-parser.rb +332 -0
  228. data/lib/web/htmlparser/sgml-parser.rb~ +332 -0
  229. data/lib/web/htmltools/element.rb +296 -0
  230. data/lib/web/htmltools/element.rb~ +296 -0
  231. data/lib/web/htmltools/stparser.rb +276 -0
  232. data/lib/web/htmltools/stparser.rb~ +276 -0
  233. data/lib/web/htmltools/tags.rb +286 -0
  234. data/lib/web/htmltools/tags.rb~ +286 -0
  235. data/lib/web/htmltools/tree.rb +139 -0
  236. data/lib/web/htmltools/tree.rb~ +139 -0
  237. data/lib/web/htmltools/xmltree.rb +160 -0
  238. data/lib/web/htmltools/xmltree.rb~ +160 -0
  239. data/lib/web/htmltools/xpath.rb +71 -0
  240. data/lib/web/htmltools/xpath.rb~ +71 -0
  241. data/lib/web/mime.rb +82 -0
  242. data/lib/web/parser.rb +266 -0
  243. data/lib/web/parser.rb~ +266 -0
  244. data/lib/web/request.rb~ +238 -0
  245. data/lib/web/resources/mime.types +483 -0
  246. data/lib/web/runner.rb +26 -0
  247. data/lib/web/runner.rb~ +26 -0
  248. data/lib/web/sapi/fastcgi.rb +26 -0
  249. data/lib/web/sapi/fastcgi.rb~ +25 -0
  250. data/lib/web/sapi/mod_ruby.rb +46 -0
  251. data/lib/web/sapi/mod_ruby.rb~ +46 -0
  252. data/lib/web/sapi/webrick.rb +91 -0
  253. data/lib/web/sapi/webrick.rb~ +89 -0
  254. data/lib/web/session.rb +75 -0
  255. data/lib/web/session.rb~ +75 -0
  256. data/lib/web/simpledispatcher.rb +155 -0
  257. data/lib/web/strscanparser.rb +24 -0
  258. data/lib/web/tagparser.rb +96 -0
  259. data/lib/web/tagparser.rb~ +96 -0
  260. data/lib/web/template.rb +613 -0
  261. data/lib/web/template.rb~ +613 -0
  262. data/lib/web/testing.rb +546 -0
  263. data/lib/web/testing.rb~ +546 -0
  264. data/lib/web/traceoutput.rb +32 -0
  265. data/lib/web/unit.rb +27 -0
  266. data/lib/web/unit/assert.rb +154 -0
  267. data/lib/web/unit/converter.rb +148 -0
  268. data/lib/web/unit/cookie.rb +120 -0
  269. data/lib/web/unit/domwalker.rb +187 -0
  270. data/lib/web/unit/exception.rb +15 -0
  271. data/lib/web/unit/form.rb +118 -0
  272. data/lib/web/unit/formatter.rb +314 -0
  273. data/lib/web/unit/frame.rb +39 -0
  274. data/lib/web/unit/html-parser.rb +432 -0
  275. data/lib/web/unit/htmlelem.rb +124 -0
  276. data/lib/web/unit/htmlrepair.rb +116 -0
  277. data/lib/web/unit/htmlsplit.rb +840 -0
  278. data/lib/web/unit/image.rb +27 -0
  279. data/lib/web/unit/jscript.rb +32 -0
  280. data/lib/web/unit/link.rb +35 -0
  281. data/lib/web/unit/params.rb +323 -0
  282. data/lib/web/unit/parser.rb +226 -0
  283. data/lib/web/unit/resources/assert.html +101 -0
  284. data/lib/web/unit/resources/auth/index.html +5 -0
  285. data/lib/web/unit/resources/badtags.html +7 -0
  286. data/lib/web/unit/resources/cookie.cgi +33 -0
  287. data/lib/web/unit/resources/document.xml +13 -0
  288. data/lib/web/unit/resources/form.html +150 -0
  289. data/lib/web/unit/resources/frame-0.html +10 -0
  290. data/lib/web/unit/resources/frame-1.html +10 -0
  291. data/lib/web/unit/resources/frame.html +10 -0
  292. data/lib/web/unit/resources/image.html +17 -0
  293. data/lib/web/unit/resources/images/x.gif +0 -0
  294. data/lib/web/unit/resources/images/y.gif +0 -0
  295. data/lib/web/unit/resources/jscript-0.html +10 -0
  296. data/lib/web/unit/resources/jscript-1.html +10 -0
  297. data/lib/web/unit/resources/jscript.html +19 -0
  298. data/lib/web/unit/resources/link.html +19 -0
  299. data/lib/web/unit/resources/multipart.cgi +28 -0
  300. data/lib/web/unit/resources/multipart.html +74 -0
  301. data/lib/web/unit/resources/params.html +65 -0
  302. data/lib/web/unit/resources/redirect.cgi +13 -0
  303. data/lib/web/unit/resources/response.html +67 -0
  304. data/lib/web/unit/resources/simple.cgi +14 -0
  305. data/lib/web/unit/resources/stock.cgi +35 -0
  306. data/lib/web/unit/resources/table.html +83 -0
  307. data/lib/web/unit/response.rb +469 -0
  308. data/lib/web/unit/response.rb~ +461 -0
  309. data/lib/web/unit/runtest.rb +44 -0
  310. data/lib/web/unit/sgml-parser.rb +336 -0
  311. data/lib/web/unit/table.rb +150 -0
  312. data/lib/web/unit/testcase.rb +49 -0
  313. data/lib/web/unit/ui/cui/testrunner.rb +52 -0
  314. data/lib/web/unit/ui/cui/testrunner.rb~ +50 -0
  315. data/lib/web/unit/utils.rb +70 -0
  316. data/lib/web/unit/webunit.rb +28 -0
  317. data/lib/web/upload.rb +55 -0
  318. data/lib/web/upload.rb~ +262 -0
  319. data/lib/web/wiki.rb +506 -0
  320. data/lib/web/wiki.rb~ +506 -0
  321. data/lib/web/wiki/linker.rb +72 -0
  322. data/lib/web/wiki/linker.rb~ +72 -0
  323. data/lib/web/wiki/mime.rb~ +68 -0
  324. data/lib/web/wiki/page.rb +192 -0
  325. data/lib/web/wiki/page.rb~ +192 -0
  326. data/lib/web/wiki/resources/#edit.html# +65 -0
  327. data/lib/web/wiki/resources/admin.html +13 -0
  328. data/lib/web/wiki/resources/admin.html~ +13 -0
  329. data/lib/web/wiki/resources/asset_history.html +3 -0
  330. data/lib/web/wiki/resources/basic.html +1 -0
  331. data/lib/web/wiki/resources/default-content_editor.html +1 -0
  332. data/lib/web/wiki/resources/default-content_editor.html~ +1 -0
  333. data/lib/web/wiki/resources/edit.html +1 -1
  334. data/lib/web/wiki/resources/edit.html~ +1 -1
  335. data/lib/web/wiki/resources/ekit-content_editor.html +1 -0
  336. data/lib/web/wiki/resources/home.html +10 -0
  337. data/lib/web/wiki/resources/home.html~ +10 -0
  338. data/lib/web/wiki/resources/htmlarea/ChangeLog +1185 -0
  339. data/lib/web/wiki/resources/htmlarea/dialog.js +72 -0
  340. data/lib/web/wiki/resources/htmlarea/examples/2-areas.cgi +16 -0
  341. data/lib/web/wiki/resources/htmlarea/examples/2-areas.html +158 -0
  342. data/lib/web/wiki/resources/htmlarea/examples/context-menu.html +95 -0
  343. data/lib/web/wiki/resources/htmlarea/examples/core.html +184 -0
  344. data/lib/web/wiki/resources/htmlarea/examples/css.html +88 -0
  345. data/lib/web/wiki/resources/htmlarea/examples/custom.css +29 -0
  346. data/lib/web/wiki/resources/htmlarea/examples/full-page.html +75 -0
  347. data/lib/web/wiki/resources/htmlarea/examples/fully-loaded.html +248 -0
  348. data/lib/web/wiki/resources/htmlarea/examples/index.html +40 -0
  349. data/lib/web/wiki/resources/htmlarea/examples/spell-checker.html +132 -0
  350. data/lib/web/wiki/resources/htmlarea/examples/table-operations.html +116 -0
  351. data/lib/web/wiki/resources/htmlarea/examples/test.cgi +21 -0
  352. data/lib/web/wiki/resources/htmlarea/htmlarea.css +180 -0
  353. data/lib/web/wiki/resources/htmlarea/htmlarea.js +2175 -0
  354. data/lib/web/wiki/resources/htmlarea/images/ed_about.gif +0 -0
  355. data/lib/web/wiki/resources/htmlarea/images/ed_align_center.gif +0 -0
  356. data/lib/web/wiki/resources/htmlarea/images/ed_align_justify.gif +0 -0
  357. data/lib/web/wiki/resources/htmlarea/images/ed_align_left.gif +0 -0
  358. data/lib/web/wiki/resources/htmlarea/images/ed_align_right.gif +0 -0
  359. data/lib/web/wiki/resources/htmlarea/images/ed_blank.gif +0 -0
  360. data/lib/web/wiki/resources/htmlarea/images/ed_charmap.gif +0 -0
  361. data/lib/web/wiki/resources/htmlarea/images/ed_color_bg.gif +0 -0
  362. data/lib/web/wiki/resources/htmlarea/images/ed_color_fg.gif +0 -0
  363. data/lib/web/wiki/resources/htmlarea/images/ed_copy.gif +0 -0
  364. data/lib/web/wiki/resources/htmlarea/images/ed_custom.gif +0 -0
  365. data/lib/web/wiki/resources/htmlarea/images/ed_cut.gif +0 -0
  366. data/lib/web/wiki/resources/htmlarea/images/ed_delete.gif +0 -0
  367. data/lib/web/wiki/resources/htmlarea/images/ed_format_bold.gif +0 -0
  368. data/lib/web/wiki/resources/htmlarea/images/ed_format_italic.gif +0 -0
  369. data/lib/web/wiki/resources/htmlarea/images/ed_format_strike.gif +0 -0
  370. data/lib/web/wiki/resources/htmlarea/images/ed_format_sub.gif +0 -0
  371. data/lib/web/wiki/resources/htmlarea/images/ed_format_sup.gif +0 -0
  372. data/lib/web/wiki/resources/htmlarea/images/ed_format_underline.gif +0 -0
  373. data/lib/web/wiki/resources/htmlarea/images/ed_help.gif +0 -0
  374. data/lib/web/wiki/resources/htmlarea/images/ed_hr.gif +0 -0
  375. data/lib/web/wiki/resources/htmlarea/images/ed_html.gif +0 -0
  376. data/lib/web/wiki/resources/htmlarea/images/ed_image.gif +0 -0
  377. data/lib/web/wiki/resources/htmlarea/images/ed_indent_less.gif +0 -0
  378. data/lib/web/wiki/resources/htmlarea/images/ed_indent_more.gif +0 -0
  379. data/lib/web/wiki/resources/htmlarea/images/ed_left_to_right.gif +0 -0
  380. data/lib/web/wiki/resources/htmlarea/images/ed_link.gif +0 -0
  381. data/lib/web/wiki/resources/htmlarea/images/ed_list_bullet.gif +0 -0
  382. data/lib/web/wiki/resources/htmlarea/images/ed_list_num.gif +0 -0
  383. data/lib/web/wiki/resources/htmlarea/images/ed_paste.gif +0 -0
  384. data/lib/web/wiki/resources/htmlarea/images/ed_redo.gif +0 -0
  385. data/lib/web/wiki/resources/htmlarea/images/ed_right_to_left.gif +0 -0
  386. data/lib/web/wiki/resources/htmlarea/images/ed_save.gif +0 -0
  387. data/lib/web/wiki/resources/htmlarea/images/ed_show_border.gif +0 -0
  388. data/lib/web/wiki/resources/htmlarea/images/ed_splitcel.gif +0 -0
  389. data/lib/web/wiki/resources/htmlarea/images/ed_undo.gif +0 -0
  390. data/lib/web/wiki/resources/htmlarea/images/fullscreen_maximize.gif +0 -0
  391. data/lib/web/wiki/resources/htmlarea/images/fullscreen_minimize.gif +0 -0
  392. data/lib/web/wiki/resources/htmlarea/images/insert_table.gif +0 -0
  393. data/lib/web/wiki/resources/htmlarea/index.html +199 -0
  394. data/lib/web/wiki/resources/htmlarea/lang/b5.js +36 -0
  395. data/lib/web/wiki/resources/htmlarea/lang/cz.js +63 -0
  396. data/lib/web/wiki/resources/htmlarea/lang/da.js +38 -0
  397. data/lib/web/wiki/resources/htmlarea/lang/de.js +54 -0
  398. data/lib/web/wiki/resources/htmlarea/lang/ee.js +63 -0
  399. data/lib/web/wiki/resources/htmlarea/lang/el.js +75 -0
  400. data/lib/web/wiki/resources/htmlarea/lang/en.js +88 -0
  401. data/lib/web/wiki/resources/htmlarea/lang/es.js +51 -0
  402. data/lib/web/wiki/resources/htmlarea/lang/fi.js +46 -0
  403. data/lib/web/wiki/resources/htmlarea/lang/fr.js +61 -0
  404. data/lib/web/wiki/resources/htmlarea/lang/gb.js +36 -0
  405. data/lib/web/wiki/resources/htmlarea/lang/he.js +63 -0
  406. data/lib/web/wiki/resources/htmlarea/lang/hu.js +63 -0
  407. data/lib/web/wiki/resources/htmlarea/lang/it.js +54 -0
  408. data/lib/web/wiki/resources/htmlarea/lang/ja-euc.js +37 -0
  409. data/lib/web/wiki/resources/htmlarea/lang/ja-jis.js +37 -0
  410. data/lib/web/wiki/resources/htmlarea/lang/ja-sjis.js +37 -0
  411. data/lib/web/wiki/resources/htmlarea/lang/ja-utf8.js +37 -0
  412. data/lib/web/wiki/resources/htmlarea/lang/lt.js +55 -0
  413. data/lib/web/wiki/resources/htmlarea/lang/lv.js +55 -0
  414. data/lib/web/wiki/resources/htmlarea/lang/nb.js +36 -0
  415. data/lib/web/wiki/resources/htmlarea/lang/nl.js +90 -0
  416. data/lib/web/wiki/resources/htmlarea/lang/no.js +79 -0
  417. data/lib/web/wiki/resources/htmlarea/lang/pl.js +36 -0
  418. data/lib/web/wiki/resources/htmlarea/lang/pt_br.js +37 -0
  419. data/lib/web/wiki/resources/htmlarea/lang/ro.js +80 -0
  420. data/lib/web/wiki/resources/htmlarea/lang/ru.js +63 -0
  421. data/lib/web/wiki/resources/htmlarea/lang/se.js +38 -0
  422. data/lib/web/wiki/resources/htmlarea/lang/si.js +63 -0
  423. data/lib/web/wiki/resources/htmlarea/lang/vn.js +51 -0
  424. data/lib/web/wiki/resources/htmlarea/license.txt +30 -0
  425. data/lib/web/wiki/resources/htmlarea/plugins/CSS/css.js +116 -0
  426. data/lib/web/wiki/resources/htmlarea/plugins/CSS/lang/en.js +2 -0
  427. data/lib/web/wiki/resources/htmlarea/plugins/ContextMenu/context-menu.js +416 -0
  428. data/lib/web/wiki/resources/htmlarea/plugins/ContextMenu/lang/de.js +59 -0
  429. data/lib/web/wiki/resources/htmlarea/plugins/ContextMenu/lang/el.js +57 -0
  430. data/lib/web/wiki/resources/htmlarea/plugins/ContextMenu/lang/en.js +66 -0
  431. data/lib/web/wiki/resources/htmlarea/plugins/ContextMenu/lang/nl.js +66 -0
  432. data/lib/web/wiki/resources/htmlarea/plugins/ContextMenu/menu.css +64 -0
  433. data/lib/web/wiki/resources/htmlarea/plugins/FullPage/full-page.js +143 -0
  434. data/lib/web/wiki/resources/htmlarea/plugins/FullPage/img/docprop.gif +0 -0
  435. data/lib/web/wiki/resources/htmlarea/plugins/FullPage/lang/en.js +25 -0
  436. data/lib/web/wiki/resources/htmlarea/plugins/FullPage/lang/ro.js +25 -0
  437. data/lib/web/wiki/resources/htmlarea/plugins/FullPage/popups/docprop.html +131 -0
  438. data/lib/web/wiki/resources/htmlarea/plugins/FullPage/test.html +89 -0
  439. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/img/spell-check.gif +0 -0
  440. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/cz.js +37 -0
  441. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/da.js +37 -0
  442. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/de.js +28 -0
  443. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/en.js +38 -0
  444. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/hu.js +37 -0
  445. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/it.js +28 -0
  446. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/lang/ro.js +37 -0
  447. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/readme-tech.html +114 -0
  448. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/spell-check-logic.cgi +210 -0
  449. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/spell-check-style.css +10 -0
  450. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/spell-check-ui.html +122 -0
  451. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/spell-check-ui.js +397 -0
  452. data/lib/web/wiki/resources/htmlarea/plugins/SpellChecker/spell-checker.js +79 -0
  453. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/cell-delete.gif +0 -0
  454. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/cell-insert-after.gif +0 -0
  455. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/cell-insert-before.gif +0 -0
  456. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/cell-merge.gif +0 -0
  457. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/cell-prop.gif +0 -0
  458. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/cell-split.gif +0 -0
  459. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/col-delete.gif +0 -0
  460. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/col-insert-after.gif +0 -0
  461. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/col-insert-before.gif +0 -0
  462. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/col-split.gif +0 -0
  463. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/row-delete.gif +0 -0
  464. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/row-insert-above.gif +0 -0
  465. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/row-insert-under.gif +0 -0
  466. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/row-prop.gif +0 -0
  467. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/row-split.gif +0 -0
  468. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/img/table-prop.gif +0 -0
  469. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/cz.js +90 -0
  470. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/da.js +90 -0
  471. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/de.js +81 -0
  472. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/el.js +81 -0
  473. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/en.js +90 -0
  474. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/fi.js +66 -0
  475. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/hu.js +63 -0
  476. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/it.js +81 -0
  477. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/nl.js +90 -0
  478. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/no.js +91 -0
  479. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/lang/ro.js +90 -0
  480. data/lib/web/wiki/resources/htmlarea/plugins/TableOperations/table-operations.js +1160 -0
  481. data/lib/web/wiki/resources/htmlarea/popupdiv.js +369 -0
  482. data/lib/web/wiki/resources/htmlarea/popups/about.html +378 -0
  483. data/lib/web/wiki/resources/htmlarea/popups/blank.html +2 -0
  484. data/lib/web/wiki/resources/htmlarea/popups/custom2.html +35 -0
  485. data/lib/web/wiki/resources/htmlarea/popups/editor_help.html +16 -0
  486. data/lib/web/wiki/resources/htmlarea/popups/fullscreen.html +133 -0
  487. data/lib/web/wiki/resources/htmlarea/popups/insert_image.html +191 -0
  488. data/lib/web/wiki/resources/htmlarea/popups/insert_table.html +174 -0
  489. data/lib/web/wiki/resources/htmlarea/popups/link.html +142 -0
  490. data/lib/web/wiki/resources/htmlarea/popups/old-fullscreen.html +131 -0
  491. data/lib/web/wiki/resources/htmlarea/popups/old_insert_image.html +206 -0
  492. data/lib/web/wiki/resources/htmlarea/popups/popup.js +109 -0
  493. data/lib/web/wiki/resources/htmlarea/popups/select_color.html +347 -0
  494. data/lib/web/wiki/resources/htmlarea/popupwin.js +139 -0
  495. data/lib/web/wiki/resources/htmlarea/reference.html +523 -0
  496. data/lib/web/wiki/resources/htmlarea/release-notes.html +165 -0
  497. data/lib/web/wiki/resources/ie-content_editor.html +1 -0
  498. data/lib/web/wiki/resources/ie-content_editor.js +196 -0
  499. data/lib/web/wiki/resources/illustration.html +1 -0
  500. data/lib/web/wiki/resources/illustration.html~ +1 -0
  501. data/lib/web/wiki/resources/images.html +1 -0
  502. data/lib/web/wiki/resources/index.html +4 -0
  503. data/lib/web/wiki/resources/index.html~ +4 -0
  504. data/lib/web/wiki/resources/more_news.html +5 -0
  505. data/lib/web/wiki/resources/more_news.html~ +5 -0
  506. data/lib/web/wiki/resources/more_news_rss_0.91.html +23 -0
  507. data/lib/web/wiki/resources/narf-logo.gif +0 -0
  508. data/lib/web/wiki/resources/page_history.html +19 -0
  509. data/lib/web/wiki/resources/page_history.html~ +19 -0
  510. data/lib/web/wiki/resources/template.html +13 -0
  511. data/lib/web/wiki/resources/template.html~ +13 -0
  512. data/lib/web/wiki/resources/test_upload.gif +0 -0
  513. data/lib/web/wiki/resources/text-styles.css +1 -0
  514. data/lib/web/writableio.rb +33 -0
  515. data/narf-0.5.1.gem +0 -0
  516. data/narf.gemspec +40 -0
  517. data/narf.gemspec~ +52 -0
  518. data/pre-setup.rb +5 -0
  519. data/sapi/apache_cgi/INSTALL.txt~ +9 -0
  520. data/sapi/apache_cgi/README~ +0 -0
  521. data/sapi/apache_cgi/src/narf.c +13 -0
  522. data/sapi/fastcgi/INSTALL.txt~ +17 -0
  523. data/sapi/mod_ruby/INSTALL.txt~ +5 -0
  524. data/sapi/webrick/INSTALL.txt~ +21 -0
  525. data/sapi/webrick/run_webrick.rb~ +16 -0
  526. data/scripts/dump.rb +14 -0
  527. data/scripts/makedist.rb +49 -0
  528. data/scripts/upload.html +5 -0
  529. data/scripts/uri.rb +41 -0
  530. data/scripts/uri/common.rb +432 -0
  531. data/scripts/uri/ftp.rb +149 -0
  532. data/scripts/uri/generic.rb +1106 -0
  533. data/scripts/uri/http.rb +76 -0
  534. data/scripts/uri/https.rb +26 -0
  535. data/scripts/uri/ldap.rb +238 -0
  536. data/scripts/uri/mailto.rb +260 -0
  537. data/scripts/urireg.rb +174 -0
  538. data/test/bufferedtestrunner.rb +112 -0
  539. data/test/mod_ruby_stub.rb +39 -0
  540. data/test/mod_ruby_stub.rb~ +38 -0
  541. data/test/stringio.rb +2 -0
  542. data/test/test.action.rb +142 -0
  543. data/test/test.action.rb~ +142 -0
  544. data/test/test.app.rb +0 -0
  545. data/test/test.assertinclude.rb +109 -0
  546. data/test/test.assertinclude.rb~ +109 -0
  547. data/test/test.formreader-2.0.rb +352 -0
  548. data/test/test.formreader.rb +465 -0
  549. data/test/test.mime-type.rb +23 -0
  550. data/test/test.narf.cgi.rb +101 -0
  551. data/test/test.narf.cgi.rb~ +105 -0
  552. data/test/test.request.rb +328 -0
  553. data/test/test.request.rb~ +318 -0
  554. data/test/test.response.rb +565 -0
  555. data/test/test.response.rb~ +556 -0
  556. data/test/test.session.rb +50 -0
  557. data/test/test.simpledispatcher.rb +188 -0
  558. data/test/test.tagparser.rb +65 -0
  559. data/test/test.template.rb +831 -0
  560. data/test/test.template.rb~ +832 -0
  561. data/test/test.testing2.rb +341 -0
  562. data/test/test.web.test.rb +463 -0
  563. data/test/test.web.test.rb~ +461 -0
  564. data/test/testfiles/basictemplate.tpl +1 -0
  565. data/test/testfiles/explorer5.multipart.data +9 -0
  566. data/test/testfiles/form.html +7 -0
  567. data/test/testfiles/mozilla.multipart.data +9 -0
  568. data/test/testfiles/netscape4.multipart.data +9 -0
  569. data/test/testfiles/pic hydra.png +1 -0
  570. data/test/testfiles/post.data +1 -0
  571. data/test/testfiles/print.text +1 -0
  572. data/test/testfiles/text +1 -0
  573. data/test/webunit/dont_get_it.test_webunit.rb +27 -0
  574. data/test/webunit/ref +38 -0
  575. data/test/webunit/resources/uploadfile1.txt +1 -0
  576. data/test/webunit/resources/uploadfile2.txt +1 -0
  577. data/test/webunit/test_assert.rb +169 -0
  578. data/test/webunit/test_cookie.rb +128 -0
  579. data/test/webunit/test_cookie.rb~ +128 -0
  580. data/test/webunit/test_domwalker.rb +83 -0
  581. data/test/webunit/test_form.rb +43 -0
  582. data/test/webunit/test_form.rb~ +43 -0
  583. data/test/webunit/test_frame.rb +43 -0
  584. data/test/webunit/test_htmlelem.rb +75 -0
  585. data/test/webunit/test_image.rb +46 -0
  586. data/test/webunit/test_jscript.rb +58 -0
  587. data/test/webunit/test_link.rb +87 -0
  588. data/test/webunit/test_multipart.rb +53 -0
  589. data/test/webunit/test_multipart.rb~ +53 -0
  590. data/test/webunit/test_params.rb +212 -0
  591. data/test/webunit/test_params.rb~ +211 -0
  592. data/test/webunit/test_parser.rb +31 -0
  593. data/test/webunit/test_response.rb +145 -0
  594. data/test/webunit/test_response.rb~ +145 -0
  595. data/test/webunit/test_site/assert.html +101 -0
  596. data/test/webunit/test_site/assert.html~ +1 -0
  597. data/test/webunit/test_site/auth/index.html +5 -0
  598. data/test/webunit/test_site/auth/index.html~ +1 -0
  599. data/test/webunit/test_site/badtags.html +7 -0
  600. data/test/webunit/test_site/badtags.html~ +1 -0
  601. data/test/webunit/test_site/cookie.cgi +37 -0
  602. data/test/webunit/test_site/cookie.cgi~ +35 -0
  603. data/test/webunit/test_site/document.xml +13 -0
  604. data/test/webunit/test_site/document.xml~ +1 -0
  605. data/test/webunit/test_site/form.html +150 -0
  606. data/test/webunit/test_site/form.html~ +1 -0
  607. data/test/webunit/test_site/frame-0.html +10 -0
  608. data/test/webunit/test_site/frame-0.html~ +1 -0
  609. data/test/webunit/test_site/frame-1.html +10 -0
  610. data/test/webunit/test_site/frame-1.html~ +1 -0
  611. data/test/webunit/test_site/frame.html +10 -0
  612. data/test/webunit/test_site/frame.html~ +1 -0
  613. data/test/webunit/test_site/image.html +17 -0
  614. data/test/webunit/test_site/image.html~ +1 -0
  615. data/test/webunit/test_site/images/x.gif +0 -0
  616. data/test/webunit/test_site/images/y.gif +0 -0
  617. data/test/webunit/test_site/include.cgi~ +10 -0
  618. data/test/webunit/test_site/jscript-0.html +10 -0
  619. data/test/webunit/test_site/jscript-0.html~ +1 -0
  620. data/test/webunit/test_site/jscript-1.html +10 -0
  621. data/test/webunit/test_site/jscript-1.html~ +1 -0
  622. data/test/webunit/test_site/jscript.html +19 -0
  623. data/test/webunit/test_site/jscript.html~ +1 -0
  624. data/test/webunit/test_site/link.html +19 -0
  625. data/test/webunit/test_site/link.html~ +1 -0
  626. data/test/webunit/test_site/multipart.cgi +27 -0
  627. data/test/webunit/test_site/multipart.cgi~ +25 -0
  628. data/test/webunit/test_site/multipart.html +74 -0
  629. data/test/webunit/test_site/multipart.html~ +1 -0
  630. data/test/webunit/test_site/params.html +65 -0
  631. data/test/webunit/test_site/params.html~ +1 -0
  632. data/test/webunit/test_site/redirect.cgi +14 -0
  633. data/test/webunit/test_site/redirect.cgi~ +14 -0
  634. data/test/webunit/test_site/response.html +67 -0
  635. data/test/webunit/test_site/response.html~ +1 -0
  636. data/test/webunit/test_site/simple.cgi +17 -0
  637. data/test/webunit/test_site/simple.cgi~ +17 -0
  638. data/test/webunit/test_site/stock.cgi +36 -0
  639. data/test/webunit/test_site/stock.cgi~ +34 -0
  640. data/test/webunit/test_site/table.html +83 -0
  641. data/test/webunit/test_site/table.html~ +1 -0
  642. data/test/webunit/test_site/test.cgi~ +25 -0
  643. data/test/webunit/test_table.rb +70 -0
  644. data/test/webunit/test_utils.rb +107 -0
  645. data/test/wiki/test.history.rb +277 -0
  646. data/test/wiki/test.history.rb~ +254 -0
  647. data/test/wiki/test.illustration_page.rb +287 -0
  648. data/test/wiki/test.illustration_page.rb~ +287 -0
  649. data/test/wiki/test.linker.rb +197 -0
  650. data/test/wiki/test.tarpit.rb +40 -0
  651. data/test/wiki/test.wiki.rb +295 -0
  652. data/test/wiki/test.wiki.rb~ +295 -0
  653. data/test/wikitestroot/big_image.jpg +0 -0
  654. data/test/wikitestroot/mime.types +483 -0
  655. data/test/wikitestroot/test_upload.gif +0 -0
  656. data/vandals.test.txt +3 -0
  657. metadata +768 -0
@@ -0,0 +1,238 @@
1
+ require 'tempfile'
2
+
3
+ module Web
4
+ module Parser
5
+
6
+ # Parser counts on the attributes of a cgd: options, input, env
7
+ def parse_request
8
+ @cookies ||= normalize(options[:cookies] ||
9
+ parse_cookie( env['http_cookie'] ||
10
+ env['cookie'] ) )
11
+
12
+ @multiple_params ||= normalize( options[:params] ||
13
+ parse_params )
14
+
15
+ end
16
+
17
+ def downcase_env( env_in )
18
+ env = {}
19
+ env_in.each{ |k, v|
20
+ env[k.downcase] = v
21
+ }
22
+ env
23
+ end
24
+
25
+ def Parser.normalize( params )
26
+ params.each { |key, value|
27
+ unless value.kind_of? Array
28
+ params[key] = [value]
29
+ end
30
+ }
31
+ params.default = []
32
+ params
33
+ end
34
+
35
+ def normalize(params)
36
+ Parser.normalize(params)
37
+ end
38
+
39
+
40
+ def Parser.parse_cookie(raw_cookie)
41
+ cookies = Hash.new([])
42
+ return cookies unless raw_cookie
43
+
44
+ raw_cookie.split(/; /).each do |pairs|
45
+ name, values = pairs.split('=',2)
46
+ name = Web::unescape(name)
47
+ values ||= ""
48
+ values = values.split('&').collect{|v| Web::unescape(v) }
49
+ if cookies.has_key?(name)
50
+ cookies[name].push(*values)
51
+ else
52
+ cookies[name] = values
53
+ end
54
+ end
55
+
56
+ cookies
57
+ end
58
+
59
+ def parse_cookie(raw_cookie)
60
+ Parser.parse_cookie(raw_cookie)
61
+ end
62
+
63
+ def parse_params
64
+ if (multipart?)
65
+ parse_multipart
66
+ else
67
+ parse_query_string( query_string )
68
+ end
69
+ end
70
+
71
+ def query_string
72
+ case env["request_method"]
73
+ when "GET", "HEAD"
74
+ if (defined? MOD_RUBY) # <= this check is untested.
75
+ # search the test files for
76
+ # test_parse_get_with_mod_ruby
77
+ # for an explanation
78
+ mod_ruby_query_string
79
+ else
80
+ env["query_string"]
81
+ end
82
+ when "POST"
83
+ input.binmode
84
+ input.read(Integer(env['content_length']))
85
+ end
86
+ end
87
+
88
+ # this method solely exists b/c of difficulties setting MOD_RUBY dynamically.
89
+ # so this method exists so I can test the effect separately
90
+ # from the (currently untestable) cause
91
+ def Parser.mod_ruby_query_string #:nodoc:
92
+ Apache::request.args
93
+ end
94
+
95
+ def mod_ruby_query_string
96
+ Parser.mod_ruby_query_string
97
+ end
98
+
99
+ def Parser.parse_query_string(query)
100
+ query ||= ""
101
+ params = Hash.new([])
102
+
103
+ query.split(/[&;]/n).each do |pairs|
104
+ key, value = pairs.split('=',2).collect{|v| Web::unescape(v) }
105
+ if params.has_key?(key)
106
+ params[key].push(value)
107
+ else
108
+ params[key] = [value]
109
+ end
110
+ end
111
+
112
+ params
113
+ end
114
+
115
+ def parse_query_string(query)
116
+ Parser.parse_query_string(query)
117
+ end
118
+
119
+ # note this returns the un-arrayified version of the array
120
+ def parse_query_string_typed(query) #:nodoc: :notest:
121
+ params = parse_query_string query
122
+ params2 = {}
123
+ params.collect do |k,v|
124
+ if ! (k =~ /type/)
125
+ if (atype = params["#{k}#type"][0])
126
+ params2[k] = Module.const_get(atype.intern).unencode(v[0])
127
+ else
128
+ params2[k] = v[0]
129
+ end
130
+ end
131
+ end
132
+ params2
133
+ end
134
+
135
+ def multipart?
136
+ ("POST" == env['request_method']) &&
137
+ (/multipart\/form-data/.match(env['content_type']))
138
+ end
139
+
140
+ def Parser.parse_multipart
141
+ %r|\Amultipart/form-data.*boundary=\"?([^\";,]+)\"?|n.match(env['content_type'])
142
+ boundary = $1.dup
143
+
144
+ read_multipart(boundary, Integer(env['content_length']))
145
+ end
146
+
147
+ EOL="\r\n"
148
+
149
+ def read_multipart(boundary, content_length) #:nodoc:
150
+ params = Hash.new([])
151
+ boundary = "--" + boundary
152
+ buf = ""
153
+ bufsize = 10 * 1024
154
+
155
+ # start multipart/form-data
156
+ input.binmode
157
+ boundary_size = boundary.size + EOL.size
158
+ content_length -= boundary_size
159
+ status = input.read(boundary_size)
160
+ if nil == status
161
+ raise EOFError, "no content body"
162
+ end
163
+
164
+ until -1 == content_length
165
+ head = nil
166
+ body = Tempfile.new("Web")
167
+ body.binmode
168
+
169
+ until head and /#{boundary}(?:#{EOL}|--)/n.match(buf)
170
+
171
+ if head
172
+ trim_size = (EOL + boundary + EOL).size
173
+ if trim_size < buf.size
174
+ body.print buf[0 ... (buf.size - trim_size)]
175
+ buf[0 ... (buf.size - trim_size)] = ""
176
+ end
177
+ elsif /#{EOL}#{EOL}/n.match(buf)
178
+ buf = buf.sub(/\A((?:.|\n)*?#{EOL})#{EOL}/n) do
179
+ head = $1.dup
180
+ ""
181
+ end
182
+ next
183
+ end
184
+
185
+ c = if bufsize < content_length
186
+ input.read(bufsize) or ''
187
+ else
188
+ input.read(content_length) or ''
189
+ end
190
+ buf.concat c
191
+ content_length -= c.size
192
+
193
+ end
194
+
195
+
196
+ /Content-Disposition:.* filename="?([^\";]*)"?/ni.match(head)
197
+ filename = ($1 or "").dup
198
+ if /Mac/ni.match(env['http_user_agent']) and
199
+ /Mozilla/ni.match(env['http_user_agent']) and
200
+ (not /MSIE/ni.match(env['http_user_agent']))
201
+ filename = Web::unescape(filename)
202
+ end
203
+
204
+ /Content-Type: (.*)/ni.match(head)
205
+ content_type = ($1 or "").strip
206
+
207
+ buf = buf.sub(/\A((?:.|\n)*?)(?:#{EOL})?#{boundary}(#{EOL}|--)/n) do
208
+ body.print $1
209
+ if "--" == $2
210
+ content_length = -1
211
+ end
212
+ ""
213
+ end
214
+
215
+ body.rewind
216
+
217
+ if (content_type.empty?)
218
+ upload = body.read
219
+ else
220
+ upload = Web::Upload.new( body, content_type, filename )
221
+ end
222
+
223
+ /Content-Disposition:.* name="?([^\";]*)"?/ni.match(head)
224
+ name = $1.dup
225
+
226
+ if params.has_key?(name)
227
+ params[name].push(upload)
228
+ else
229
+ params[name] = [upload]
230
+ end
231
+
232
+ end
233
+
234
+ params
235
+ end # read_multipart
236
+
237
+ end
238
+ end
@@ -0,0 +1,483 @@
1
+ # This is the mime.types file from the Apache web server distribution (1.3.22)
2
+ # with local modifications.
3
+
4
+ # This file controls what Internet media types are sent to the client for
5
+ # given file extension(s). Sending the correct media type to the client
6
+ # is important so they know how to handle the content of the file.
7
+ # Extra types can either be added here or by using an AddType directive
8
+ # in your config files. For more information about Internet media types,
9
+ # please read RFC 2045, 2046, 2047, 2048, and 2077. The Internet media type
10
+ # registry is at <ftp://ftp.iana.org/in-notes/iana/assignments/media-types/>.
11
+
12
+ # MIME type Extension
13
+ application/EDI-Consent
14
+ application/EDI-X12
15
+ application/EDIFACT
16
+ application/activemessage
17
+ application/andrew-inset ez
18
+ application/applefile
19
+ application/atomicmail
20
+ application/batch-SMTP
21
+ application/beep+xml
22
+ application/cals-1840
23
+ application/commonground
24
+ application/cybercash
25
+ application/dca-rft
26
+ application/dec-dx
27
+ application/dvcs
28
+ application/eshop
29
+ application/http
30
+ application/hyperstudio
31
+ application/iges
32
+ application/index
33
+ application/index.cmd
34
+ application/index.obj
35
+ application/index.response
36
+ application/index.vnd
37
+ application/iotp
38
+ application/ipp
39
+ application/isup
40
+ application/font-tdpfr
41
+ application/mac-binhex40 hqx
42
+ application/mac-compactpro cpt
43
+ application/macwriteii
44
+ application/marc
45
+ application/mathematica
46
+ application/mathematica-old
47
+ application/msword doc
48
+ application/news-message-id
49
+ application/news-transmission
50
+ application/ocsp-request
51
+ application/ocsp-response
52
+ application/octet-stream bin dms lha lzh exe class so dll
53
+ application/oda oda
54
+ application/parityfec
55
+ application/pdf pdf
56
+ application/pgp-encrypted
57
+ application/pgp-keys
58
+ application/pgp-signature
59
+ application/pkcs10
60
+ application/pkcs7-mime
61
+ application/pkcs7-signature
62
+ application/pkix-cert
63
+ application/pkix-crl
64
+ application/pkixcmp
65
+ application/postscript ai eps ps
66
+ application/prs.alvestrand.titrax-sheet
67
+ application/prs.cww
68
+ application/prs.nprend
69
+ application/qsig
70
+ application/remote-printing
71
+ application/riscos
72
+ application/rtf rtf
73
+ application/sdp
74
+ application/set-payment
75
+ application/set-payment-initiation
76
+ application/set-registration
77
+ application/set-registration-initiation
78
+ application/sgml
79
+ application/sgml-open-catalog
80
+ application/sieve
81
+ application/slate
82
+ application/smil smi smil
83
+ application/timestamp-query
84
+ application/timestamp-reply
85
+ application/vemmi
86
+ application/vnd.3M.Post-it-Notes
87
+ application/vnd.FloGraphIt
88
+ application/vnd.accpac.simply.aso
89
+ application/vnd.accpac.simply.imp
90
+ application/vnd.acucobol
91
+ application/vnd.aether.imp
92
+ application/vnd.anser-web-certificate-issue-initiation
93
+ application/vnd.anser-web-funds-transfer-initiation
94
+ application/vnd.audiograph
95
+ application/vnd.businessobjects
96
+ application/vnd.bmi
97
+ application/vnd.canon-cpdl
98
+ application/vnd.canon-lips
99
+ application/vnd.claymore
100
+ application/vnd.commerce-battelle
101
+ application/vnd.commonspace
102
+ application/vnd.comsocaller
103
+ application/vnd.contact.cmsg
104
+ application/vnd.cosmocaller
105
+ application/vnd.cups-postscript
106
+ application/vnd.cups-raster
107
+ application/vnd.cups-raw
108
+ application/vnd.ctc-posml
109
+ application/vnd.cybank
110
+ application/vnd.dna
111
+ application/vnd.dpgraph
112
+ application/vnd.dxr
113
+ application/vnd.ecdis-update
114
+ application/vnd.ecowin.chart
115
+ application/vnd.ecowin.filerequest
116
+ application/vnd.ecowin.fileupdate
117
+ application/vnd.ecowin.series
118
+ application/vnd.ecowin.seriesrequest
119
+ application/vnd.ecowin.seriesupdate
120
+ application/vnd.enliven
121
+ application/vnd.epson.esf
122
+ application/vnd.epson.msf
123
+ application/vnd.epson.quickanime
124
+ application/vnd.epson.salt
125
+ application/vnd.epson.ssf
126
+ application/vnd.ericsson.quickcall
127
+ application/vnd.eudora.data
128
+ application/vnd.fdf
129
+ application/vnd.ffsns
130
+ application/vnd.framemaker
131
+ application/vnd.fsc.weblaunch
132
+ application/vnd.fujitsu.oasys
133
+ application/vnd.fujitsu.oasys2
134
+ application/vnd.fujitsu.oasys3
135
+ application/vnd.fujitsu.oasysgp
136
+ application/vnd.fujitsu.oasysprs
137
+ application/vnd.fujixerox.ddd
138
+ application/vnd.fujixerox.docuworks
139
+ application/vnd.fujixerox.docuworks.binder
140
+ application/vnd.fut-misnet
141
+ application/vnd.grafeq
142
+ application/vnd.groove-account
143
+ application/vnd.groove-identity-message
144
+ application/vnd.groove-injector
145
+ application/vnd.groove-tool-message
146
+ application/vnd.groove-tool-template
147
+ application/vnd.groove-vcard
148
+ application/vnd.hhe.lesson-player
149
+ application/vnd.hp-HPGL
150
+ application/vnd.hp-PCL
151
+ application/vnd.hp-PCLXL
152
+ application/vnd.hp-hpid
153
+ application/vnd.hp-hps
154
+ application/vnd.httphone
155
+ application/vnd.hzn-3d-crossword
156
+ application/vnd.ibm.afplinedata
157
+ application/vnd.ibm.MiniPay
158
+ application/vnd.ibm.modcap
159
+ application/vnd.informix-visionary
160
+ application/vnd.intercon.formnet
161
+ application/vnd.intertrust.digibox
162
+ application/vnd.intertrust.nncp
163
+ application/vnd.intu.qbo
164
+ application/vnd.intu.qfx
165
+ application/vnd.irepository.package+xml
166
+ application/vnd.is-xpr
167
+ application/vnd.japannet-directory-service
168
+ application/vnd.japannet-jpnstore-wakeup
169
+ application/vnd.japannet-payment-wakeup
170
+ application/vnd.japannet-registration
171
+ application/vnd.japannet-registration-wakeup
172
+ application/vnd.japannet-setstore-wakeup
173
+ application/vnd.japannet-verification
174
+ application/vnd.japannet-verification-wakeup
175
+ application/vnd.koan
176
+ application/vnd.lotus-1-2-3
177
+ application/vnd.lotus-approach
178
+ application/vnd.lotus-freelance
179
+ application/vnd.lotus-notes
180
+ application/vnd.lotus-organizer
181
+ application/vnd.lotus-screencam
182
+ application/vnd.lotus-wordpro
183
+ application/vnd.mcd
184
+ application/vnd.mediastation.cdkey
185
+ application/vnd.meridian-slingshot
186
+ application/vnd.mif mif
187
+ application/vnd.minisoft-hp3000-save
188
+ application/vnd.mitsubishi.misty-guard.trustweb
189
+ application/vnd.mobius.daf
190
+ application/vnd.mobius.dis
191
+ application/vnd.mobius.msl
192
+ application/vnd.mobius.plc
193
+ application/vnd.mobius.txf
194
+ application/vnd.motorola.flexsuite
195
+ application/vnd.motorola.flexsuite.adsi
196
+ application/vnd.motorola.flexsuite.fis
197
+ application/vnd.motorola.flexsuite.gotap
198
+ application/vnd.motorola.flexsuite.kmr
199
+ application/vnd.motorola.flexsuite.ttc
200
+ application/vnd.motorola.flexsuite.wem
201
+ application/vnd.mozilla.xul+xml
202
+ application/vnd.ms-artgalry
203
+ application/vnd.ms-asf
204
+ application/vnd.ms-excel xls
205
+ application/vnd.ms-lrm
206
+ application/vnd.ms-powerpoint ppt
207
+ application/vnd.ms-project
208
+ application/vnd.ms-tnef
209
+ application/vnd.ms-works
210
+ application/vnd.mseq
211
+ application/vnd.msign
212
+ application/vnd.music-niff
213
+ application/vnd.musician
214
+ application/vnd.netfpx
215
+ application/vnd.noblenet-directory
216
+ application/vnd.noblenet-sealer
217
+ application/vnd.noblenet-web
218
+ application/vnd.novadigm.EDM
219
+ application/vnd.novadigm.EDX
220
+ application/vnd.novadigm.EXT
221
+ application/vnd.osa.netdeploy
222
+ application/vnd.palm
223
+ application/vnd.pg.format
224
+ application/vnd.pg.osasli
225
+ application/vnd.powerbuilder6
226
+ application/vnd.powerbuilder6-s
227
+ application/vnd.powerbuilder7
228
+ application/vnd.powerbuilder7-s
229
+ application/vnd.powerbuilder75
230
+ application/vnd.powerbuilder75-s
231
+ application/vnd.previewsystems.box
232
+ application/vnd.publishare-delta-tree
233
+ application/vnd.pvi.ptid1
234
+ application/vnd.pwg-xhtml-print+xml
235
+ application/vnd.rapid
236
+ application/vnd.s3sms
237
+ application/vnd.seemail
238
+ application/vnd.shana.informed.formdata
239
+ application/vnd.shana.informed.formtemplate
240
+ application/vnd.shana.informed.interchange
241
+ application/vnd.shana.informed.package
242
+ application/vnd.sss-cod
243
+ application/vnd.sss-dtf
244
+ application/vnd.sss-ntf
245
+ application/vnd.street-stream
246
+ application/vnd.svd
247
+ application/vnd.swiftview-ics
248
+ application/vnd.triscape.mxs
249
+ application/vnd.trueapp
250
+ application/vnd.truedoc
251
+ application/vnd.tve-trigger
252
+ application/vnd.ufdl
253
+ application/vnd.uplanet.alert
254
+ application/vnd.uplanet.alert-wbxml
255
+ application/vnd.uplanet.bearer-choice-wbxml
256
+ application/vnd.uplanet.bearer-choice
257
+ application/vnd.uplanet.cacheop
258
+ application/vnd.uplanet.cacheop-wbxml
259
+ application/vnd.uplanet.channel
260
+ application/vnd.uplanet.channel-wbxml
261
+ application/vnd.uplanet.list
262
+ application/vnd.uplanet.list-wbxml
263
+ application/vnd.uplanet.listcmd
264
+ application/vnd.uplanet.listcmd-wbxml
265
+ application/vnd.uplanet.signal
266
+ application/vnd.vcx
267
+ application/vnd.vectorworks
268
+ application/vnd.vidsoft.vidconference
269
+ application/vnd.visio
270
+ application/vnd.vividence.scriptfile
271
+ application/vnd.wap.sic sic
272
+ application/vnd.wap.slc slc
273
+ application/vnd.wap.wbxml wbxml
274
+ application/vnd.wap.wmlc wmlc
275
+ application/vnd.wap.wmlscriptc wmlsc
276
+ application/vnd.webturbo
277
+ application/vnd.wrq-hp3000-labelled
278
+ application/vnd.wt.stf
279
+ application/vnd.xara
280
+ application/vnd.xfdl
281
+ application/vnd.yellowriver-custom-menu
282
+ application/whoispp-query
283
+ application/whoispp-response
284
+ application/wita
285
+ application/wordperfect5.1
286
+ application/x-bcpio bcpio
287
+ application/x-bzip2 bz2
288
+ application/x-cdlink vcd
289
+ application/x-chess-pgn pgn
290
+ application/x-compress
291
+ application/x-cpio cpio
292
+ application/x-csh csh
293
+ application/x-director dcr dir dxr
294
+ application/x-dvi dvi
295
+ application/x-futuresplash spl
296
+ application/x-gtar gtar
297
+ application/x-gzip gz tgz
298
+ application/x-hdf hdf
299
+ application/x-javascript js
300
+ application/x-kword kwd kwt
301
+ application/x-kspread ksp
302
+ application/x-kpresenter kpr kpt
303
+ application/x-kchart chrt
304
+ application/x-killustrator kil
305
+ application/x-koan skp skd skt skm
306
+ application/x-latex latex
307
+ application/x-netcdf nc cdf
308
+ application/x-ogg ogg
309
+
310
+ # This conflicts with audio/x-pn-realaudio-plugin, which is commented out below.
311
+ application/x-rpm rpm
312
+
313
+ application/x-sh sh
314
+ application/x-shar shar
315
+ application/x-shockwave-flash swf
316
+ application/x-stuffit sit
317
+ application/x-sv4cpio sv4cpio
318
+ application/x-sv4crc sv4crc
319
+ application/x-tar tar
320
+ application/x-tcl tcl
321
+ application/x-tex tex
322
+ application/x-texinfo texinfo texi
323
+ application/x-troff t tr roff
324
+ application/x-troff-man man
325
+ application/x-troff-me me
326
+ application/x-troff-ms ms
327
+ application/x-ustar ustar
328
+ application/x-wais-source src
329
+ application/x400-bp
330
+ application/xhtml+xml xhtml xht
331
+ application/xml
332
+ application/xml-dtd
333
+ application/xml-external-parsed-entity
334
+ application/zip zip
335
+ audio/32kadpcm
336
+ audio/basic au snd
337
+ audio/g.722.1
338
+ audio/l16
339
+ audio/midi mid midi kar
340
+ audio/mp4a-latm
341
+ audio/mpa-robust
342
+ audio/mpeg mpga mp2 mp3
343
+ audio/parityfec
344
+ audio/prs.sid
345
+ audio/telephone-event
346
+ audio/tone
347
+ audio/vnd.cisco.nse
348
+ audio/vnd.cns.anp1
349
+ audio/vnd.cns.inf1
350
+ audio/vnd.digital-winds
351
+ audio/vnd.everad.plj
352
+ audio/vnd.lucent.voice
353
+ audio/vnd.nortel.vbk
354
+ audio/vnd.nuera.ecelp4800
355
+ audio/vnd.nuera.ecelp7470
356
+ audio/vnd.nuera.ecelp9600
357
+ audio/vnd.octel.sbc
358
+ audio/vnd.qcelp
359
+ audio/vnd.rhetorex.32kadpcm
360
+ audio/vnd.vmx.cvsd
361
+ audio/x-aiff aif aiff aifc
362
+ audio/x-mpegurl m3u
363
+ audio/x-pn-realaudio ram rm
364
+ #audio/x-pn-realaudio-plugin rpm
365
+ audio/x-realaudio ra
366
+ audio/x-wav wav
367
+ chemical/x-pdb pdb
368
+ chemical/x-xyz xyz
369
+ image/bmp bmp
370
+ image/cgm
371
+ image/g3fax
372
+ image/gif gif
373
+ image/ief ief
374
+ image/jpeg jpeg jpg jpe
375
+ image/naplps
376
+ image/png png
377
+ image/prs.btif
378
+ image/prs.pti
379
+ image/tiff tiff tif
380
+ image/vnd.cns.inf2
381
+ image/vnd.djvu djvu djv
382
+ image/vnd.dwg
383
+ image/vnd.dxf
384
+ image/vnd.fastbidsheet
385
+ image/vnd.fpx
386
+ image/vnd.fst
387
+ image/vnd.fujixerox.edmics-mmr
388
+ image/vnd.fujixerox.edmics-rlc
389
+ image/vnd.mix
390
+ image/vnd.net-fpx
391
+ image/vnd.svf
392
+ image/vnd.wap.wbmp wbmp
393
+ image/vnd.xiff
394
+ image/x-cmu-raster ras
395
+ image/x-portable-anymap pnm
396
+ image/x-portable-bitmap pbm
397
+ image/x-portable-graymap pgm
398
+ image/x-portable-pixmap ppm
399
+ image/x-rgb rgb
400
+ image/x-xbitmap xbm
401
+ image/x-xpixmap xpm
402
+ image/x-xwindowdump xwd
403
+ message/delivery-status
404
+ message/disposition-notification
405
+ message/external-body
406
+ message/http
407
+ message/news
408
+ message/partial
409
+ message/rfc822
410
+ message/s-http
411
+ model/iges igs iges
412
+ model/mesh msh mesh silo
413
+ model/vnd.dwf
414
+ model/vnd.flatland.3dml
415
+ model/vnd.gdl
416
+ model/vnd.gs-gdl
417
+ model/vnd.gtw
418
+ model/vnd.mts
419
+ model/vnd.vtu
420
+ model/vrml wrl vrml
421
+ multipart/alternative
422
+ multipart/appledouble
423
+ multipart/byteranges
424
+ multipart/digest
425
+ multipart/encrypted
426
+ multipart/form-data
427
+ multipart/header-set
428
+ multipart/mixed
429
+ multipart/parallel
430
+ multipart/related
431
+ multipart/report
432
+ multipart/signed
433
+ multipart/voice-message
434
+ text/calendar
435
+ text/css css
436
+ text/directory
437
+ text/enriched
438
+ text/html html htm
439
+ text/parityfec
440
+ text/plain asc txt
441
+ text/prs.lines.tag
442
+ text/rfc822-headers
443
+ text/richtext rtx
444
+ text/rtf rtf
445
+ text/sgml sgml sgm
446
+ text/tab-separated-values tsv
447
+ text/t140
448
+ text/uri-list
449
+ text/vnd.DMClientScript
450
+ text/vnd.IPTC.NITF
451
+ text/vnd.IPTC.NewsML
452
+ text/vnd.abc
453
+ text/vnd.curl
454
+ text/vnd.flatland.3dml
455
+ text/vnd.fly
456
+ text/vnd.fmi.flexstor
457
+ text/vnd.in3d.3dml
458
+ text/vnd.in3d.spot
459
+ text/vnd.latex-z
460
+ text/vnd.motorola.reflex
461
+ text/vnd.ms-mediapackage
462
+ text/vnd.wap.si si
463
+ text/vnd.wap.sl sl
464
+ text/vnd.wap.wml wml
465
+ text/vnd.wap.wmlscript wmls
466
+ text/x-setext etx
467
+ text/xml xml xsl
468
+ text/xml-external-parsed-entity
469
+ video/mp4v-es
470
+ video/mpeg mpeg mpg mpe
471
+ video/parityfec
472
+ video/pointer
473
+ video/quicktime qt mov
474
+ video/vnd.fvt
475
+ video/vnd.motorola.video
476
+ video/vnd.motorola.videop
477
+ video/vnd.mpegurl mxu
478
+ video/vnd.mts
479
+ video/vnd.nokia.interleaved-multimedia
480
+ video/vnd.vivo
481
+ video/x-msvideo avi
482
+ video/x-sgi-movie movie
483
+ x-conference/x-cooltalk ice