challah 1.0.0.beta2 → 1.0.0.beta3

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 (968) hide show
  1. checksums.yaml +4 -4
  2. data/lib/challah/authorization.rb +13 -6
  3. data/lib/challah/user/providers.rb +3 -1
  4. data/lib/challah/version.rb +1 -1
  5. data/test/authorization_test.rb +15 -0
  6. data/test/user_test.rb +2 -1
  7. data/vendor/bundle/build_info/highline-1.6.18.info +1 -0
  8. data/vendor/bundle/build_info/mime-types-1.23.info +1 -0
  9. data/vendor/bundle/build_info/minitest-4.7.4.info +1 -0
  10. data/vendor/bundle/build_info/multi_json-1.7.3.info +1 -0
  11. data/vendor/bundle/build_info/rdiscount-2.0.7.3.info +1 -0
  12. data/vendor/bundle/build_info/shoulda-3.5.0.info +1 -0
  13. data/vendor/bundle/build_info/shoulda-matchers-2.1.0.info +1 -0
  14. data/vendor/bundle/build_info/tilt-1.4.1.info +1 -0
  15. data/vendor/bundle/build_info/yard-0.8.6.1.info +1 -0
  16. data/vendor/bundle/cache/highline-1.6.18.gem +0 -0
  17. data/vendor/bundle/cache/mime-types-1.23.gem +0 -0
  18. data/vendor/bundle/cache/minitest-4.7.4.gem +0 -0
  19. data/vendor/bundle/cache/multi_json-1.7.3.gem +0 -0
  20. data/vendor/bundle/cache/rdiscount-2.0.7.3.gem +0 -0
  21. data/vendor/bundle/cache/shoulda-3.5.0.gem +0 -0
  22. data/vendor/bundle/cache/shoulda-matchers-2.1.0.gem +0 -0
  23. data/vendor/bundle/cache/tilt-1.4.1.gem +0 -0
  24. data/vendor/bundle/cache/yard-0.8.6.1.gem +0 -0
  25. data/vendor/bundle/gems/highline-1.6.18/AUTHORS +3 -0
  26. data/vendor/bundle/gems/highline-1.6.18/CHANGELOG +342 -0
  27. data/vendor/bundle/gems/highline-1.6.18/COPYING +340 -0
  28. data/vendor/bundle/gems/highline-1.6.18/INSTALL +55 -0
  29. data/vendor/bundle/gems/highline-1.6.18/LICENSE +7 -0
  30. data/vendor/bundle/gems/highline-1.6.18/README.rdoc +63 -0
  31. data/vendor/bundle/gems/highline-1.6.18/Rakefile +50 -0
  32. data/vendor/bundle/gems/highline-1.6.18/TODO +6 -0
  33. data/vendor/bundle/gems/highline-1.6.18/examples/ansi_colors.rb +38 -0
  34. data/vendor/bundle/gems/highline-1.6.18/examples/asking_for_arrays.rb +18 -0
  35. data/vendor/bundle/gems/highline-1.6.18/examples/basic_usage.rb +75 -0
  36. data/vendor/bundle/gems/highline-1.6.18/examples/color_scheme.rb +32 -0
  37. data/vendor/bundle/gems/highline-1.6.18/examples/get_character.rb +12 -0
  38. data/vendor/bundle/gems/highline-1.6.18/examples/limit.rb +12 -0
  39. data/vendor/bundle/gems/highline-1.6.18/examples/menus.rb +65 -0
  40. data/vendor/bundle/gems/highline-1.6.18/examples/overwrite.rb +19 -0
  41. data/vendor/bundle/gems/highline-1.6.18/examples/page_and_wrap.rb +322 -0
  42. data/vendor/bundle/gems/highline-1.6.18/examples/password.rb +7 -0
  43. data/vendor/bundle/gems/highline-1.6.18/examples/repeat_entry.rb +21 -0
  44. data/vendor/bundle/gems/highline-1.6.18/examples/trapping_eof.rb +22 -0
  45. data/vendor/bundle/gems/highline-1.6.18/examples/using_readline.rb +17 -0
  46. data/vendor/bundle/gems/highline-1.6.18/highline.gemspec +37 -0
  47. data/vendor/bundle/gems/highline-1.6.18/lib/highline/color_scheme.rb +134 -0
  48. data/vendor/bundle/gems/highline-1.6.18/lib/highline/compatibility.rb +16 -0
  49. data/vendor/bundle/gems/highline-1.6.18/lib/highline/import.rb +41 -0
  50. data/vendor/bundle/gems/highline-1.6.18/lib/highline/menu.rb +398 -0
  51. data/vendor/bundle/gems/highline-1.6.18/lib/highline/question.rb +475 -0
  52. data/vendor/bundle/gems/highline-1.6.18/lib/highline/simulate.rb +48 -0
  53. data/vendor/bundle/gems/highline-1.6.18/lib/highline/string_extensions.rb +131 -0
  54. data/vendor/bundle/gems/highline-1.6.18/lib/highline/style.rb +181 -0
  55. data/vendor/bundle/gems/highline-1.6.18/lib/highline/system_extensions.rb +218 -0
  56. data/vendor/bundle/gems/highline-1.6.18/lib/highline.rb +1012 -0
  57. data/vendor/bundle/gems/highline-1.6.18/setup.rb +1360 -0
  58. data/vendor/bundle/gems/highline-1.6.18/site/highline.css +65 -0
  59. data/vendor/bundle/gems/highline-1.6.18/site/images/logo.png +0 -0
  60. data/vendor/bundle/gems/highline-1.6.18/site/index.html +58 -0
  61. data/vendor/bundle/gems/highline-1.6.18/test/string_methods.rb +32 -0
  62. data/vendor/bundle/gems/highline-1.6.18/test/tc_color_scheme.rb +96 -0
  63. data/vendor/bundle/gems/highline-1.6.18/test/tc_highline.rb +1123 -0
  64. data/vendor/bundle/gems/highline-1.6.18/test/tc_import.rb +52 -0
  65. data/vendor/bundle/gems/highline-1.6.18/test/tc_menu.rb +439 -0
  66. data/vendor/bundle/gems/highline-1.6.18/test/tc_string_extension.rb +20 -0
  67. data/vendor/bundle/gems/highline-1.6.18/test/tc_string_highline.rb +38 -0
  68. data/vendor/bundle/gems/highline-1.6.18/test/tc_style.rb +567 -0
  69. data/vendor/bundle/gems/highline-1.6.18/test/ts_all.rb +16 -0
  70. data/vendor/bundle/gems/mime-types-1.23/Contributing.rdoc +68 -0
  71. data/vendor/bundle/gems/mime-types-1.23/Gemfile +21 -0
  72. data/vendor/bundle/gems/mime-types-1.23/History.rdoc +215 -0
  73. data/vendor/bundle/gems/mime-types-1.23/Licence.rdoc +37 -0
  74. data/vendor/bundle/gems/mime-types-1.23/Manifest.txt +40 -0
  75. data/vendor/bundle/gems/mime-types-1.23/README.rdoc +63 -0
  76. data/vendor/bundle/gems/mime-types-1.23/Rakefile +206 -0
  77. data/vendor/bundle/gems/mime-types-1.23/docs/COPYING.txt +339 -0
  78. data/vendor/bundle/gems/mime-types-1.23/docs/artistic.txt +127 -0
  79. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application +1002 -0
  80. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.mac +3 -0
  81. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.nonstandard +131 -0
  82. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/application.obsolete +41 -0
  83. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio +138 -0
  84. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio.nonstandard +11 -0
  85. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/audio.obsolete +1 -0
  86. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image +46 -0
  87. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image.nonstandard +20 -0
  88. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/image.obsolete +5 -0
  89. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/message +18 -0
  90. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/message.obsolete +2 -0
  91. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/model +15 -0
  92. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart +14 -0
  93. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart.nonstandard +1 -0
  94. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/multipart.obsolete +7 -0
  95. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/other.nonstandard +8 -0
  96. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text +61 -0
  97. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.nonstandard +7 -0
  98. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.obsolete +8 -0
  99. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/text.vms +1 -0
  100. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video +73 -0
  101. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video.nonstandard +16 -0
  102. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types/video.obsolete +3 -0
  103. data/vendor/bundle/gems/mime-types-1.23/lib/mime/types.rb +881 -0
  104. data/vendor/bundle/gems/mime-types-1.23/lib/mime-types.rb +3 -0
  105. data/vendor/bundle/gems/mime-types-1.23/test/test_mime_type.rb +319 -0
  106. data/vendor/bundle/gems/mime-types-1.23/test/test_mime_types.rb +119 -0
  107. data/vendor/bundle/gems/minitest-4.7.4/History.txt +796 -0
  108. data/vendor/bundle/gems/minitest-4.7.4/Manifest.txt +20 -0
  109. data/vendor/bundle/gems/minitest-4.7.4/README.txt +457 -0
  110. data/vendor/bundle/gems/minitest-4.7.4/Rakefile +94 -0
  111. data/vendor/bundle/gems/minitest-4.7.4/design_rationale.rb +52 -0
  112. data/vendor/bundle/gems/minitest-4.7.4/lib/hoe/minitest.rb +22 -0
  113. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/autorun.rb +12 -0
  114. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/benchmark.rb +416 -0
  115. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/hell.rb +13 -0
  116. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/mock.rb +193 -0
  117. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/parallel_each.rb +73 -0
  118. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/pride.rb +112 -0
  119. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/spec.rb +545 -0
  120. data/vendor/bundle/gems/minitest-4.7.4/lib/minitest/unit.rb +1415 -0
  121. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/metametameta.rb +67 -0
  122. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_benchmark.rb +128 -0
  123. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_mock.rb +403 -0
  124. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_spec.rb +804 -0
  125. data/vendor/bundle/gems/minitest-4.7.4/test/minitest/test_minitest_unit.rb +1860 -0
  126. data/vendor/bundle/gems/multi_json-1.7.3/CHANGELOG.md +147 -0
  127. data/vendor/bundle/gems/multi_json-1.7.3/CONTRIBUTING.md +46 -0
  128. data/vendor/bundle/gems/multi_json-1.7.3/Gemfile +31 -0
  129. data/vendor/bundle/gems/multi_json-1.7.3/LICENSE.md +20 -0
  130. data/vendor/bundle/gems/multi_json-1.7.3/README.md +109 -0
  131. data/vendor/bundle/gems/multi_json-1.7.3/Rakefile +12 -0
  132. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapter.rb +43 -0
  133. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/gson.rb +19 -0
  134. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/jr_jackson.rb +19 -0
  135. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_common.rb +35 -0
  136. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_gem.rb +15 -0
  137. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/json_pure.rb +15 -0
  138. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/nsjsonserialization.rb +34 -0
  139. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/oj.rb +28 -0
  140. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/ok_json.rb +22 -0
  141. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/adapters/yajl.rb +19 -0
  142. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/convertible_hash_keys.rb +43 -0
  143. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/options.rb +39 -0
  144. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/vendor/okjson.rb +600 -0
  145. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json/version.rb +3 -0
  146. data/vendor/bundle/gems/multi_json-1.7.3/lib/multi_json.rb +154 -0
  147. data/vendor/bundle/gems/multi_json-1.7.3/multi_json.gemspec +22 -0
  148. data/vendor/bundle/gems/multi_json-1.7.3/spec/adapter_shared_example.rb +235 -0
  149. data/vendor/bundle/gems/multi_json-1.7.3/spec/has_options.rb +74 -0
  150. data/vendor/bundle/gems/multi_json-1.7.3/spec/helper.rb +32 -0
  151. data/vendor/bundle/gems/multi_json-1.7.3/spec/json_common_shared_example.rb +30 -0
  152. data/vendor/bundle/gems/multi_json-1.7.3/spec/multi_json_spec.rb +224 -0
  153. data/vendor/bundle/gems/rdiscount-2.0.7.3/BUILDING +142 -0
  154. data/vendor/bundle/gems/rdiscount-2.0.7.3/COPYING +52 -0
  155. data/vendor/bundle/gems/rdiscount-2.0.7.3/README.markdown +72 -0
  156. data/vendor/bundle/gems/rdiscount-2.0.7.3/Rakefile +218 -0
  157. data/vendor/bundle/gems/rdiscount-2.0.7.3/bin/rdiscount +13 -0
  158. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Csio.c +61 -0
  159. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Csio.o +0 -0
  160. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/Makefile +237 -0
  161. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/VERSION +1 -0
  162. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.c +111 -0
  163. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.h +29 -0
  164. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/amalloc.o +0 -0
  165. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/basename.c +43 -0
  166. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/basename.o +0 -0
  167. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/config.h +25 -0
  168. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/css.c +85 -0
  169. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/css.o +0 -0
  170. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/cstring.h +77 -0
  171. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/docheader.c +49 -0
  172. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/docheader.o +0 -0
  173. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/dumptree.c +152 -0
  174. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/dumptree.o +0 -0
  175. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/emmatch.c +188 -0
  176. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/emmatch.o +0 -0
  177. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/extconf.rb +37 -0
  178. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/flags.c +84 -0
  179. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/flags.o +0 -0
  180. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/generate.c +1717 -0
  181. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/generate.o +0 -0
  182. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/html5.c +24 -0
  183. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/html5.o +0 -0
  184. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.c +1227 -0
  185. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.h +181 -0
  186. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/markdown.o +0 -0
  187. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.c +354 -0
  188. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.h +108 -0
  189. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkdio.o +0 -0
  190. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/mkmf.log +191 -0
  191. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.bundle +0 -0
  192. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.c +147 -0
  193. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/rdiscount.o +0 -0
  194. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/resource.c +157 -0
  195. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/resource.o +0 -0
  196. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/ruby-config.h +10 -0
  197. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/setup.c +47 -0
  198. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/setup.o +0 -0
  199. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/siteconf20130510-69347-e72tzr.rb +6 -0
  200. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.c +123 -0
  201. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.h +19 -0
  202. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/tags.o +0 -0
  203. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/toc.c +103 -0
  204. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/toc.o +0 -0
  205. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/version.c +22 -0
  206. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/version.o +0 -0
  207. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xml.c +82 -0
  208. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xml.o +0 -0
  209. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xmlpage.c +48 -0
  210. data/vendor/bundle/gems/rdiscount-2.0.7.3/ext/xmlpage.o +0 -0
  211. data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/markdown.rb +1 -0
  212. data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/rdiscount.bundle +0 -0
  213. data/vendor/bundle/gems/rdiscount-2.0.7.3/lib/rdiscount.rb +100 -0
  214. data/vendor/bundle/gems/rdiscount-2.0.7.3/man/markdown.7 +1020 -0
  215. data/vendor/bundle/gems/rdiscount-2.0.7.3/man/rdiscount.1 +22 -0
  216. data/vendor/bundle/gems/rdiscount-2.0.7.3/man/rdiscount.1.ronn +24 -0
  217. data/vendor/bundle/gems/rdiscount-2.0.7.3/rdiscount.gemspec +65 -0
  218. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/benchmark.rb +56 -0
  219. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/benchmark.txt +306 -0
  220. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/markdown_test.rb +158 -0
  221. data/vendor/bundle/gems/rdiscount-2.0.7.3/test/rdiscount_test.rb +132 -0
  222. data/vendor/bundle/gems/shoulda-3.5.0/Appraisals +15 -0
  223. data/vendor/bundle/gems/shoulda-3.5.0/CONTRIBUTING.md +38 -0
  224. data/vendor/bundle/gems/shoulda-3.5.0/Gemfile +3 -0
  225. data/vendor/bundle/gems/shoulda-3.5.0/MIT-LICENSE +22 -0
  226. data/vendor/bundle/gems/shoulda-3.5.0/README.md +103 -0
  227. data/vendor/bundle/gems/shoulda-3.5.0/Rakefile +17 -0
  228. data/vendor/bundle/gems/shoulda-3.5.0/features/rails_integration.feature +87 -0
  229. data/vendor/bundle/gems/shoulda-3.5.0/features/step_definitions/rails_steps.rb +77 -0
  230. data/vendor/bundle/gems/shoulda-3.5.0/features/support/env.rb +14 -0
  231. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.0.gemfile +7 -0
  232. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.0.gemfile.lock +127 -0
  233. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.1.gemfile +9 -0
  234. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.1.gemfile.lock +148 -0
  235. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.2.gemfile +9 -0
  236. data/vendor/bundle/gems/shoulda-3.5.0/gemfiles/3.2.gemfile.lock +146 -0
  237. data/vendor/bundle/gems/shoulda-3.5.0/lib/shoulda/version.rb +3 -0
  238. data/vendor/bundle/gems/shoulda-3.5.0/lib/shoulda.rb +3 -0
  239. data/vendor/bundle/gems/shoulda-3.5.0/shoulda.gemspec +30 -0
  240. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Appraisals +17 -0
  241. data/vendor/bundle/gems/shoulda-matchers-2.1.0/CONTRIBUTING.md +41 -0
  242. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Gemfile +15 -0
  243. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Gemfile.lock +148 -0
  244. data/vendor/bundle/gems/shoulda-matchers-2.1.0/MIT-LICENSE +22 -0
  245. data/vendor/bundle/gems/shoulda-matchers-2.1.0/NEWS.md +181 -0
  246. data/vendor/bundle/gems/shoulda-matchers-2.1.0/README.md +93 -0
  247. data/vendor/bundle/gems/shoulda-matchers-2.1.0/Rakefile +28 -0
  248. data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/rails_integration.feature +114 -0
  249. data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/step_definitions/rails_steps.rb +130 -0
  250. data/vendor/bundle/gems/shoulda-matchers-2.1.0/features/support/env.rb +5 -0
  251. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.0.gemfile +14 -0
  252. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.0.gemfile.lock +139 -0
  253. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.1.gemfile +16 -0
  254. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.1.gemfile.lock +160 -0
  255. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.2.gemfile +16 -0
  256. data/vendor/bundle/gems/shoulda-matchers-2.1.0/gemfiles/3.2.gemfile.lock +158 -0
  257. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/filter_param_matcher.rb +46 -0
  258. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/redirect_to_matcher.rb +65 -0
  259. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/render_template_matcher.rb +61 -0
  260. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/render_with_layout_matcher.rb +94 -0
  261. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/respond_with_matcher.rb +83 -0
  262. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/route_matcher.rb +96 -0
  263. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/set_session_matcher.rb +105 -0
  264. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller/set_the_flash_matcher.rb +147 -0
  265. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/action_controller.rb +35 -0
  266. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/allow_mass_assignment_of_matcher.rb +113 -0
  267. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/allow_value_matcher.rb +174 -0
  268. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/disallow_value_matcher.rb +42 -0
  269. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_exclusion_of_matcher.rb +94 -0
  270. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_inclusion_of_matcher.rb +156 -0
  271. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/ensure_length_of_matcher.rb +176 -0
  272. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/errors.rb +7 -0
  273. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/exception_message_finder.rb +58 -0
  274. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/helpers.rb +45 -0
  275. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/odd_even_number_matcher.rb +47 -0
  276. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/only_integer_matcher.rb +37 -0
  277. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_acceptance_of_matcher.rb +41 -0
  278. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_confirmation_of_matcher.rb +65 -0
  279. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_numericality_of_matcher.rb +115 -0
  280. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_presence_of_matcher.rb +64 -0
  281. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validate_uniqueness_of_matcher.rb +221 -0
  282. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validation_matcher.rb +89 -0
  283. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model/validation_message_finder.rb +70 -0
  284. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_model.rb +50 -0
  285. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/accept_nested_attributes_for_matcher.rb +140 -0
  286. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/association_matcher.rb +368 -0
  287. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_db_column_matcher.rb +195 -0
  288. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_db_index_matcher.rb +111 -0
  289. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/have_readonly_attribute_matcher.rb +55 -0
  290. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record/serialize_matcher.rb +112 -0
  291. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/active_record.rb +25 -0
  292. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/assertion_error.rb +16 -0
  293. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/integrations/rspec.rb +20 -0
  294. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/integrations/test_unit.rb +42 -0
  295. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers/version.rb +5 -0
  296. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda/matchers.rb +8 -0
  297. data/vendor/bundle/gems/shoulda-matchers-2.1.0/lib/shoulda-matchers.rb +1 -0
  298. data/vendor/bundle/gems/shoulda-matchers-2.1.0/shoulda-matchers.gemspec +33 -0
  299. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/active_model/validate_uniqueness_of_matcher_spec.rb +195 -0
  300. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/filter_param_matcher_spec.rb +22 -0
  301. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/redirect_to_matcher_spec.rb +42 -0
  302. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/render_template_matcher_spec.rb +78 -0
  303. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/render_with_layout_matcher_spec.rb +58 -0
  304. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/respond_with_matcher_spec.rb +31 -0
  305. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/route_matcher_spec.rb +65 -0
  306. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/set_session_matcher_spec.rb +51 -0
  307. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/action_controller/set_the_flash_matcher_spec.rb +153 -0
  308. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/allow_mass_assignment_of_matcher_spec.rb +111 -0
  309. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/allow_value_matcher_spec.rb +146 -0
  310. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/disallow_value_matcher_spec.rb +43 -0
  311. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_exclusion_of_matcher_spec.rb +95 -0
  312. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_inclusion_of_matcher_spec.rb +194 -0
  313. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/ensure_length_of_matcher_spec.rb +159 -0
  314. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/exception_message_finder_spec.rb +112 -0
  315. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/helpers_spec.rb +158 -0
  316. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/odd_even_number_matcher_spec.rb +93 -0
  317. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/only_integer_matcher_spec.rb +52 -0
  318. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_acceptance_of_matcher_spec.rb +41 -0
  319. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_confirmation_of_matcher_spec.rb +47 -0
  320. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_numericality_of_matcher_spec.rb +133 -0
  321. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_presence_of_matcher_spec.rb +143 -0
  322. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validate_uniqueness_of_matcher_spec.rb +212 -0
  323. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_model/validation_message_finder_spec.rb +119 -0
  324. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/accept_nested_attributes_for_matcher_spec.rb +106 -0
  325. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/association_matcher_spec.rb +606 -0
  326. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_db_column_matcher_spec.rb +111 -0
  327. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_db_index_matcher_spec.rb +78 -0
  328. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/have_readonly_attributes_matcher_spec.rb +41 -0
  329. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/shoulda/matchers/active_record/serialize_matcher_spec.rb +86 -0
  330. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/spec_helper.rb +28 -0
  331. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/active_model_versions.rb +13 -0
  332. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/activemodel_helpers.rb +19 -0
  333. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/class_builder.rb +42 -0
  334. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/controller_builder.rb +80 -0
  335. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/i18n_faker.rb +10 -0
  336. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/mailer_builder.rb +10 -0
  337. data/vendor/bundle/gems/shoulda-matchers-2.1.0/spec/support/model_builder.rb +77 -0
  338. data/vendor/bundle/gems/tilt-1.4.1/CHANGELOG.md +44 -0
  339. data/vendor/bundle/gems/tilt-1.4.1/COPYING +18 -0
  340. data/vendor/bundle/gems/tilt-1.4.1/Gemfile +32 -0
  341. data/vendor/bundle/gems/tilt-1.4.1/HACKING +16 -0
  342. data/vendor/bundle/gems/tilt-1.4.1/README.md +232 -0
  343. data/vendor/bundle/gems/tilt-1.4.1/Rakefile +104 -0
  344. data/vendor/bundle/gems/tilt-1.4.1/TEMPLATES.md +516 -0
  345. data/vendor/bundle/gems/tilt-1.4.1/bin/tilt +112 -0
  346. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/asciidoc.rb +34 -0
  347. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/builder.rb +40 -0
  348. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/coffee.rb +54 -0
  349. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/css.rb +80 -0
  350. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/csv.rb +71 -0
  351. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/erb.rb +110 -0
  352. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/etanni.rb +27 -0
  353. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/haml.rb +64 -0
  354. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/liquid.rb +45 -0
  355. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/markaby.rb +52 -0
  356. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/markdown.rb +214 -0
  357. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/nokogiri.rb +43 -0
  358. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/plain.rb +20 -0
  359. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/radius.rb +55 -0
  360. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/rdoc.rb +47 -0
  361. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/string.rb +21 -0
  362. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/template.rb +292 -0
  363. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/textile.rb +30 -0
  364. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/wiki.rb +58 -0
  365. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt/yajl.rb +94 -0
  366. data/vendor/bundle/gems/tilt-1.4.1/lib/tilt.rb +204 -0
  367. data/vendor/bundle/gems/tilt-1.4.1/test/contest.rb +68 -0
  368. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/locals.mab +1 -0
  369. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/markaby.mab +1 -0
  370. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/markaby_other_static.mab +1 -0
  371. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/render_twice.mab +1 -0
  372. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/scope.mab +1 -0
  373. data/vendor/bundle/gems/tilt-1.4.1/test/markaby/yielding.mab +2 -0
  374. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_asciidoctor_test.rb +44 -0
  375. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_blueclothtemplate_test.rb +45 -0
  376. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_buildertemplate_test.rb +59 -0
  377. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_cache_test.rb +32 -0
  378. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_coffeescripttemplate_test.rb +114 -0
  379. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_compilesite_test.rb +51 -0
  380. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_creoletemplate_test.rb +28 -0
  381. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_csv_test.rb +69 -0
  382. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_erbtemplate_test.rb +239 -0
  383. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_erubistemplate_test.rb +151 -0
  384. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_etannitemplate_test.rb +173 -0
  385. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_fallback_test.rb +122 -0
  386. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_hamltemplate_test.rb +144 -0
  387. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_kramdown_test.rb +42 -0
  388. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_lesstemplate_test.less +1 -0
  389. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_lesstemplate_test.rb +42 -0
  390. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_liquidtemplate_test.rb +78 -0
  391. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_markaby_test.rb +88 -0
  392. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_markdown_test.rb +172 -0
  393. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_marukutemplate_test.rb +48 -0
  394. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_nokogiritemplate_test.rb +87 -0
  395. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_radiustemplate_test.rb +75 -0
  396. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_rdiscounttemplate_test.rb +55 -0
  397. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_rdoctemplate_test.rb +31 -0
  398. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_redcarpettemplate_test.rb +71 -0
  399. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_redclothtemplate_test.rb +36 -0
  400. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_sasstemplate_test.rb +41 -0
  401. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_stringtemplate_test.rb +170 -0
  402. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_template_test.rb +323 -0
  403. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_test.rb +65 -0
  404. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_wikiclothtemplate_test.rb +32 -0
  405. data/vendor/bundle/gems/tilt-1.4.1/test/tilt_yajltemplate_test.rb +101 -0
  406. data/vendor/bundle/gems/tilt-1.4.1/tilt.gemspec +120 -0
  407. data/vendor/bundle/gems/yard-0.8.6.1/LEGAL +66 -0
  408. data/vendor/bundle/gems/yard-0.8.6.1/LICENSE +22 -0
  409. data/vendor/bundle/gems/yard-0.8.6.1/README.md +601 -0
  410. data/vendor/bundle/gems/yard-0.8.6.1/Rakefile +61 -0
  411. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/builtins_vs_eval.rb +23 -0
  412. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/concat_vs_join.rb +12 -0
  413. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/erb_vs_erubis.rb +53 -0
  414. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/format_args.rb +46 -0
  415. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/generation.rb +37 -0
  416. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/marshal_vs_dbm.rb +63 -0
  417. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/parsing.rb +46 -0
  418. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/pathname_vs_string.rb +50 -0
  419. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/rdoc_vs_yardoc.rb +10 -0
  420. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/registry_store_types.rb +48 -0
  421. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/ri_vs_yri.rb +18 -0
  422. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/ripper_parser.rb +12 -0
  423. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/splat_vs_flatten.rb +12 -0
  424. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_erb.rb +22 -0
  425. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_format.rb +6 -0
  426. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/template_profile.rb +17 -0
  427. data/vendor/bundle/gems/yard-0.8.6.1/benchmarks/yri_cache.rb +19 -0
  428. data/vendor/bundle/gems/yard-0.8.6.1/bin/yard +12 -0
  429. data/vendor/bundle/gems/yard-0.8.6.1/bin/yardoc +12 -0
  430. data/vendor/bundle/gems/yard-0.8.6.1/bin/yri +12 -0
  431. data/vendor/bundle/gems/yard-0.8.6.1/docs/CodeObjects.md +115 -0
  432. data/vendor/bundle/gems/yard-0.8.6.1/docs/GettingStarted.md +592 -0
  433. data/vendor/bundle/gems/yard-0.8.6.1/docs/Handlers.md +152 -0
  434. data/vendor/bundle/gems/yard-0.8.6.1/docs/Overview.md +61 -0
  435. data/vendor/bundle/gems/yard-0.8.6.1/docs/Parser.md +191 -0
  436. data/vendor/bundle/gems/yard-0.8.6.1/docs/Tags.md +282 -0
  437. data/vendor/bundle/gems/yard-0.8.6.1/docs/TagsArch.md +123 -0
  438. data/vendor/bundle/gems/yard-0.8.6.1/docs/Templates.md +496 -0
  439. data/vendor/bundle/gems/yard-0.8.6.1/docs/WhatsNew.md +1244 -0
  440. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/code-objects-class-diagram.png +0 -0
  441. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/handlers-class-diagram.png +0 -0
  442. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/overview-class-diagram.png +0 -0
  443. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/parser-class-diagram.png +0 -0
  444. data/vendor/bundle/gems/yard-0.8.6.1/docs/images/tags-class-diagram.png +0 -0
  445. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/fulldoc/html/full_list_tag.erb +7 -0
  446. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/fulldoc/html/setup.rb +6 -0
  447. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/layout/html/setup.rb +8 -0
  448. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/layout/html/tag_list.erb +11 -0
  449. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/yard_tags/html/list.erb +18 -0
  450. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/default/yard_tags/html/setup.rb +27 -0
  451. data/vendor/bundle/gems/yard-0.8.6.1/docs/templates/plugin.rb +65 -0
  452. data/vendor/bundle/gems/yard-0.8.6.1/lib/rubygems_plugin.rb +4 -0
  453. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/autoload.rb +290 -0
  454. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/command.rb +84 -0
  455. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/command_parser.rb +92 -0
  456. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/config.rb +136 -0
  457. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/diff.rb +270 -0
  458. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/display.rb +68 -0
  459. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/gems.rb +83 -0
  460. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/graph.rb +125 -0
  461. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/help.rb +18 -0
  462. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/i18n.rb +69 -0
  463. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/list.rb +22 -0
  464. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/markup_types.rb +33 -0
  465. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/server.rb +253 -0
  466. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/stats.rb +213 -0
  467. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yardoc.rb +731 -0
  468. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yardopts_command.rb +109 -0
  469. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/cli/yri.rb +214 -0
  470. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/base.rb +585 -0
  471. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/class_object.rb +143 -0
  472. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/class_variable_object.rb +8 -0
  473. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/constant_object.rb +13 -0
  474. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/extended_method_object.rb +23 -0
  475. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/extra_file_object.rb +128 -0
  476. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/macro_object.rb +172 -0
  477. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/method_object.rb +191 -0
  478. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/module_object.rb +18 -0
  479. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/namespace_object.rb +200 -0
  480. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/proxy.rb +258 -0
  481. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/code_objects/root_object.rb +17 -0
  482. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/config.rb +269 -0
  483. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/array.rb +15 -0
  484. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/file.rb +65 -0
  485. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/hash.rb +15 -0
  486. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/insertion.rb +60 -0
  487. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/module.rb +19 -0
  488. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/string.rb +67 -0
  489. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/core_ext/symbol_hash.rb +73 -0
  490. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/docstring.rb +364 -0
  491. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/docstring_parser.rb +321 -0
  492. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/globals.rb +18 -0
  493. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/base.rb +597 -0
  494. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/alias_handler.rb +15 -0
  495. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/attribute_handler.rb +13 -0
  496. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/base.rb +110 -0
  497. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/class_handler.rb +26 -0
  498. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/constant_handler.rb +12 -0
  499. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/handler_methods.rb +166 -0
  500. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/init_handler.rb +18 -0
  501. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/method_handler.rb +35 -0
  502. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/mixin_handler.rb +13 -0
  503. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/module_handler.rb +16 -0
  504. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/override_comment_handler.rb +30 -0
  505. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/path_handler.rb +10 -0
  506. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/struct_handler.rb +12 -0
  507. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/c/symbol_handler.rb +7 -0
  508. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/processor.rb +201 -0
  509. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/alias_handler.rb +41 -0
  510. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/attribute_handler.rb +82 -0
  511. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/base.rb +164 -0
  512. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_condition_handler.rb +86 -0
  513. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_handler.rb +121 -0
  514. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/class_variable_handler.rb +16 -0
  515. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/comment_handler.rb +9 -0
  516. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/constant_handler.rb +45 -0
  517. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/dsl_handler.rb +14 -0
  518. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/dsl_handler_methods.rb +77 -0
  519. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/exception_handler.rb +26 -0
  520. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/extend_handler.rb +21 -0
  521. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/alias_handler.rb +34 -0
  522. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/attribute_handler.rb +60 -0
  523. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/base.rb +250 -0
  524. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_condition_handler.rb +83 -0
  525. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_handler.rb +111 -0
  526. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/class_variable_handler.rb +14 -0
  527. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/comment_handler.rb +9 -0
  528. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/constant_handler.rb +28 -0
  529. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/dsl_handler.rb +16 -0
  530. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/exception_handler.rb +12 -0
  531. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/extend_handler.rb +20 -0
  532. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/method_handler.rb +85 -0
  533. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/mixin_handler.rb +39 -0
  534. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/module_function_handler.rb +18 -0
  535. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/module_handler.rb +11 -0
  536. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/private_constant_handler.rb +21 -0
  537. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/visibility_handler.rb +16 -0
  538. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/legacy/yield_handler.rb +28 -0
  539. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/method_condition_handler.rb +8 -0
  540. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/method_handler.rb +92 -0
  541. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/mixin_handler.rb +36 -0
  542. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/module_function_handler.rb +26 -0
  543. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/module_handler.rb +11 -0
  544. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/private_constant_handler.rb +36 -0
  545. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/struct_handler_methods.rb +141 -0
  546. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/visibility_handler.rb +24 -0
  547. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/handlers/ruby/yield_handler.rb +30 -0
  548. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/locale.rb +74 -0
  549. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/message.rb +56 -0
  550. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/messages.rb +55 -0
  551. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/pot_generator.rb +280 -0
  552. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/i18n/text.rb +173 -0
  553. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/logging.rb +190 -0
  554. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/options.rb +216 -0
  555. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/base.rb +56 -0
  556. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/c_parser.rb +225 -0
  557. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/comment_parser.rb +131 -0
  558. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/c/statement.rb +63 -0
  559. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/ast_node.rb +496 -0
  560. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/ruby_lex.rb +1377 -0
  561. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/ruby_parser.rb +31 -0
  562. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/statement.rb +65 -0
  563. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/statement_list.rb +384 -0
  564. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/legacy/token_list.rb +71 -0
  565. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/ruby/ruby_parser.rb +625 -0
  566. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/parser/source_parser.rb +517 -0
  567. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rake/yardoc_task.rb +74 -0
  568. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/registry.rb +438 -0
  569. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/registry_store.rb +319 -0
  570. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/LICENSE.txt +57 -0
  571. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/MIT.txt +20 -0
  572. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/gem.rb +9 -0
  573. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports/source_index.rb +370 -0
  574. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/backports.rb +8 -0
  575. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/doc_manager.rb +88 -0
  576. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/rubygems/specification.rb +41 -0
  577. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/base.rb +80 -0
  578. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/file_system_serializer.rb +90 -0
  579. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/process_serializer.rb +24 -0
  580. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/stdout_serializer.rb +32 -0
  581. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/serializers/yardoc_serializer.rb +124 -0
  582. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/adapter.rb +100 -0
  583. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/base.rb +192 -0
  584. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/display_file_command.rb +24 -0
  585. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/display_object_command.rb +58 -0
  586. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/frames_command.rb +15 -0
  587. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/library_command.rb +148 -0
  588. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/library_index_command.rb +24 -0
  589. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/list_command.rb +24 -0
  590. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/search_command.rb +78 -0
  591. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/commands/static_file_command.rb +57 -0
  592. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/doc_server_helper.rb +76 -0
  593. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/doc_server_serializer.rb +33 -0
  594. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/library_version.rb +227 -0
  595. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/rack_adapter.rb +88 -0
  596. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/router.rb +176 -0
  597. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/static_caching.rb +45 -0
  598. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/css/custom.css +78 -0
  599. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/images/processing.gif +0 -0
  600. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/fulldoc/html/js/autocomplete.js +12 -0
  601. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/breadcrumb.erb +46 -0
  602. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/script_setup.erb +8 -0
  603. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/layout/html/setup.rb +7 -0
  604. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/method_details/html/permalink.erb +4 -0
  605. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/default/method_details/html/setup.rb +4 -0
  606. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/contents.erb +13 -0
  607. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/headers.erb +26 -0
  608. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/library_list.erb +12 -0
  609. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/setup.rb +3 -0
  610. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/library_list/html/title.erb +2 -0
  611. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/processing/html/processing.erb +51 -0
  612. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/processing/html/setup.rb +3 -0
  613. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/search/html/search.erb +18 -0
  614. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/templates/doc_server/search/html/setup.rb +8 -0
  615. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server/webrick_adapter.rb +43 -0
  616. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/server.rb +11 -0
  617. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/default_factory.rb +176 -0
  618. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/default_tag.rb +12 -0
  619. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/directives.rb +595 -0
  620. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/library.rb +630 -0
  621. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/option_tag.rb +12 -0
  622. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/overload_tag.rb +65 -0
  623. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/ref_tag.rb +7 -0
  624. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/ref_tag_list.rb +27 -0
  625. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/tag.rb +57 -0
  626. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/tags/tag_format_error.rb +6 -0
  627. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/engine.rb +185 -0
  628. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/erb_cache.rb +22 -0
  629. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/base_helper.rb +212 -0
  630. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/filter_helper.rb +26 -0
  631. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/html_helper.rb +599 -0
  632. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/html_syntax_highlight_helper.rb +59 -0
  633. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup/rdoc_markdown.rb +22 -0
  634. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup/rdoc_markup.rb +106 -0
  635. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/markup_helper.rb +169 -0
  636. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/method_helper.rb +74 -0
  637. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/module_helper.rb +19 -0
  638. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/text_helper.rb +95 -0
  639. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/helpers/uml_helper.rb +46 -0
  640. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/section.rb +106 -0
  641. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/template.rb +407 -0
  642. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/templates/template_options.rb +88 -0
  643. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/verifier.rb +148 -0
  644. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard/version.rb +3 -0
  645. data/vendor/bundle/gems/yard-0.8.6.1/lib/yard.rb +71 -0
  646. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/command_parser_spec.rb +43 -0
  647. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/command_spec.rb +36 -0
  648. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/config_spec.rb +92 -0
  649. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/diff_spec.rb +260 -0
  650. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/display_spec.rb +30 -0
  651. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/gems_spec.rb +81 -0
  652. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/graph_spec.rb +17 -0
  653. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/help_spec.rb +22 -0
  654. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/i18n_spec.rb +111 -0
  655. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/list_spec.rb +8 -0
  656. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/markup_types_spec.rb +22 -0
  657. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/server_spec.rb +327 -0
  658. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/stats_spec.rb +90 -0
  659. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/yardoc_spec.rb +777 -0
  660. data/vendor/bundle/gems/yard-0.8.6.1/spec/cli/yri_spec.rb +99 -0
  661. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/base_spec.rb +438 -0
  662. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/class_object_spec.rb +225 -0
  663. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/code_object_list_spec.rb +33 -0
  664. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/constants_spec.rb +82 -0
  665. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/extra_file_object_spec.rb +147 -0
  666. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/macro_object_spec.rb +148 -0
  667. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/method_object_spec.rb +175 -0
  668. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/module_object_spec.rb +141 -0
  669. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/namespace_object_spec.rb +170 -0
  670. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/proxy_spec.rb +140 -0
  671. data/vendor/bundle/gems/yard-0.8.6.1/spec/code_objects/spec_helper.rb +3 -0
  672. data/vendor/bundle/gems/yard-0.8.6.1/spec/config_spec.rb +176 -0
  673. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/array_spec.rb +14 -0
  674. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/file_spec.rb +68 -0
  675. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/hash_spec.rb +14 -0
  676. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/insertion_spec.rb +37 -0
  677. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/module_spec.rb +15 -0
  678. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/string_spec.rb +42 -0
  679. data/vendor/bundle/gems/yard-0.8.6.1/spec/core_ext/symbol_hash_spec.rb +86 -0
  680. data/vendor/bundle/gems/yard-0.8.6.1/spec/docstring_parser_spec.rb +228 -0
  681. data/vendor/bundle/gems/yard-0.8.6.1/spec/docstring_spec.rb +325 -0
  682. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/alias_handler_spec.rb +80 -0
  683. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/attribute_handler_spec.rb +94 -0
  684. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/base_spec.rb +206 -0
  685. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/alias_handler_spec.rb +33 -0
  686. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/attribute_handler_spec.rb +40 -0
  687. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/class_handler_spec.rb +63 -0
  688. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/constant_handler_spec.rb +68 -0
  689. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/init_handler_spec.rb +47 -0
  690. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/method_handler_spec.rb +229 -0
  691. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/mixin_handler_spec.rb +27 -0
  692. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/module_handler_spec.rb +38 -0
  693. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/override_comment_handler_spec.rb +46 -0
  694. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/path_handler_spec.rb +35 -0
  695. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/spec_helper.rb +13 -0
  696. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/c/struct_handler_spec.rb +15 -0
  697. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_condition_handler_spec.rb +67 -0
  698. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_handler_spec.rb +246 -0
  699. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/class_variable_handler_spec.rb +11 -0
  700. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/constant_handler_spec.rb +64 -0
  701. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/dsl_handler_spec.rb +197 -0
  702. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/alias_handler_001.rb.txt +44 -0
  703. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/attribute_handler_001.rb.txt +32 -0
  704. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_condition_handler_001.rb.txt +69 -0
  705. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_handler_001.rb.txt +120 -0
  706. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/class_variable_handler_001.rb.txt +10 -0
  707. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/constant_handler_001.rb.txt +25 -0
  708. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/dsl_handler_001.rb.txt +125 -0
  709. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/exception_handler_001.rb.txt +59 -0
  710. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/extend_handler_001.rb.txt +16 -0
  711. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/method_condition_handler_001.rb.txt +10 -0
  712. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/method_handler_001.rb.txt +126 -0
  713. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/mixin_handler_001.rb.txt +37 -0
  714. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/module_handler_001.rb.txt +29 -0
  715. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/private_constant_handler_001.rb.txt +8 -0
  716. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/process_handler_001.rb.txt +11 -0
  717. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/visibility_handler_001.rb.txt +32 -0
  718. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/examples/yield_handler_001.rb.txt +54 -0
  719. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/exception_handler_spec.rb +48 -0
  720. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/extend_handler_spec.rb +23 -0
  721. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/legacy_base_spec.rb +128 -0
  722. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/method_condition_handler_spec.rb +14 -0
  723. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/method_handler_spec.rb +184 -0
  724. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/mixin_handler_spec.rb +55 -0
  725. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/module_function_handler_spec.rb +105 -0
  726. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/module_handler_spec.rb +34 -0
  727. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/private_constant_handler_spec.rb +24 -0
  728. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/processor_spec.rb +34 -0
  729. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/ruby/base_spec.rb +94 -0
  730. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/ruby/legacy/base_spec.rb +82 -0
  731. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/spec_helper.rb +33 -0
  732. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/visibility_handler_spec.rb +39 -0
  733. data/vendor/bundle/gems/yard-0.8.6.1/spec/handlers/yield_handler_spec.rb +51 -0
  734. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/locale_spec.rb +68 -0
  735. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/message_spec.rb +52 -0
  736. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/messages_spec.rb +67 -0
  737. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/pot_generator_spec.rb +262 -0
  738. data/vendor/bundle/gems/yard-0.8.6.1/spec/i18n/text_spec.rb +180 -0
  739. data/vendor/bundle/gems/yard-0.8.6.1/spec/logging_spec.rb +35 -0
  740. data/vendor/bundle/gems/yard-0.8.6.1/spec/options_spec.rb +171 -0
  741. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/base_spec.rb +24 -0
  742. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/c_parser_spec.rb +166 -0
  743. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/array.c.txt +3887 -0
  744. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/example1.rb.txt +8 -0
  745. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/extrafile.c.txt +8 -0
  746. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/multifile.c.txt +6 -0
  747. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/override.c.txt +424 -0
  748. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/parse_in_order_001.rb.txt +2 -0
  749. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/parse_in_order_002.rb.txt +2 -0
  750. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/examples/tag_handler_001.rb.txt +8 -0
  751. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/ast_node_spec.rb +33 -0
  752. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/legacy/statement_list_spec.rb +299 -0
  753. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/legacy/token_list_spec.rb +77 -0
  754. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/ruby/ruby_parser_spec.rb +334 -0
  755. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/source_parser_spec.rb +717 -0
  756. data/vendor/bundle/gems/yard-0.8.6.1/spec/parser/tag_parsing_spec.rb +18 -0
  757. data/vendor/bundle/gems/yard-0.8.6.1/spec/rake/yardoc_task_spec.rb +101 -0
  758. data/vendor/bundle/gems/yard-0.8.6.1/spec/registry_spec.rb +393 -0
  759. data/vendor/bundle/gems/yard-0.8.6.1/spec/registry_store_spec.rb +315 -0
  760. data/vendor/bundle/gems/yard-0.8.6.1/spec/rubygems/doc_manager_spec.rb +112 -0
  761. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/checksums +1 -0
  762. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo/bar_i.dat +0 -0
  763. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo/baz_i.dat +0 -0
  764. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/Foo.dat +0 -0
  765. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/objects/root.dat +0 -0
  766. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/data/serialized_yardoc/proxy_types +2 -0
  767. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/file_system_serializer_spec.rb +124 -0
  768. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/spec_helper.rb +2 -0
  769. data/vendor/bundle/gems/yard-0.8.6.1/spec/serializers/yardoc_serializer_spec.rb +46 -0
  770. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/adapter_spec.rb +38 -0
  771. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/base_spec.rb +87 -0
  772. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/library_command_spec.rb +39 -0
  773. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/commands/static_file_command_spec.rb +84 -0
  774. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/doc_server_helper_spec.rb +53 -0
  775. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/doc_server_serializer_spec.rb +45 -0
  776. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/rack_adapter_spec.rb +20 -0
  777. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/router_spec.rb +122 -0
  778. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/spec_helper.rb +17 -0
  779. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/static_caching_spec.rb +39 -0
  780. data/vendor/bundle/gems/yard-0.8.6.1/spec/server/webrick_servlet_spec.rb +20 -0
  781. data/vendor/bundle/gems/yard-0.8.6.1/spec/server_spec.rb +10 -0
  782. data/vendor/bundle/gems/yard-0.8.6.1/spec/spec_helper.rb +128 -0
  783. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/default_factory_spec.rb +152 -0
  784. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/default_tag_spec.rb +11 -0
  785. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/directives_spec.rb +436 -0
  786. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/library_spec.rb +34 -0
  787. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/overload_tag_spec.rb +53 -0
  788. data/vendor/bundle/gems/yard-0.8.6.1/spec/tags/ref_tag_list_spec.rb +53 -0
  789. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/class_spec.rb +44 -0
  790. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/constant_spec.rb +40 -0
  791. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/engine_spec.rb +121 -0
  792. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class001.html +280 -0
  793. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class001.txt +36 -0
  794. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/class002.html +35 -0
  795. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant001.txt +25 -0
  796. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant002.txt +7 -0
  797. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/constant003.txt +11 -0
  798. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method001.html +130 -0
  799. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method001.txt +35 -0
  800. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method002.html +86 -0
  801. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method002.txt +20 -0
  802. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method003.html +159 -0
  803. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method003.txt +45 -0
  804. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method004.html +44 -0
  805. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method004.txt +10 -0
  806. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method005.html +99 -0
  807. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/method005.txt +33 -0
  808. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.dot +33 -0
  809. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.html +791 -0
  810. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module001.txt +33 -0
  811. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module002.html +318 -0
  812. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module003.html +185 -0
  813. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/module004.html +387 -0
  814. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/examples/tag001.txt +82 -0
  815. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/base_helper_spec.rb +175 -0
  816. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/html_helper_spec.rb +612 -0
  817. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/html_syntax_highlight_helper_spec.rb +48 -0
  818. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/markup/rdoc_markup_spec.rb +84 -0
  819. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/markup_helper_spec.rb +135 -0
  820. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/method_helper_spec.rb +82 -0
  821. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/shared_signature_examples.rb +123 -0
  822. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/helpers/text_helper_spec.rb +44 -0
  823. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/method_spec.rb +102 -0
  824. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/module_spec.rb +181 -0
  825. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/onefile_spec.rb +64 -0
  826. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/section_spec.rb +146 -0
  827. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/spec_helper.rb +73 -0
  828. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/tag_spec.rb +51 -0
  829. data/vendor/bundle/gems/yard-0.8.6.1/spec/templates/template_spec.rb +409 -0
  830. data/vendor/bundle/gems/yard-0.8.6.1/spec/verifier_spec.rb +106 -0
  831. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/dot/setup.rb +6 -0
  832. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/dot/superklass.erb +3 -0
  833. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/constructor_details.erb +8 -0
  834. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/setup.rb +1 -0
  835. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/html/subclasses.erb +4 -0
  836. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/setup.rb +36 -0
  837. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/text/setup.rb +11 -0
  838. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/class/text/subclasses.erb +5 -0
  839. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/constant/text/header.erb +11 -0
  840. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/constant/text/setup.rb +3 -0
  841. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/abstract.erb +4 -0
  842. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/deprecated.erb +1 -0
  843. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/index.erb +5 -0
  844. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/note.erb +6 -0
  845. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/private.erb +4 -0
  846. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/returns_void.erb +1 -0
  847. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/text.erb +1 -0
  848. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/html/todo.erb +6 -0
  849. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/setup.rb +49 -0
  850. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/abstract.erb +2 -0
  851. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/deprecated.erb +2 -0
  852. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/index.erb +2 -0
  853. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/note.erb +4 -0
  854. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/private.erb +2 -0
  855. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/returns_void.erb +1 -0
  856. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/text.erb +1 -0
  857. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/docstring/text/todo.erb +4 -0
  858. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/common.css +1 -0
  859. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/full_list.css +57 -0
  860. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/css/style.css +338 -0
  861. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/frames.erb +28 -0
  862. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list.erb +39 -0
  863. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_class.erb +2 -0
  864. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_file.erb +5 -0
  865. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/full_list_method.erb +8 -0
  866. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/app.js +214 -0
  867. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/full_list.js +178 -0
  868. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/js/jquery.js +4 -0
  869. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/fulldoc/html/setup.rb +199 -0
  870. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/dot/header.erb +6 -0
  871. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/dot/setup.rb +14 -0
  872. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/breadcrumb.erb +13 -0
  873. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/files.erb +11 -0
  874. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/footer.erb +5 -0
  875. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/headers.erb +14 -0
  876. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/index.erb +2 -0
  877. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/layout.erb +20 -0
  878. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/listing.erb +4 -0
  879. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/objects.erb +32 -0
  880. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/script_setup.erb +5 -0
  881. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/search.erb +8 -0
  882. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/layout/html/setup.rb +71 -0
  883. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/html/header.erb +16 -0
  884. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/setup.rb +3 -0
  885. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method/text/header.erb +1 -0
  886. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/header.erb +3 -0
  887. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/method_signature.erb +25 -0
  888. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/html/source.erb +10 -0
  889. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/setup.rb +10 -0
  890. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/header.erb +10 -0
  891. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/method_signature.erb +12 -0
  892. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/method_details/text/setup.rb +10 -0
  893. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/child.erb +1 -0
  894. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/dependencies.erb +3 -0
  895. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/header.erb +6 -0
  896. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/info.erb +14 -0
  897. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/dot/setup.rb +14 -0
  898. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/attribute_details.erb +10 -0
  899. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/attribute_summary.erb +8 -0
  900. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/box_info.erb +37 -0
  901. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/children.erb +8 -0
  902. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/constant_summary.erb +13 -0
  903. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/defines.erb +3 -0
  904. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/header.erb +5 -0
  905. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_attributes.erb +14 -0
  906. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_constants.erb +8 -0
  907. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/inherited_methods.erb +19 -0
  908. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/item_summary.erb +40 -0
  909. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/method_details_list.erb +9 -0
  910. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/method_summary.erb +14 -0
  911. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/methodmissing.erb +12 -0
  912. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/html/pre_docstring.erb +1 -0
  913. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/setup.rb +164 -0
  914. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/children.erb +10 -0
  915. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/class_meths_list.erb +8 -0
  916. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/extends.erb +8 -0
  917. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/header.erb +7 -0
  918. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/includes.erb +8 -0
  919. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/instance_meths_list.erb +8 -0
  920. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/module/text/setup.rb +12 -0
  921. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/files.erb +5 -0
  922. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/headers.erb +6 -0
  923. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/layout.erb +17 -0
  924. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/readme.erb +3 -0
  925. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/onefile/html/setup.rb +61 -0
  926. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/dot/child.erb +3 -0
  927. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/dot/setup.rb +5 -0
  928. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/root/html/setup.rb +1 -0
  929. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/example.erb +11 -0
  930. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/index.erb +3 -0
  931. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/option.erb +24 -0
  932. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/overload.erb +14 -0
  933. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/see.erb +8 -0
  934. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/html/tag.erb +20 -0
  935. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/setup.rb +55 -0
  936. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/example.erb +12 -0
  937. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/index.erb +1 -0
  938. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/option.erb +20 -0
  939. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/overload.erb +19 -0
  940. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/see.erb +11 -0
  941. data/vendor/bundle/gems/yard-0.8.6.1/templates/default/tags/text/tag.erb +13 -0
  942. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/class/html/setup.rb +1 -0
  943. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/docstring/html/setup.rb +1 -0
  944. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/css/style.css +108 -0
  945. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/js/app.js +33 -0
  946. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/fulldoc/html/setup.rb +73 -0
  947. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/layout/html/layout.erb +81 -0
  948. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/layout/html/setup.rb +28 -0
  949. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/method/html/header.erb +18 -0
  950. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/method/html/setup.rb +21 -0
  951. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/header.erb +7 -0
  952. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/method_list.erb +5 -0
  953. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/module/html/setup.rb +26 -0
  954. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/files.erb +4 -0
  955. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/setup.rb +5 -0
  956. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/onefile/html/toc.erb +3 -0
  957. data/vendor/bundle/gems/yard-0.8.6.1/templates/guide/tags/html/setup.rb +8 -0
  958. data/vendor/bundle/gems/yard-0.8.6.1/yard.gemspec +25 -0
  959. data/vendor/bundle/specifications/highline-1.6.18.gemspec +21 -0
  960. data/vendor/bundle/specifications/mime-types-1.23.gemspec +67 -0
  961. data/vendor/bundle/specifications/minitest-4.7.4.gemspec +36 -0
  962. data/vendor/bundle/specifications/multi_json-1.7.3.gemspec +30 -0
  963. data/vendor/bundle/specifications/rdiscount-2.0.7.3.gemspec +21 -0
  964. data/vendor/bundle/specifications/shoulda-3.5.0.gemspec +50 -0
  965. data/vendor/bundle/specifications/shoulda-matchers-2.1.0.gemspec +57 -0
  966. data/vendor/bundle/specifications/tilt-1.4.1.gemspec +98 -0
  967. data/vendor/bundle/specifications/yard-0.8.6.1.gemspec +20 -0
  968. metadata +964 -2
@@ -0,0 +1,1860 @@
1
+ require 'pathname'
2
+ require 'minitest/metametameta'
3
+
4
+ module MyModule; end
5
+ class AnError < StandardError; include MyModule; end
6
+ class ImmutableString < String; def inspect; super.freeze; end; end
7
+
8
+ class TestMiniTestUnit < MetaMetaMetaTestCase
9
+ parallelize_me!
10
+
11
+ pwd = Pathname.new File.expand_path Dir.pwd
12
+ basedir = Pathname.new(File.expand_path "lib/minitest") + 'mini'
13
+ basedir = basedir.relative_path_from(pwd).to_s
14
+ MINITEST_BASE_DIR = basedir[/\A\./] ? basedir : "./#{basedir}"
15
+ BT_MIDDLE = ["#{MINITEST_BASE_DIR}/test.rb:161:in `each'",
16
+ "#{MINITEST_BASE_DIR}/test.rb:158:in `each'",
17
+ "#{MINITEST_BASE_DIR}/test.rb:139:in `run'",
18
+ "#{MINITEST_BASE_DIR}/test.rb:106:in `run'"]
19
+
20
+ def test_class_puke_with_assertion_failed
21
+ exception = MiniTest::Assertion.new "Oh no!"
22
+ exception.set_backtrace ["unhappy"]
23
+ assert_equal 'F', @tu.puke('SomeClass', 'method_name', exception)
24
+ assert_equal 1, @tu.failures
25
+ assert_match(/^Failure.*Oh no!/m, @tu.report.first)
26
+ assert_match("SomeClass#method_name [unhappy]", @tu.report.first)
27
+ end
28
+
29
+ def test_class_puke_with_assertion_failed_and_long_backtrace
30
+ bt = (["test/test_some_class.rb:615:in `method_name'",
31
+ "#{MINITEST_BASE_DIR}/unit.rb:140:in `assert_raises'",
32
+ "test/test_some_class.rb:615:in `each'",
33
+ "test/test_some_class.rb:614:in `test_method_name'",
34
+ "#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
35
+ BT_MIDDLE +
36
+ ["#{MINITEST_BASE_DIR}/test.rb:29"])
37
+ bt = util_expand_bt bt
38
+
39
+ ex_location = util_expand_bt(["test/test_some_class.rb:615"]).first
40
+
41
+ exception = MiniTest::Assertion.new "Oh no!"
42
+ exception.set_backtrace bt
43
+ assert_equal 'F', @tu.puke('TestSomeClass', 'test_method_name', exception)
44
+ assert_equal 1, @tu.failures
45
+ assert_match(/^Failure.*Oh no!/m, @tu.report.first)
46
+ assert_match("TestSomeClass#test_method_name [#{ex_location}]", @tu.report.first)
47
+ end
48
+
49
+ def test_class_puke_with_assertion_failed_and_user_defined_assertions
50
+ bt = (["lib/test/my/util.rb:16:in `another_method_name'",
51
+ "#{MINITEST_BASE_DIR}/unit.rb:140:in `assert_raises'",
52
+ "lib/test/my/util.rb:15:in `block in assert_something'",
53
+ "lib/test/my/util.rb:14:in `each'",
54
+ "lib/test/my/util.rb:14:in `assert_something'",
55
+ "test/test_some_class.rb:615:in `each'",
56
+ "test/test_some_class.rb:614:in `test_method_name'",
57
+ "#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
58
+ BT_MIDDLE +
59
+ ["#{MINITEST_BASE_DIR}/test.rb:29"])
60
+ bt = util_expand_bt bt
61
+
62
+ ex_location = util_expand_bt(["test/test_some_class.rb:615"]).first
63
+
64
+ exception = MiniTest::Assertion.new "Oh no!"
65
+ exception.set_backtrace bt
66
+ assert_equal 'F', @tu.puke('TestSomeClass', 'test_method_name', exception)
67
+ assert_equal 1, @tu.failures
68
+ assert_match(/^Failure.*Oh no!/m, @tu.report.first)
69
+ assert_match("TestSomeClass#test_method_name [#{ex_location}]", @tu.report.first)
70
+ end
71
+
72
+ def test_class_puke_with_failure_and_flunk_in_backtrace
73
+ exception = begin
74
+ MiniTest::Unit::TestCase.new('fake tc').flunk
75
+ rescue MiniTest::Assertion => failure
76
+ failure
77
+ end
78
+ assert_equal 'F', @tu.puke('SomeClass', 'method_name', exception)
79
+ refute @tu.report.any?{|line| line =~ /in .flunk/}
80
+ end
81
+
82
+ def test_class_puke_with_flunk_and_user_defined_assertions
83
+ bt = (["lib/test/my/util.rb:16:in `flunk'",
84
+ "#{MINITEST_BASE_DIR}/unit.rb:140:in `assert_raises'",
85
+ "lib/test/my/util.rb:15:in `block in assert_something'",
86
+ "lib/test/my/util.rb:14:in `each'",
87
+ "lib/test/my/util.rb:14:in `assert_something'",
88
+ "test/test_some_class.rb:615:in `each'",
89
+ "test/test_some_class.rb:614:in `test_method_name'",
90
+ "#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
91
+ BT_MIDDLE +
92
+ ["#{MINITEST_BASE_DIR}/test.rb:29"])
93
+ bt = util_expand_bt bt
94
+
95
+ ex_location = util_expand_bt(["test/test_some_class.rb:615"]).first
96
+
97
+ exception = MiniTest::Assertion.new "Oh no!"
98
+ exception.set_backtrace bt
99
+ assert_equal 'F', @tu.puke('TestSomeClass', 'test_method_name', exception)
100
+ assert_equal 1, @tu.failures
101
+ assert_match(/^Failure.*Oh no!/m, @tu.report.first)
102
+ assert_match("TestSomeClass#test_method_name [#{ex_location}]", @tu.report.first)
103
+ end
104
+
105
+ def test_class_puke_with_non_failure_exception
106
+ exception = Exception.new("Oh no again!")
107
+ assert_equal 'E', @tu.puke('SomeClass', 'method_name', exception)
108
+ assert_equal 1, @tu.errors
109
+ assert_match(/^Exception.*Oh no again!/m, @tu.report.first)
110
+ end
111
+
112
+ def test_filter_backtrace
113
+ # this is a semi-lame mix of relative paths.
114
+ # I cheated by making the autotest parts not have ./
115
+ bt = (["lib/autotest.rb:571:in `add_exception'",
116
+ "test/test_autotest.rb:62:in `test_add_exception'",
117
+ "#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
118
+ BT_MIDDLE +
119
+ ["#{MINITEST_BASE_DIR}/test.rb:29",
120
+ "test/test_autotest.rb:422"])
121
+ bt = util_expand_bt bt
122
+
123
+ ex = ["lib/autotest.rb:571:in `add_exception'",
124
+ "test/test_autotest.rb:62:in `test_add_exception'"]
125
+ ex = util_expand_bt ex
126
+
127
+ fu = MiniTest::filter_backtrace(bt)
128
+
129
+ assert_equal ex, fu
130
+ end
131
+
132
+ def test_filter_backtrace_all_unit
133
+ bt = (["#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
134
+ BT_MIDDLE +
135
+ ["#{MINITEST_BASE_DIR}/test.rb:29"])
136
+ ex = bt.clone
137
+ fu = MiniTest::filter_backtrace(bt)
138
+ assert_equal ex, fu
139
+ end
140
+
141
+ def test_filter_backtrace_unit_starts
142
+ bt = (["#{MINITEST_BASE_DIR}/test.rb:165:in `__send__'"] +
143
+ BT_MIDDLE +
144
+ ["#{MINITEST_BASE_DIR}/mini/test.rb:29",
145
+ "-e:1"])
146
+
147
+ bt = util_expand_bt bt
148
+
149
+ ex = ["-e:1"]
150
+ fu = MiniTest::filter_backtrace bt
151
+ assert_equal ex, fu
152
+ end
153
+
154
+ def test_default_runner_is_minitest_unit
155
+ assert_instance_of MiniTest::Unit, MiniTest::Unit.runner
156
+ end
157
+
158
+
159
+ def test_passed_eh_teardown_good
160
+ test_class = Class.new MiniTest::Unit::TestCase do
161
+ def teardown; assert true; end
162
+ def test_omg; assert true; end
163
+ end
164
+
165
+ test = test_class.new :test_omg
166
+ test.run @tu
167
+ assert test.passed?
168
+ end
169
+
170
+ def test_passed_eh_teardown_skipped
171
+ test_class = Class.new MiniTest::Unit::TestCase do
172
+ def teardown; assert true; end
173
+ def test_omg; skip "bork"; end
174
+ end
175
+
176
+ test = test_class.new :test_omg
177
+ test.run @tu
178
+ assert test.passed?
179
+ end
180
+
181
+ def test_passed_eh_teardown_flunked
182
+ test_class = Class.new MiniTest::Unit::TestCase do
183
+ def teardown; flunk; end
184
+ def test_omg; assert true; end
185
+ end
186
+
187
+ test = test_class.new :test_omg
188
+ test.run @tu
189
+ refute test.passed?
190
+ end
191
+
192
+ def util_expand_bt bt
193
+ if RUBY_VERSION >= '1.9.0' then
194
+ bt.map { |f| (f =~ /^\./) ? File.expand_path(f) : f }
195
+ else
196
+ bt
197
+ end
198
+ end
199
+ end
200
+
201
+ class TestMiniTestUnitInherited < MetaMetaMetaTestCase
202
+ def with_overridden_include
203
+ Class.class_eval do
204
+ def inherited_with_hacks klass
205
+ throw :inherited_hook
206
+ end
207
+
208
+ alias inherited_without_hacks inherited
209
+ alias inherited inherited_with_hacks
210
+ alias IGNORE_ME! inherited # 1.8 bug. god I love venture bros
211
+ end
212
+
213
+ yield
214
+ ensure
215
+ Class.class_eval do
216
+ alias inherited inherited_without_hacks
217
+
218
+ undef_method :inherited_with_hacks
219
+ undef_method :inherited_without_hacks
220
+ end
221
+
222
+ refute_respond_to Class, :inherited_with_hacks
223
+ refute_respond_to Class, :inherited_without_hacks
224
+ end
225
+
226
+ def test_inherited_hook_plays_nice_with_others
227
+ with_overridden_include do
228
+ assert_throws :inherited_hook do
229
+ Class.new MiniTest::Unit::TestCase
230
+ end
231
+ end
232
+ end
233
+ end
234
+
235
+ class TestMiniTestRunner < MetaMetaMetaTestCase
236
+ # do not parallelize this suite... it just can't handle it.
237
+
238
+ def test_class_test_suites
239
+ @assertion_count = 0
240
+
241
+ tc = Class.new(MiniTest::Unit::TestCase)
242
+
243
+ assert_equal 1, MiniTest::Unit::TestCase.test_suites.size
244
+ assert_equal [tc], MiniTest::Unit::TestCase.test_suites
245
+ end
246
+
247
+ def test_run_test
248
+ Class.new MiniTest::Unit::TestCase do
249
+ attr_reader :foo
250
+
251
+ def run_test name
252
+ @foo = "hi mom!"
253
+ super
254
+ @foo = "okay"
255
+ end
256
+
257
+ def test_something
258
+ assert_equal "hi mom!", foo
259
+ end
260
+ end
261
+
262
+ expected = clean <<-EOM
263
+ .
264
+
265
+ Finished tests in 0.00
266
+
267
+ 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
268
+ EOM
269
+
270
+ assert_report expected
271
+ end
272
+
273
+ def test_run_error
274
+ Class.new MiniTest::Unit::TestCase do
275
+ def test_something
276
+ assert true
277
+ end
278
+
279
+ def test_error
280
+ raise "unhandled exception"
281
+ end
282
+ end
283
+
284
+ expected = clean <<-EOM
285
+ E.
286
+
287
+ Finished tests in 0.00
288
+
289
+ 1) Error:
290
+ #<Class:0xXXX>#test_error:
291
+ RuntimeError: unhandled exception
292
+ FILE:LINE:in \`test_error\'
293
+
294
+ 2 tests, 1 assertions, 0 failures, 1 errors, 0 skips
295
+ EOM
296
+
297
+ assert_report expected
298
+ end
299
+
300
+ def test_run_error_teardown
301
+ Class.new MiniTest::Unit::TestCase do
302
+ def test_something
303
+ assert true
304
+ end
305
+
306
+ def teardown
307
+ raise "unhandled exception"
308
+ end
309
+ end
310
+
311
+ expected = clean <<-EOM
312
+ E
313
+
314
+ Finished tests in 0.00
315
+
316
+ 1) Error:
317
+ #<Class:0xXXX>#test_something:
318
+ RuntimeError: unhandled exception
319
+ FILE:LINE:in \`teardown\'
320
+
321
+ 1 tests, 1 assertions, 0 failures, 1 errors, 0 skips
322
+ EOM
323
+
324
+ assert_report expected
325
+ end
326
+
327
+ def test_run_failing
328
+ Class.new MiniTest::Unit::TestCase do
329
+ def test_something
330
+ assert true
331
+ end
332
+
333
+ def test_failure
334
+ assert false
335
+ end
336
+ end
337
+
338
+ expected = clean <<-EOM
339
+ F.
340
+
341
+ Finished tests in 0.00
342
+
343
+ 1) Failure:
344
+ #<Class:0xXXX>#test_failure [FILE:LINE]:
345
+ Failed assertion, no message given.
346
+
347
+ 2 tests, 2 assertions, 1 failures, 0 errors, 0 skips
348
+ EOM
349
+
350
+ assert_report expected
351
+ end
352
+
353
+ def test_run_failing_filtered
354
+ Class.new MiniTest::Unit::TestCase do
355
+ def test_something
356
+ assert true
357
+ end
358
+
359
+ def test_failure
360
+ assert false
361
+ end
362
+ end
363
+
364
+ expected = clean <<-EOM
365
+ .
366
+
367
+ Finished tests in 0.00
368
+
369
+ 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
370
+ EOM
371
+
372
+ assert_report expected, %w[--name /some|thing/ --seed 42]
373
+ end
374
+
375
+ def assert_filtering name, expected, a = false
376
+ args = %W[--name #{name} --seed 42]
377
+
378
+ alpha = Class.new MiniTest::Unit::TestCase do
379
+ define_method :test_something do
380
+ assert a
381
+ end
382
+ end
383
+ Object.const_set(:Alpha, alpha)
384
+
385
+ beta = Class.new MiniTest::Unit::TestCase do
386
+ define_method :test_something do
387
+ assert true
388
+ end
389
+ end
390
+ Object.const_set(:Beta, beta)
391
+
392
+ assert_report expected, args
393
+ ensure
394
+ Object.send :remove_const, :Alpha
395
+ Object.send :remove_const, :Beta
396
+ end
397
+
398
+ def test_run_filtered_including_suite_name
399
+ expected = clean <<-EOM
400
+ .
401
+
402
+ Finished tests in 0.00
403
+
404
+ 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
405
+ EOM
406
+
407
+ assert_filtering "/Beta#test_something/", expected
408
+ end
409
+
410
+ def test_run_filtered_including_suite_name_string
411
+ expected = clean <<-EOM
412
+ .
413
+
414
+ Finished tests in 0.00
415
+
416
+ 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
417
+ EOM
418
+
419
+ assert_filtering "Beta#test_something", expected
420
+ end
421
+
422
+ def test_run_filtered_string_method_only
423
+ expected = clean <<-EOM
424
+ ..
425
+
426
+ Finished tests in 0.00
427
+
428
+ 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
429
+ EOM
430
+
431
+ assert_filtering "test_something", expected, :pass
432
+ end
433
+
434
+ def test_run_passing
435
+ Class.new MiniTest::Unit::TestCase do
436
+ def test_something
437
+ assert true
438
+ end
439
+ end
440
+
441
+ expected = clean <<-EOM
442
+ .
443
+
444
+ Finished tests in 0.00
445
+
446
+ 1 tests, 1 assertions, 0 failures, 0 errors, 0 skips
447
+ EOM
448
+
449
+ assert_report expected
450
+ end
451
+
452
+ def test_run_skip
453
+ Class.new MiniTest::Unit::TestCase do
454
+ def test_something
455
+ assert true
456
+ end
457
+
458
+ def test_skip
459
+ skip "not yet"
460
+ end
461
+ end
462
+
463
+ expected = clean <<-EOM
464
+ S.
465
+
466
+ Finished tests in 0.00
467
+
468
+ 2 tests, 1 assertions, 0 failures, 0 errors, 1 skips
469
+ EOM
470
+
471
+ assert_report expected
472
+ end
473
+
474
+ def test_run_skip_verbose
475
+ Class.new MiniTest::Unit::TestCase do
476
+ def test_something
477
+ assert true
478
+ end
479
+
480
+ def test_skip
481
+ skip "not yet"
482
+ end
483
+ end
484
+
485
+ expected = clean <<-EOM
486
+ #<Class:0xXXX>#test_skip = 0.00 s = S
487
+ #<Class:0xXXX>#test_something = 0.00 s = .
488
+
489
+
490
+ Finished tests in 0.00
491
+
492
+ 1) Skipped:
493
+ #<Class:0xXXX>#test_skip [FILE:LINE]:
494
+ not yet
495
+
496
+ 2 tests, 1 assertions, 0 failures, 0 errors, 1 skips
497
+ EOM
498
+
499
+ assert_report expected, %w[--seed 42 --verbose]
500
+ end
501
+
502
+ def test_run_with_other_runner
503
+ MiniTest::Unit.runner = Class.new MiniTest::Unit do
504
+ def _run_suite suite, type
505
+ suite.before_suite # Run once before each suite
506
+ super suite, type
507
+ end
508
+ end.new
509
+
510
+ Class.new MiniTest::Unit::TestCase do
511
+ def self.name; "wacky!" end
512
+
513
+ def self.before_suite
514
+ MiniTest::Unit.output.puts "Running #{self.name} tests"
515
+ @@foo = 1
516
+ end
517
+
518
+ def test_something
519
+ assert_equal 1, @@foo
520
+ end
521
+
522
+ def test_something_else
523
+ assert_equal 1, @@foo
524
+ end
525
+ end
526
+
527
+ expected = clean <<-EOM
528
+ Running wacky! tests
529
+ ..
530
+
531
+ Finished tests in 0.00
532
+
533
+ 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
534
+ EOM
535
+
536
+ assert_report expected
537
+ end
538
+
539
+ require 'monitor'
540
+
541
+ class Latch
542
+ def initialize count = 1
543
+ @count = count
544
+ @lock = Monitor.new
545
+ @cv = @lock.new_cond
546
+ end
547
+
548
+ def release
549
+ @lock.synchronize do
550
+ @count -= 1 if @count > 0
551
+ @cv.broadcast if @count == 0
552
+ end
553
+ end
554
+
555
+ def await
556
+ @lock.synchronize { @cv.wait_while { @count > 0 } }
557
+ end
558
+ end
559
+
560
+ def test_parallel_each_size
561
+ assert_equal 0, ParallelEach.new([]).size
562
+ end
563
+
564
+ def test_run_parallel
565
+ skip "I don't have ParallelEach debugged yet" if maglev?
566
+
567
+ test_count = 2
568
+ test_latch = Latch.new test_count
569
+ main_latch = Latch.new
570
+
571
+ thread = Thread.new {
572
+ Thread.current.abort_on_exception = true
573
+
574
+ # This latch waits until both test latches have been released. Both
575
+ # latches can't be released unless done in separate threads because
576
+ # `main_latch` keeps the test method from finishing.
577
+ test_latch.await
578
+ main_latch.release
579
+ }
580
+
581
+ Class.new MiniTest::Unit::TestCase do
582
+ parallelize_me!
583
+
584
+ test_count.times do |i|
585
+ define_method :"test_wait_on_main_thread_#{i}" do
586
+ test_latch.release
587
+
588
+ # This latch blocks until the "main thread" releases it. The main
589
+ # thread can't release this latch until both test latches have
590
+ # been released. This forces the latches to be released in separate
591
+ # threads.
592
+ main_latch.await
593
+ assert true
594
+ end
595
+ end
596
+ end
597
+
598
+ expected = clean <<-EOM
599
+ ..
600
+
601
+ Finished tests in 0.00
602
+
603
+ 2 tests, 2 assertions, 0 failures, 0 errors, 0 skips
604
+ EOM
605
+
606
+ assert_report expected
607
+ assert thread.join
608
+ end
609
+ end
610
+
611
+ class TestMiniTestUnitOrder < MetaMetaMetaTestCase
612
+ # do not parallelize this suite... it just can't handle it.
613
+
614
+ def test_before_setup
615
+ call_order = []
616
+ Class.new MiniTest::Unit::TestCase do
617
+ define_method :setup do
618
+ super()
619
+ call_order << :setup
620
+ end
621
+
622
+ define_method :before_setup do
623
+ call_order << :before_setup
624
+ end
625
+
626
+ def test_omg; assert true; end
627
+ end
628
+
629
+ with_output do
630
+ @tu.run %w[--seed 42]
631
+ end
632
+
633
+ expected = [:before_setup, :setup]
634
+ assert_equal expected, call_order
635
+ end
636
+
637
+ def test_after_teardown
638
+ call_order = []
639
+ Class.new MiniTest::Unit::TestCase do
640
+ define_method :teardown do
641
+ super()
642
+ call_order << :teardown
643
+ end
644
+
645
+ define_method :after_teardown do
646
+ call_order << :after_teardown
647
+ end
648
+
649
+ def test_omg; assert true; end
650
+ end
651
+
652
+ with_output do
653
+ @tu.run %w[--seed 42]
654
+ end
655
+
656
+ expected = [:teardown, :after_teardown]
657
+ assert_equal expected, call_order
658
+ end
659
+
660
+ def test_all_teardowns_are_guaranteed_to_run
661
+ call_order = []
662
+ Class.new MiniTest::Unit::TestCase do
663
+ define_method :after_teardown do
664
+ super()
665
+ call_order << :after_teardown
666
+ raise
667
+ end
668
+
669
+ define_method :teardown do
670
+ super()
671
+ call_order << :teardown
672
+ raise
673
+ end
674
+
675
+ define_method :before_teardown do
676
+ super()
677
+ call_order << :before_teardown
678
+ raise
679
+ end
680
+
681
+ def test_omg; assert true; end
682
+ end
683
+
684
+ with_output do
685
+ @tu.run %w[--seed 42]
686
+ end
687
+
688
+ expected = [:before_teardown, :teardown, :after_teardown]
689
+ assert_equal expected, call_order
690
+ end
691
+
692
+ def test_setup_and_teardown_survive_inheritance
693
+ call_order = []
694
+
695
+ parent = Class.new MiniTest::Unit::TestCase do
696
+ define_method :setup do
697
+ call_order << :setup_method
698
+ end
699
+
700
+ define_method :teardown do
701
+ call_order << :teardown_method
702
+ end
703
+
704
+ define_method :test_something do
705
+ call_order << :test
706
+ end
707
+ end
708
+
709
+ _ = Class.new parent
710
+
711
+ with_output do
712
+ @tu.run %w[--seed 42]
713
+ end
714
+
715
+ # Once for the parent class, once for the child
716
+ expected = [:setup_method, :test, :teardown_method] * 2
717
+
718
+ assert_equal expected, call_order
719
+ end
720
+ end
721
+
722
+ class TestMiniTestUnitTestCase < MiniTest::Unit::TestCase
723
+ # do not call parallelize_me! - teardown accesses @tc._assertions
724
+ # which is not threadsafe. Nearly every method in here is an
725
+ # assertion test so it isn't worth splitting it out further.
726
+
727
+ RUBY18 = ! defined? Encoding
728
+
729
+ def setup
730
+ super
731
+
732
+ MiniTest::Unit::TestCase.reset
733
+
734
+ @tc = MiniTest::Unit::TestCase.new 'fake tc'
735
+ @zomg = "zomg ponies!"
736
+ @assertion_count = 1
737
+ end
738
+
739
+ def teardown
740
+ assert_equal(@assertion_count, @tc._assertions,
741
+ "expected #{@assertion_count} assertions to be fired during the test, not #{@tc._assertions}") if @tc.passed?
742
+ end
743
+
744
+ def non_verbose
745
+ orig_verbose = $VERBOSE
746
+ $VERBOSE = false
747
+
748
+ yield
749
+ ensure
750
+ $VERBOSE = orig_verbose
751
+ end
752
+
753
+ def test_assert
754
+ @assertion_count = 2
755
+
756
+ @tc.assert_equal true, @tc.assert(true), "returns true on success"
757
+ end
758
+
759
+ def test_assert__triggered
760
+ util_assert_triggered "Failed assertion, no message given." do
761
+ @tc.assert false
762
+ end
763
+ end
764
+
765
+ def test_assert__triggered_message
766
+ util_assert_triggered @zomg do
767
+ @tc.assert false, @zomg
768
+ end
769
+ end
770
+
771
+ def test_assert_empty
772
+ @assertion_count = 2
773
+
774
+ @tc.assert_empty []
775
+ end
776
+
777
+ def test_assert_empty_triggered
778
+ @assertion_count = 2
779
+
780
+ util_assert_triggered "Expected [1] to be empty." do
781
+ @tc.assert_empty [1]
782
+ end
783
+ end
784
+
785
+ def test_assert_equal
786
+ @tc.assert_equal 1, 1
787
+ end
788
+
789
+ def test_assert_equal_different_collection_array_hex_invisible
790
+ object1 = Object.new
791
+ object2 = Object.new
792
+ msg = "No visible difference in the Array#inspect output.
793
+ You should look at the implementation of #== on Array or its members.
794
+ [#<Object:0xXXXXXX>]".gsub(/^ +/, "")
795
+ util_assert_triggered msg do
796
+ @tc.assert_equal [object1], [object2]
797
+ end
798
+ end
799
+
800
+ def test_assert_equal_different_collection_hash_hex_invisible
801
+ h1, h2 = {}, {}
802
+ h1[1] = Object.new
803
+ h2[1] = Object.new
804
+ msg = "No visible difference in the Hash#inspect output.
805
+ You should look at the implementation of #== on Hash or its members.
806
+ {1=>#<Object:0xXXXXXX>}".gsub(/^ +/, "")
807
+
808
+ util_assert_triggered msg do
809
+ @tc.assert_equal h1, h2
810
+ end
811
+ end
812
+
813
+ def test_assert_equal_different_diff_deactivated
814
+ skip "https://github.com/MagLev/maglev/issues/209" if maglev?
815
+
816
+ without_diff do
817
+ util_assert_triggered util_msg("haha" * 10, "blah" * 10) do
818
+ o1 = "haha" * 10
819
+ o2 = "blah" * 10
820
+
821
+ @tc.assert_equal o1, o2
822
+ end
823
+ end
824
+ end
825
+
826
+ def test_assert_equal_different_hex
827
+ c = Class.new do
828
+ def initialize s; @name = s; end
829
+ end
830
+
831
+ o1 = c.new "a"
832
+ o2 = c.new "b"
833
+ msg = "--- expected
834
+ +++ actual
835
+ @@ -1 +1 @@
836
+ -#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"a\">
837
+ +#<#<Class:0xXXXXXX>:0xXXXXXX @name=\"b\">
838
+ ".gsub(/^ +/, "")
839
+
840
+ util_assert_triggered msg do
841
+ @tc.assert_equal o1, o2
842
+ end
843
+ end
844
+
845
+ def test_assert_equal_different_hex_invisible
846
+ o1 = Object.new
847
+ o2 = Object.new
848
+
849
+ msg = "No visible difference in the Object#inspect output.
850
+ You should look at the implementation of #== on Object or its members.
851
+ #<Object:0xXXXXXX>".gsub(/^ +/, "")
852
+
853
+ util_assert_triggered msg do
854
+ @tc.assert_equal o1, o2
855
+ end
856
+ end
857
+
858
+ def test_assert_equal_different_long
859
+ msg = "--- expected
860
+ +++ actual
861
+ @@ -1 +1 @@
862
+ -\"hahahahahahahahahahahahahahahahahahahaha\"
863
+ +\"blahblahblahblahblahblahblahblahblahblah\"
864
+ ".gsub(/^ +/, "")
865
+
866
+ util_assert_triggered msg do
867
+ o1 = "haha" * 10
868
+ o2 = "blah" * 10
869
+
870
+ @tc.assert_equal o1, o2
871
+ end
872
+ end
873
+
874
+ def test_assert_equal_different_long_invisible
875
+ msg = "No visible difference in the String#inspect output.
876
+ You should look at the implementation of #== on String or its members.
877
+ \"blahblahblahblahblahblahblahblahblahblah\"".gsub(/^ +/, "")
878
+
879
+ util_assert_triggered msg do
880
+ o1 = "blah" * 10
881
+ o2 = "blah" * 10
882
+ def o1.== o
883
+ false
884
+ end
885
+ @tc.assert_equal o1, o2
886
+ end
887
+ end
888
+
889
+ def test_assert_equal_different_long_msg
890
+ msg = "message.
891
+ --- expected
892
+ +++ actual
893
+ @@ -1 +1 @@
894
+ -\"hahahahahahahahahahahahahahahahahahahaha\"
895
+ +\"blahblahblahblahblahblahblahblahblahblah\"
896
+ ".gsub(/^ +/, "")
897
+
898
+ util_assert_triggered msg do
899
+ o1 = "haha" * 10
900
+ o2 = "blah" * 10
901
+ @tc.assert_equal o1, o2, "message"
902
+ end
903
+ end
904
+
905
+ def test_assert_equal_different_short
906
+ util_assert_triggered util_msg(1, 2) do
907
+ @tc.assert_equal 1, 2
908
+ end
909
+ end
910
+
911
+ def test_assert_equal_different_short_msg
912
+ util_assert_triggered util_msg(1, 2, "message") do
913
+ @tc.assert_equal 1, 2, "message"
914
+ end
915
+ end
916
+
917
+ def test_assert_equal_different_short_multiline
918
+ msg = "--- expected\n+++ actual\n@@ -1,2 +1,2 @@\n \"a\n-b\"\n+c\"\n"
919
+ util_assert_triggered msg do
920
+ @tc.assert_equal "a\nb", "a\nc"
921
+ end
922
+ end
923
+
924
+ def test_assert_in_delta
925
+ @tc.assert_in_delta 0.0, 1.0 / 1000, 0.1
926
+ end
927
+
928
+ def test_delta_consistency
929
+ @tc.assert_in_delta 0, 1, 1
930
+
931
+ util_assert_triggered "Expected |0 - 1| (1) to not be <= 1." do
932
+ @tc.refute_in_delta 0, 1, 1
933
+ end
934
+ end
935
+
936
+ def test_assert_in_delta_triggered
937
+ x = maglev? ? "9.999999xxxe-07" : "1.0e-06"
938
+ util_assert_triggered "Expected |0.0 - 0.001| (0.001) to be <= #{x}." do
939
+ @tc.assert_in_delta 0.0, 1.0 / 1000, 0.000001
940
+ end
941
+ end
942
+
943
+ def test_assert_in_epsilon
944
+ @assertion_count = 10
945
+
946
+ @tc.assert_in_epsilon 10000, 9991
947
+ @tc.assert_in_epsilon 9991, 10000
948
+ @tc.assert_in_epsilon 1.0, 1.001
949
+ @tc.assert_in_epsilon 1.001, 1.0
950
+
951
+ @tc.assert_in_epsilon 10000, 9999.1, 0.0001
952
+ @tc.assert_in_epsilon 9999.1, 10000, 0.0001
953
+ @tc.assert_in_epsilon 1.0, 1.0001, 0.0001
954
+ @tc.assert_in_epsilon 1.0001, 1.0, 0.0001
955
+
956
+ @tc.assert_in_epsilon(-1, -1)
957
+ @tc.assert_in_epsilon(-10000, -9991)
958
+ end
959
+
960
+ def test_epsilon_consistency
961
+ @tc.assert_in_epsilon 1.0, 1.001
962
+
963
+ msg = "Expected |1.0 - 1.001| (0.000999xxx) to not be <= 0.001."
964
+ util_assert_triggered msg do
965
+ @tc.refute_in_epsilon 1.0, 1.001
966
+ end
967
+ end
968
+
969
+ def test_assert_in_epsilon_triggered
970
+ util_assert_triggered 'Expected |10000 - 9990| (10) to be <= 9.99.' do
971
+ @tc.assert_in_epsilon 10000, 9990
972
+ end
973
+ end
974
+
975
+ def test_assert_in_epsilon_triggered_negative_case
976
+ x = (RUBY18 and not maglev?) ? "0.1" : "0.100000xxx"
977
+ y = maglev? ? "0.100000xxx" : "0.1"
978
+ util_assert_triggered "Expected |-1.1 - -1| (#{x}) to be <= #{y}." do
979
+ @tc.assert_in_epsilon(-1.1, -1, 0.1)
980
+ end
981
+ end
982
+
983
+ def test_assert_includes
984
+ @assertion_count = 2
985
+
986
+ @tc.assert_includes [true], true
987
+ end
988
+
989
+ def test_assert_includes_triggered
990
+ @assertion_count = 3
991
+
992
+ e = @tc.assert_raises MiniTest::Assertion do
993
+ @tc.assert_includes [true], false
994
+ end
995
+
996
+ expected = "Expected [true] to include false."
997
+ assert_equal expected, e.message
998
+ end
999
+
1000
+ def test_assert_instance_of
1001
+ @tc.assert_instance_of String, "blah"
1002
+ end
1003
+
1004
+ def test_assert_instance_of_triggered
1005
+ util_assert_triggered 'Expected "blah" to be an instance of Array, not String.' do
1006
+ @tc.assert_instance_of Array, "blah"
1007
+ end
1008
+ end
1009
+
1010
+ def test_assert_kind_of
1011
+ @tc.assert_kind_of String, "blah"
1012
+ end
1013
+
1014
+ def test_assert_kind_of_triggered
1015
+ util_assert_triggered 'Expected "blah" to be a kind of Array, not String.' do
1016
+ @tc.assert_kind_of Array, "blah"
1017
+ end
1018
+ end
1019
+
1020
+ def test_assert_match
1021
+ @assertion_count = 2
1022
+ @tc.assert_match(/\w+/, "blah blah blah")
1023
+ end
1024
+
1025
+ def test_assert_match_matcher_object
1026
+ @assertion_count = 2
1027
+
1028
+ pattern = Object.new
1029
+ def pattern.=~(other) true end
1030
+
1031
+ @tc.assert_match pattern, 5
1032
+ end
1033
+
1034
+ def test_assert_match_matchee_to_str
1035
+ @assertion_count = 2
1036
+
1037
+ obj = Object.new
1038
+ def obj.to_str; "blah" end
1039
+
1040
+ @tc.assert_match "blah", obj
1041
+ end
1042
+
1043
+ def test_assert_match_object_triggered
1044
+ @assertion_count = 2
1045
+
1046
+ pattern = Object.new
1047
+ def pattern.=~(other) false end
1048
+ def pattern.inspect; "[Object]" end
1049
+
1050
+ util_assert_triggered 'Expected [Object] to match 5.' do
1051
+ @tc.assert_match pattern, 5
1052
+ end
1053
+ end
1054
+
1055
+ def test_assert_match_triggered
1056
+ @assertion_count = 2
1057
+ util_assert_triggered 'Expected /\d+/ to match "blah blah blah".' do
1058
+ @tc.assert_match(/\d+/, "blah blah blah")
1059
+ end
1060
+ end
1061
+
1062
+ def test_assert_nil
1063
+ @tc.assert_nil nil
1064
+ end
1065
+
1066
+ def test_assert_nil_triggered
1067
+ util_assert_triggered 'Expected 42 to be nil.' do
1068
+ @tc.assert_nil 42
1069
+ end
1070
+ end
1071
+
1072
+ def test_assert_operator
1073
+ @tc.assert_operator 2, :>, 1
1074
+ end
1075
+
1076
+ def test_assert_operator_bad_object
1077
+ bad = Object.new
1078
+ def bad.==(other) true end
1079
+
1080
+ @tc.assert_operator bad, :equal?, bad
1081
+ end
1082
+
1083
+ def test_assert_operator_triggered
1084
+ util_assert_triggered "Expected 2 to be < 1." do
1085
+ @tc.assert_operator 2, :<, 1
1086
+ end
1087
+ end
1088
+
1089
+ def test_assert_output_both
1090
+ @assertion_count = 2
1091
+
1092
+ @tc.assert_output "yay", "blah" do
1093
+ print "yay"
1094
+ $stderr.print "blah"
1095
+ end
1096
+ end
1097
+
1098
+ def test_assert_output_both_regexps
1099
+ @assertion_count = 4
1100
+
1101
+ @tc.assert_output(/y.y/, /bl.h/) do
1102
+ print "yay"
1103
+ $stderr.print "blah"
1104
+ end
1105
+ end
1106
+
1107
+ def test_assert_output_err
1108
+ @tc.assert_output nil, "blah" do
1109
+ $stderr.print "blah"
1110
+ end
1111
+ end
1112
+
1113
+ def test_assert_output_neither
1114
+ @assertion_count = 0
1115
+
1116
+ @tc.assert_output do
1117
+ # do nothing
1118
+ end
1119
+ end
1120
+
1121
+ def test_assert_output_out
1122
+ @tc.assert_output "blah" do
1123
+ print "blah"
1124
+ end
1125
+ end
1126
+
1127
+ def test_assert_output_triggered_both
1128
+ util_assert_triggered util_msg("blah", "blah blah", "In stderr") do
1129
+ @tc.assert_output "yay", "blah" do
1130
+ print "boo"
1131
+ $stderr.print "blah blah"
1132
+ end
1133
+ end
1134
+ end
1135
+
1136
+ def test_assert_output_triggered_err
1137
+ util_assert_triggered util_msg("blah", "blah blah", "In stderr") do
1138
+ @tc.assert_output nil, "blah" do
1139
+ $stderr.print "blah blah"
1140
+ end
1141
+ end
1142
+ end
1143
+
1144
+ def test_assert_output_triggered_out
1145
+ util_assert_triggered util_msg("blah", "blah blah", "In stdout") do
1146
+ @tc.assert_output "blah" do
1147
+ print "blah blah"
1148
+ end
1149
+ end
1150
+ end
1151
+
1152
+ def test_assert_predicate
1153
+ @tc.assert_predicate "", :empty?
1154
+ end
1155
+
1156
+ def test_assert_predicate_triggered
1157
+ util_assert_triggered 'Expected "blah" to be empty?.' do
1158
+ @tc.assert_predicate "blah", :empty?
1159
+ end
1160
+ end
1161
+
1162
+ def test_assert_raises
1163
+ @tc.assert_raises RuntimeError do
1164
+ raise "blah"
1165
+ end
1166
+ end
1167
+
1168
+ def test_assert_raises_module
1169
+ @tc.assert_raises MyModule do
1170
+ raise AnError
1171
+ end
1172
+ end
1173
+
1174
+ ##
1175
+ # *sigh* This is quite an odd scenario, but it is from real (albeit
1176
+ # ugly) test code in ruby-core:
1177
+ #
1178
+ # http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=29259
1179
+
1180
+ def test_assert_raises_skip
1181
+ @assertion_count = 0
1182
+
1183
+ util_assert_triggered "skipped", MiniTest::Skip do
1184
+ @tc.assert_raises ArgumentError do
1185
+ begin
1186
+ raise "blah"
1187
+ rescue
1188
+ skip "skipped"
1189
+ end
1190
+ end
1191
+ end
1192
+ end
1193
+
1194
+ def test_assert_raises_triggered_different
1195
+ e = assert_raises MiniTest::Assertion do
1196
+ @tc.assert_raises RuntimeError do
1197
+ raise SyntaxError, "icky"
1198
+ end
1199
+ end
1200
+
1201
+ expected = clean <<-EOM.chomp
1202
+ [RuntimeError] exception expected, not
1203
+ Class: <SyntaxError>
1204
+ Message: <\"icky\">
1205
+ ---Backtrace---
1206
+ FILE:LINE:in \`test_assert_raises_triggered_different\'
1207
+ ---------------
1208
+ EOM
1209
+
1210
+ actual = e.message.gsub(/^.+:\d+/, 'FILE:LINE')
1211
+ actual.gsub!(/block \(\d+ levels\) in /, '') if RUBY_VERSION >= '1.9.0'
1212
+
1213
+ assert_equal expected, actual
1214
+ end
1215
+
1216
+ def test_assert_raises_triggered_different_msg
1217
+ e = assert_raises MiniTest::Assertion do
1218
+ @tc.assert_raises RuntimeError, "XXX" do
1219
+ raise SyntaxError, "icky"
1220
+ end
1221
+ end
1222
+
1223
+ expected = clean <<-EOM
1224
+ XXX.
1225
+ [RuntimeError] exception expected, not
1226
+ Class: <SyntaxError>
1227
+ Message: <\"icky\">
1228
+ ---Backtrace---
1229
+ FILE:LINE:in \`test_assert_raises_triggered_different_msg\'
1230
+ ---------------
1231
+ EOM
1232
+
1233
+ actual = e.message.gsub(/^.+:\d+/, 'FILE:LINE')
1234
+ actual.gsub!(/block \(\d+ levels\) in /, '') if RUBY_VERSION >= '1.9.0'
1235
+
1236
+ assert_equal expected.chomp, actual
1237
+ end
1238
+
1239
+ def test_assert_raises_triggered_none
1240
+ e = assert_raises MiniTest::Assertion do
1241
+ @tc.assert_raises MiniTest::Assertion do
1242
+ # do nothing
1243
+ end
1244
+ end
1245
+
1246
+ expected = "MiniTest::Assertion expected but nothing was raised."
1247
+
1248
+ assert_equal expected, e.message
1249
+ end
1250
+
1251
+ def test_assert_raises_triggered_none_msg
1252
+ e = assert_raises MiniTest::Assertion do
1253
+ @tc.assert_raises MiniTest::Assertion, "XXX" do
1254
+ # do nothing
1255
+ end
1256
+ end
1257
+
1258
+ expected = "XXX.\nMiniTest::Assertion expected but nothing was raised."
1259
+
1260
+ assert_equal expected, e.message
1261
+ end
1262
+
1263
+ def test_assert_raises_triggered_subclass
1264
+ e = assert_raises MiniTest::Assertion do
1265
+ @tc.assert_raises StandardError do
1266
+ raise AnError
1267
+ end
1268
+ end
1269
+
1270
+ expected = clean <<-EOM.chomp
1271
+ [StandardError] exception expected, not
1272
+ Class: <AnError>
1273
+ Message: <\"AnError\">
1274
+ ---Backtrace---
1275
+ FILE:LINE:in \`test_assert_raises_triggered_subclass\'
1276
+ ---------------
1277
+ EOM
1278
+
1279
+ actual = e.message.gsub(/^.+:\d+/, 'FILE:LINE')
1280
+ actual.gsub!(/block \(\d+ levels\) in /, '') if RUBY_VERSION >= '1.9.0'
1281
+
1282
+ assert_equal expected, actual
1283
+ end
1284
+
1285
+ def test_assert_respond_to
1286
+ @tc.assert_respond_to "blah", :empty?
1287
+ end
1288
+
1289
+ def test_assert_respond_to_triggered
1290
+ util_assert_triggered 'Expected "blah" (String) to respond to #rawr!.' do
1291
+ @tc.assert_respond_to "blah", :rawr!
1292
+ end
1293
+ end
1294
+
1295
+ def test_assert_same
1296
+ @assertion_count = 3
1297
+
1298
+ o = "blah"
1299
+ @tc.assert_same 1, 1
1300
+ @tc.assert_same :blah, :blah
1301
+ @tc.assert_same o, o
1302
+ end
1303
+
1304
+ def test_assert_same_triggered
1305
+ @assertion_count = 2
1306
+
1307
+ util_assert_triggered 'Expected 2 (oid=N) to be the same as 1 (oid=N).' do
1308
+ @tc.assert_same 1, 2
1309
+ end
1310
+
1311
+ s1 = "blah"
1312
+ s2 = "blah"
1313
+
1314
+ util_assert_triggered 'Expected "blah" (oid=N) to be the same as "blah" (oid=N).' do
1315
+ @tc.assert_same s1, s2
1316
+ end
1317
+ end
1318
+
1319
+ def test_assert_send
1320
+ @tc.assert_send [1, :<, 2]
1321
+ end
1322
+
1323
+ def test_assert_send_bad
1324
+ util_assert_triggered "Expected 1.>(*[2]) to return true." do
1325
+ @tc.assert_send [1, :>, 2]
1326
+ end
1327
+ end
1328
+
1329
+ def test_assert_silent
1330
+ @assertion_count = 2
1331
+
1332
+ @tc.assert_silent do
1333
+ # do nothing
1334
+ end
1335
+ end
1336
+
1337
+ def test_assert_silent_triggered_err
1338
+ util_assert_triggered util_msg("", "blah blah", "In stderr") do
1339
+ @tc.assert_silent do
1340
+ $stderr.print "blah blah"
1341
+ end
1342
+ end
1343
+ end
1344
+
1345
+ def test_assert_silent_triggered_out
1346
+ @assertion_count = 2
1347
+
1348
+ util_assert_triggered util_msg("", "blah blah", "In stdout") do
1349
+ @tc.assert_silent do
1350
+ print "blah blah"
1351
+ end
1352
+ end
1353
+ end
1354
+
1355
+ def test_assert_throws
1356
+ @tc.assert_throws :blah do
1357
+ throw :blah
1358
+ end
1359
+ end
1360
+
1361
+ def test_assert_throws_different
1362
+ util_assert_triggered 'Expected :blah to have been thrown, not :not_blah.' do
1363
+ @tc.assert_throws :blah do
1364
+ throw :not_blah
1365
+ end
1366
+ end
1367
+ end
1368
+
1369
+ def test_assert_throws_unthrown
1370
+ util_assert_triggered 'Expected :blah to have been thrown.' do
1371
+ @tc.assert_throws :blah do
1372
+ # do nothing
1373
+ end
1374
+ end
1375
+ end
1376
+
1377
+ def test_capture_io
1378
+ @assertion_count = 0
1379
+
1380
+ non_verbose do
1381
+ out, err = capture_io do
1382
+ puts 'hi'
1383
+ $stderr.puts 'bye!'
1384
+ end
1385
+
1386
+ assert_equal "hi\n", out
1387
+ assert_equal "bye!\n", err
1388
+ end
1389
+ end
1390
+
1391
+ def test_capture_subprocess_io
1392
+ @assertion_count = 0
1393
+ skip "Dunno why but the parallel run of this fails"
1394
+
1395
+ non_verbose do
1396
+ out, err = capture_subprocess_io do
1397
+ system("echo 'hi'")
1398
+ system("echo 'bye!' 1>&2")
1399
+ end
1400
+
1401
+ assert_equal "hi\n", out
1402
+ assert_equal "bye!\n", err
1403
+ end
1404
+ end
1405
+
1406
+ def test_class_asserts_match_refutes
1407
+ @assertion_count = 0
1408
+
1409
+ methods = MiniTest::Assertions.public_instance_methods
1410
+ methods.map! { |m| m.to_s } if Symbol === methods.first
1411
+
1412
+ # These don't have corresponding refutes _on purpose_. They're
1413
+ # useless and will never be added, so don't bother.
1414
+ ignores = %w[assert_output assert_raises assert_send
1415
+ assert_silent assert_throws]
1416
+
1417
+ # These are test/unit methods. I'm not actually sure why they're still here
1418
+ ignores += %w[assert_no_match assert_not_equal assert_not_nil
1419
+ assert_not_same assert_nothing_raised
1420
+ assert_nothing_thrown assert_raise]
1421
+
1422
+ asserts = methods.grep(/^assert/).sort - ignores
1423
+ refutes = methods.grep(/^refute/).sort - ignores
1424
+
1425
+ assert_empty refutes.map { |n| n.sub(/^refute/, 'assert') } - asserts
1426
+ assert_empty asserts.map { |n| n.sub(/^assert/, 'refute') } - refutes
1427
+ end
1428
+
1429
+ def test_flunk
1430
+ util_assert_triggered 'Epic Fail!' do
1431
+ @tc.flunk
1432
+ end
1433
+ end
1434
+
1435
+ def test_flunk_message
1436
+ util_assert_triggered @zomg do
1437
+ @tc.flunk @zomg
1438
+ end
1439
+ end
1440
+
1441
+ def test_message
1442
+ @assertion_count = 0
1443
+
1444
+ assert_equal "blah2.", @tc.message { "blah2" }.call
1445
+ assert_equal "blah2.", @tc.message("") { "blah2" }.call
1446
+ assert_equal "blah1.\nblah2.", @tc.message(:blah1) { "blah2" }.call
1447
+ assert_equal "blah1.\nblah2.", @tc.message("blah1") { "blah2" }.call
1448
+
1449
+ message = proc { "blah1" }
1450
+ assert_equal "blah1.\nblah2.", @tc.message(message) { "blah2" }.call
1451
+
1452
+ message = @tc.message { "blah1" }
1453
+ assert_equal "blah1.\nblah2.", @tc.message(message) { "blah2" }.call
1454
+ end
1455
+
1456
+ def test_message_message
1457
+ util_assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
1458
+ @tc.assert_equal 1, 2, message { "whoops" }
1459
+ end
1460
+ end
1461
+
1462
+ def test_message_lambda
1463
+ util_assert_triggered "whoops.\nExpected: 1\n Actual: 2" do
1464
+ @tc.assert_equal 1, 2, lambda { "whoops" }
1465
+ end
1466
+ end
1467
+
1468
+ def test_message_deferred
1469
+ @assertion_count, var = 0, nil
1470
+
1471
+ msg = message { var = "blah" }
1472
+
1473
+ assert_nil var
1474
+
1475
+ msg.call
1476
+
1477
+ assert_equal "blah", var
1478
+ end
1479
+
1480
+ def test_pass
1481
+ @tc.pass
1482
+ end
1483
+
1484
+ def test_prints
1485
+ printer = Class.new { extend MiniTest::Assertions }
1486
+ @tc.assert_equal '"test"', printer.mu_pp(ImmutableString.new 'test')
1487
+ end
1488
+
1489
+ def test_refute
1490
+ @assertion_count = 2
1491
+
1492
+ @tc.assert_equal false, @tc.refute(false), "returns false on success"
1493
+ end
1494
+
1495
+ def test_refute_empty
1496
+ @assertion_count = 2
1497
+
1498
+ @tc.refute_empty [1]
1499
+ end
1500
+
1501
+ def test_refute_empty_triggered
1502
+ @assertion_count = 2
1503
+
1504
+ util_assert_triggered "Expected [] to not be empty." do
1505
+ @tc.refute_empty []
1506
+ end
1507
+ end
1508
+
1509
+ def test_refute_equal
1510
+ @tc.refute_equal "blah", "yay"
1511
+ end
1512
+
1513
+ def test_refute_equal_triggered
1514
+ util_assert_triggered 'Expected "blah" to not be equal to "blah".' do
1515
+ @tc.refute_equal "blah", "blah"
1516
+ end
1517
+ end
1518
+
1519
+ def test_refute_in_delta
1520
+ @tc.refute_in_delta 0.0, 1.0 / 1000, 0.000001
1521
+ end
1522
+
1523
+ def test_refute_in_delta_triggered
1524
+ x = maglev? ? "0.100000xxx" : "0.1"
1525
+ util_assert_triggered "Expected |0.0 - 0.001| (0.001) to not be <= #{x}." do
1526
+ @tc.refute_in_delta 0.0, 1.0 / 1000, 0.1
1527
+ end
1528
+ end
1529
+
1530
+ def test_refute_in_epsilon
1531
+ @tc.refute_in_epsilon 10000, 9990-1
1532
+ end
1533
+
1534
+ def test_refute_in_epsilon_triggered
1535
+ util_assert_triggered 'Expected |10000 - 9990| (10) to not be <= 10.0.' do
1536
+ @tc.refute_in_epsilon 10000, 9990
1537
+ fail
1538
+ end
1539
+ end
1540
+
1541
+ def test_refute_includes
1542
+ @assertion_count = 2
1543
+
1544
+ @tc.refute_includes [true], false
1545
+ end
1546
+
1547
+ def test_refute_includes_triggered
1548
+ @assertion_count = 3
1549
+
1550
+ e = @tc.assert_raises MiniTest::Assertion do
1551
+ @tc.refute_includes [true], true
1552
+ end
1553
+
1554
+ expected = "Expected [true] to not include true."
1555
+ assert_equal expected, e.message
1556
+ end
1557
+
1558
+ def test_refute_instance_of
1559
+ @tc.refute_instance_of Array, "blah"
1560
+ end
1561
+
1562
+ def test_refute_instance_of_triggered
1563
+ util_assert_triggered 'Expected "blah" to not be an instance of String.' do
1564
+ @tc.refute_instance_of String, "blah"
1565
+ end
1566
+ end
1567
+
1568
+ def test_refute_kind_of
1569
+ @tc.refute_kind_of Array, "blah"
1570
+ end
1571
+
1572
+ def test_refute_kind_of_triggered
1573
+ util_assert_triggered 'Expected "blah" to not be a kind of String.' do
1574
+ @tc.refute_kind_of String, "blah"
1575
+ end
1576
+ end
1577
+
1578
+ def test_refute_match
1579
+ @assertion_count = 2
1580
+ @tc.refute_match(/\d+/, "blah blah blah")
1581
+ end
1582
+
1583
+ def test_refute_match_matcher_object
1584
+ @assertion_count = 2
1585
+ @tc.refute_match Object.new, 5 # default #=~ returns false
1586
+ end
1587
+
1588
+ def test_refute_match_object_triggered
1589
+ @assertion_count = 2
1590
+
1591
+ pattern = Object.new
1592
+ def pattern.=~(other) true end
1593
+ def pattern.inspect; "[Object]" end
1594
+
1595
+ util_assert_triggered 'Expected [Object] to not match 5.' do
1596
+ @tc.refute_match pattern, 5
1597
+ end
1598
+ end
1599
+
1600
+ def test_refute_match_triggered
1601
+ @assertion_count = 2
1602
+ util_assert_triggered 'Expected /\w+/ to not match "blah blah blah".' do
1603
+ @tc.refute_match(/\w+/, "blah blah blah")
1604
+ end
1605
+ end
1606
+
1607
+ def test_refute_nil
1608
+ @tc.refute_nil 42
1609
+ end
1610
+
1611
+ def test_refute_nil_triggered
1612
+ util_assert_triggered 'Expected nil to not be nil.' do
1613
+ @tc.refute_nil nil
1614
+ end
1615
+ end
1616
+
1617
+ def test_refute_predicate
1618
+ @tc.refute_predicate "42", :empty?
1619
+ end
1620
+
1621
+ def test_refute_predicate_triggered
1622
+ util_assert_triggered 'Expected "" to not be empty?.' do
1623
+ @tc.refute_predicate "", :empty?
1624
+ end
1625
+ end
1626
+
1627
+ def test_refute_operator
1628
+ @tc.refute_operator 2, :<, 1
1629
+ end
1630
+
1631
+ def test_refute_operator_bad_object
1632
+ bad = Object.new
1633
+ def bad.==(other) true end
1634
+
1635
+ @tc.refute_operator true, :equal?, bad
1636
+ end
1637
+
1638
+ def test_refute_operator_triggered
1639
+ util_assert_triggered "Expected 2 to not be > 1." do
1640
+ @tc.refute_operator 2, :>, 1
1641
+ end
1642
+ end
1643
+
1644
+ def test_refute_respond_to
1645
+ @tc.refute_respond_to "blah", :rawr!
1646
+ end
1647
+
1648
+ def test_refute_respond_to_triggered
1649
+ util_assert_triggered 'Expected "blah" to not respond to empty?.' do
1650
+ @tc.refute_respond_to "blah", :empty?
1651
+ end
1652
+ end
1653
+
1654
+ def test_refute_same
1655
+ @tc.refute_same 1, 2
1656
+ end
1657
+
1658
+ def test_refute_same_triggered
1659
+ util_assert_triggered 'Expected 1 (oid=N) to not be the same as 1 (oid=N).' do
1660
+ @tc.refute_same 1, 1
1661
+ end
1662
+ end
1663
+
1664
+ def test_skip
1665
+ @assertion_count = 0
1666
+
1667
+ util_assert_triggered "haha!", MiniTest::Skip do
1668
+ @tc.skip "haha!"
1669
+ end
1670
+ end
1671
+
1672
+ def test_test_methods_random
1673
+ @assertion_count = 0
1674
+
1675
+ sample_test_case = Class.new MiniTest::Unit::TestCase do
1676
+ def self.test_order; :random; end
1677
+ def test_test1; assert "does not matter" end
1678
+ def test_test2; assert "does not matter" end
1679
+ def test_test3; assert "does not matter" end
1680
+ end
1681
+
1682
+ srand 42
1683
+ expected = case
1684
+ when maglev? then
1685
+ %w(test_test2 test_test3 test_test1)
1686
+ else
1687
+ %w(test_test2 test_test1 test_test3)
1688
+ end
1689
+ assert_equal expected, sample_test_case.test_methods
1690
+ end
1691
+
1692
+ def test_test_methods_sorted
1693
+ @assertion_count = 0
1694
+
1695
+ sample_test_case = Class.new MiniTest::Unit::TestCase do
1696
+ def self.test_order; :sorted end
1697
+ def test_test3; assert "does not matter" end
1698
+ def test_test2; assert "does not matter" end
1699
+ def test_test1; assert "does not matter" end
1700
+ end
1701
+
1702
+ expected = %w(test_test1 test_test2 test_test3)
1703
+ assert_equal expected, sample_test_case.test_methods
1704
+ end
1705
+
1706
+ def test_i_suck_and_my_tests_are_order_dependent_bang_sets_test_order_alpha
1707
+ @assertion_count = 0
1708
+
1709
+ shitty_test_case = Class.new MiniTest::Unit::TestCase
1710
+
1711
+ shitty_test_case.i_suck_and_my_tests_are_order_dependent!
1712
+
1713
+ assert_equal :alpha, shitty_test_case.test_order
1714
+ end
1715
+
1716
+ def test_i_suck_and_my_tests_are_order_dependent_bang_does_not_warn
1717
+ @assertion_count = 0
1718
+
1719
+ shitty_test_case = Class.new MiniTest::Unit::TestCase
1720
+
1721
+ def shitty_test_case.test_order ; :lol end
1722
+
1723
+ assert_silent do
1724
+ shitty_test_case.i_suck_and_my_tests_are_order_dependent!
1725
+ end
1726
+ end
1727
+
1728
+ def util_assert_triggered expected, klass = MiniTest::Assertion
1729
+ e = assert_raises klass do
1730
+ yield
1731
+ end
1732
+
1733
+ msg = e.message.sub(/(---Backtrace---).*/m, '\1')
1734
+ msg.gsub!(/\(oid=[-0-9]+\)/, '(oid=N)')
1735
+ msg.gsub!(/(\d\.\d{6})\d+/, '\1xxx') # normalize: ruby version, impl, platform
1736
+
1737
+ assert_equal expected, msg
1738
+ end
1739
+
1740
+ def util_msg exp, act, msg = nil
1741
+ s = "Expected: #{exp.inspect}\n Actual: #{act.inspect}"
1742
+ s = "#{msg}.\n#{s}" if msg
1743
+ s
1744
+ end
1745
+
1746
+ def without_diff
1747
+ old_diff = MiniTest::Assertions.diff
1748
+ MiniTest::Assertions.diff = nil
1749
+
1750
+ yield
1751
+ ensure
1752
+ MiniTest::Assertions.diff = old_diff
1753
+ end
1754
+ end
1755
+
1756
+ class TestMiniTestGuard < MiniTest::Unit::TestCase
1757
+ parallelize_me!
1758
+
1759
+ def test_mri_eh
1760
+ assert self.class.mri? "ruby blah"
1761
+ assert self.mri? "ruby blah"
1762
+ end
1763
+
1764
+ def test_jruby_eh
1765
+ assert self.class.jruby? "java"
1766
+ assert self.jruby? "java"
1767
+ end
1768
+
1769
+ def test_rubinius_eh
1770
+ assert self.class.rubinius? "rbx"
1771
+ assert self.rubinius? "rbx"
1772
+ end
1773
+
1774
+ def test_windows_eh
1775
+ assert self.class.windows? "mswin"
1776
+ assert self.windows? "mswin"
1777
+ end
1778
+ end
1779
+
1780
+ class TestMiniTestUnitRecording < MetaMetaMetaTestCase
1781
+ # do not parallelize this suite... it just can't handle it.
1782
+
1783
+ def assert_run_record(*expected, &block)
1784
+ def @tu.record suite, method, assertions, time, error
1785
+ recording[method] << error
1786
+ end
1787
+
1788
+ def @tu.recording
1789
+ @recording ||= Hash.new { |h,k| h[k] = [] }
1790
+ end
1791
+
1792
+ MiniTest::Unit.runner = @tu
1793
+
1794
+ Class.new MiniTest::Unit::TestCase, &block
1795
+
1796
+ with_output do
1797
+ @tu.run
1798
+ end
1799
+
1800
+ recorded = @tu.recording.fetch("test_method").map(&:class)
1801
+
1802
+ assert_equal expected, recorded
1803
+ end
1804
+
1805
+ def test_record_passing
1806
+ assert_run_record NilClass do
1807
+ def test_method
1808
+ assert true
1809
+ end
1810
+ end
1811
+ end
1812
+
1813
+ def test_record_failing
1814
+ assert_run_record MiniTest::Assertion do
1815
+ def test_method
1816
+ assert false
1817
+ end
1818
+ end
1819
+ end
1820
+
1821
+ def test_record_error
1822
+ assert_run_record RuntimeError do
1823
+ def test_method
1824
+ raise "unhandled exception"
1825
+ end
1826
+ end
1827
+ end
1828
+
1829
+ def test_record_error_teardown
1830
+ assert_run_record NilClass, RuntimeError do
1831
+ def test_method
1832
+ assert true
1833
+ end
1834
+
1835
+ def teardown
1836
+ raise "unhandled exception"
1837
+ end
1838
+ end
1839
+ end
1840
+
1841
+ def test_record_error_in_test_and_teardown
1842
+ assert_run_record AnError, RuntimeError do
1843
+ def test_method
1844
+ raise AnError
1845
+ end
1846
+
1847
+ def teardown
1848
+ raise "unhandled exception"
1849
+ end
1850
+ end
1851
+ end
1852
+
1853
+ def test_record_skip
1854
+ assert_run_record MiniTest::Skip do
1855
+ def test_method
1856
+ skip "not yet"
1857
+ end
1858
+ end
1859
+ end
1860
+ end