bitclust-core 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (697) hide show
  1. data/ChangeLog +17 -0
  2. data/Gemfile +7 -0
  3. data/Gemfile.lock +34 -0
  4. data/category-bitclust.patch +245 -0
  5. data/data/bitclust/catalog/ja_JP.UTF-8 +30 -0
  6. data/data/bitclust/template/library +1 -1
  7. data/data/bitclust/template/library-index +26 -11
  8. data/data/bitclust/template.offline/library +1 -1
  9. data/data/bitclust/template.offline/library-index +26 -11
  10. data/lib/bitclust/classentry.rb +18 -0
  11. data/lib/bitclust/docentry.rb +1 -1
  12. data/lib/bitclust/libraryentry.rb +3 -2
  13. data/lib/bitclust/lineinput.rb +2 -1
  14. data/lib/bitclust/rrdparser.rb +6 -0
  15. data/lib/bitclust/searcher.rb +5 -0
  16. data/lib/bitclust/subcommand.rb +1 -1
  17. data/lib/bitclust/version.rb +1 -1
  18. data/test/test_entry.rb +14 -0
  19. data/test/test_libraryentry.rb +8 -0
  20. data/tools/bc-tohtmlpackage.rb +19 -13
  21. data/vendor/bundle/ruby/1.9.1/bin/bc-ancestors.rb +23 -0
  22. data/vendor/bundle/ruby/1.9.1/bin/bc-checkparams.rb +23 -0
  23. data/vendor/bundle/ruby/1.9.1/bin/bc-classes.rb +23 -0
  24. data/vendor/bundle/ruby/1.9.1/bin/bc-convert.rb +23 -0
  25. data/vendor/bundle/ruby/1.9.1/bin/bc-list.rb +23 -0
  26. data/vendor/bundle/ruby/1.9.1/bin/bc-methods.rb +23 -0
  27. data/vendor/bundle/ruby/1.9.1/bin/bc-preproc.rb +23 -0
  28. data/vendor/bundle/ruby/1.9.1/bin/bc-rdoc.rb +23 -0
  29. data/vendor/bundle/ruby/1.9.1/bin/bc-tochm.rb +23 -0
  30. data/vendor/bundle/ruby/1.9.1/bin/bc-tohtml.rb +23 -0
  31. data/vendor/bundle/ruby/1.9.1/bin/bc-tohtmlpackage.rb +23 -0
  32. data/vendor/bundle/ruby/1.9.1/bin/bitclust +23 -0
  33. data/vendor/bundle/ruby/1.9.1/bin/check-signature.rb +23 -0
  34. data/vendor/bundle/ruby/1.9.1/bin/forall-ruby.rb +23 -0
  35. data/vendor/bundle/ruby/1.9.1/bin/gencatalog.rb +23 -0
  36. data/vendor/bundle/ruby/1.9.1/bin/rackup +23 -0
  37. data/vendor/bundle/ruby/1.9.1/bin/rake +23 -0
  38. data/vendor/bundle/ruby/1.9.1/bin/refe +23 -0
  39. data/vendor/bundle/ruby/1.9.1/bin/statrefm.rb +23 -0
  40. data/vendor/bundle/ruby/1.9.1/bin/stattodo.rb +23 -0
  41. data/vendor/bundle/ruby/1.9.1/bin/update-database.rb +23 -0
  42. data/vendor/bundle/ruby/1.9.1/cache/rack-1.4.1.gem +0 -0
  43. data/vendor/bundle/ruby/1.9.1/cache/rake-0.9.2.2.gem +0 -0
  44. data/vendor/bundle/ruby/1.9.1/cache/rr-1.0.4.gem +0 -0
  45. data/vendor/bundle/ruby/1.9.1/cache/test-unit-2.4.8.gem +0 -0
  46. data/vendor/bundle/ruby/1.9.1/cache/test-unit-2.5.1.gem +0 -0
  47. data/vendor/bundle/ruby/1.9.1/cache/test-unit-notify-0.3.0.gem +0 -0
  48. data/vendor/bundle/ruby/1.9.1/cache/test-unit-rr-1.0.1.gem +0 -0
  49. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/COPYING +18 -0
  50. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/KNOWN-ISSUES +21 -0
  51. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/README.rdoc +498 -0
  52. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/Rakefile +115 -0
  53. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/SPEC +171 -0
  54. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/bin/rackup +4 -0
  55. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/contrib/rack_logo.svg +111 -0
  56. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/example/lobster.ru +4 -0
  57. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/example/protectedlobster.rb +14 -0
  58. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/example/protectedlobster.ru +8 -0
  59. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/abstract/handler.rb +37 -0
  60. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/abstract/request.rb +43 -0
  61. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/basic.rb +58 -0
  62. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/digest/md5.rb +129 -0
  63. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/digest/nonce.rb +51 -0
  64. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/digest/params.rb +53 -0
  65. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/auth/digest/request.rb +41 -0
  66. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/backports/uri/common_18.rb +70 -0
  67. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/backports/uri/common_192.rb +55 -0
  68. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/body_proxy.rb +29 -0
  69. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/builder.rb +145 -0
  70. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/cascade.rb +41 -0
  71. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/chunked.rb +58 -0
  72. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/commonlogger.rb +51 -0
  73. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/conditionalget.rb +67 -0
  74. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/config.rb +15 -0
  75. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/content_length.rb +33 -0
  76. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/content_type.rb +29 -0
  77. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/deflater.rb +99 -0
  78. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/directory.rb +161 -0
  79. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/etag.rb +61 -0
  80. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/file.rb +142 -0
  81. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/cgi.rb +61 -0
  82. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/evented_mongrel.rb +8 -0
  83. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/fastcgi.rb +98 -0
  84. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/lsws.rb +61 -0
  85. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/mongrel.rb +100 -0
  86. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/scgi.rb +67 -0
  87. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/swiftiplied_mongrel.rb +8 -0
  88. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/thin.rb +24 -0
  89. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler/webrick.rb +80 -0
  90. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/handler.rb +94 -0
  91. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/head.rb +19 -0
  92. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/lint.rb +567 -0
  93. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/lobster.rb +65 -0
  94. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/lock.rb +25 -0
  95. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/logger.rb +18 -0
  96. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/methodoverride.rb +33 -0
  97. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/mime.rb +648 -0
  98. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/mock.rb +189 -0
  99. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/multipart/generator.rb +93 -0
  100. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/multipart/parser.rb +167 -0
  101. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/multipart/uploaded_file.rb +34 -0
  102. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/multipart.rb +34 -0
  103. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/nulllogger.rb +18 -0
  104. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/recursive.rb +61 -0
  105. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/reloader.rb +109 -0
  106. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/request.rb +341 -0
  107. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/response.rb +155 -0
  108. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/rewindable_input.rb +104 -0
  109. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/runtime.rb +27 -0
  110. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/sendfile.rb +141 -0
  111. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/server.rb +323 -0
  112. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/session/abstract/id.rb +372 -0
  113. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/session/cookie.rb +161 -0
  114. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/session/memcache.rb +93 -0
  115. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/session/pool.rb +79 -0
  116. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/showexceptions.rb +378 -0
  117. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/showstatus.rb +113 -0
  118. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/static.rb +71 -0
  119. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/urlmap.rb +75 -0
  120. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack/utils.rb +547 -0
  121. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/lib/rack.rb +83 -0
  122. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/rack.gemspec +37 -0
  123. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/builder/anything.rb +5 -0
  124. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/builder/comment.ru +4 -0
  125. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/builder/end.ru +5 -0
  126. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/builder/options.ru +2 -0
  127. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/lighttpd.conf +26 -0
  128. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/rackup_stub.rb +6 -0
  129. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/sample_rackup.ru +5 -0
  130. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/test +9 -0
  131. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/test+directory/test+file +1 -0
  132. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/test.fcgi +8 -0
  133. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/cgi/test.ru +5 -0
  134. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/gemloader.rb +10 -0
  135. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/bad_robots +259 -0
  136. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/binary +0 -0
  137. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/content_type_and_no_filename +6 -0
  138. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/empty +10 -0
  139. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/fail_16384_nofile +814 -0
  140. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/file1.txt +1 -0
  141. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_and_modification_param +7 -0
  142. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_escaped_quotes +6 -0
  143. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_escaped_quotes_and_modification_param +7 -0
  144. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_percent_escaped_quotes +6 -0
  145. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_unescaped_percentages +6 -0
  146. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_unescaped_percentages2 +6 -0
  147. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_unescaped_percentages3 +6 -0
  148. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/filename_with_unescaped_quotes +6 -0
  149. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/ie +6 -0
  150. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/mixed_files +21 -0
  151. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/nested +10 -0
  152. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/none +9 -0
  153. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/semicolon +6 -0
  154. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/text +15 -0
  155. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/multipart/webkit +32 -0
  156. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/rackup/config.ru +31 -0
  157. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/registering_handler/rack/handler/registering_myself.rb +8 -0
  158. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_auth_basic.rb +73 -0
  159. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_auth_digest.rb +245 -0
  160. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_body_proxy.rb +65 -0
  161. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_builder.rb +201 -0
  162. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_cascade.rb +53 -0
  163. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_cgi.rb +102 -0
  164. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_chunked.rb +87 -0
  165. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_commonlogger.rb +57 -0
  166. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_conditionalget.rb +102 -0
  167. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_config.rb +23 -0
  168. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_content_length.rb +73 -0
  169. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_content_type.rb +35 -0
  170. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_deflater.rb +169 -0
  171. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_directory.rb +69 -0
  172. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_etag.rb +82 -0
  173. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_fastcgi.rb +107 -0
  174. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_file.rb +183 -0
  175. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_handler.rb +59 -0
  176. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_head.rb +30 -0
  177. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_lint.rb +515 -0
  178. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_lobster.rb +43 -0
  179. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_lock.rb +142 -0
  180. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_logger.rb +28 -0
  181. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_methodoverride.rb +73 -0
  182. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_mock.rb +264 -0
  183. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_mongrel.rb +182 -0
  184. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_multipart.rb +363 -0
  185. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_nulllogger.rb +12 -0
  186. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_recursive.rb +69 -0
  187. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_request.rb +938 -0
  188. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_response.rb +283 -0
  189. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_rewindable_input.rb +118 -0
  190. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_runtime.rb +39 -0
  191. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_sendfile.rb +86 -0
  192. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_server.rb +74 -0
  193. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_session_abstract_id.rb +43 -0
  194. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_session_cookie.rb +294 -0
  195. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_session_memcache.rb +319 -0
  196. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_session_pool.rb +206 -0
  197. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_showexceptions.rb +87 -0
  198. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_showstatus.rb +79 -0
  199. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_static.rb +69 -0
  200. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_thin.rb +86 -0
  201. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_urlmap.rb +213 -0
  202. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_utils.rb +524 -0
  203. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/spec_webrick.rb +143 -0
  204. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/static/index.html +1 -0
  205. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/testrequest.rb +78 -0
  206. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/unregistered_handler/rack/handler/unregistered.rb +7 -0
  207. data/vendor/bundle/ruby/1.9.1/gems/rack-1.4.1/test/unregistered_handler/rack/handler/unregistered_long_one.rb +7 -0
  208. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/CHANGES +522 -0
  209. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/MIT-LICENSE +21 -0
  210. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/README.rdoc +197 -0
  211. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/Rakefile +369 -0
  212. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/TODO +20 -0
  213. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/bin/rake +33 -0
  214. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/command_line_usage.rdoc +114 -0
  215. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/example/Rakefile1 +38 -0
  216. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/example/Rakefile2 +35 -0
  217. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/example/a.c +6 -0
  218. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/example/b.c +6 -0
  219. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/example/main.c +11 -0
  220. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/glossary.rdoc +51 -0
  221. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/jamis.rb +591 -0
  222. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/proto_rake.rdoc +127 -0
  223. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/rake.1.gz +0 -0
  224. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/rakefile.rdoc +557 -0
  225. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/rational.rdoc +151 -0
  226. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.4.14.rdoc +23 -0
  227. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.4.15.rdoc +35 -0
  228. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.5.0.rdoc +53 -0
  229. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.5.3.rdoc +78 -0
  230. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.5.4.rdoc +46 -0
  231. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.6.0.rdoc +141 -0
  232. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.7.0.rdoc +119 -0
  233. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.7.1.rdoc +59 -0
  234. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.7.2.rdoc +121 -0
  235. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.7.3.rdoc +47 -0
  236. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.0.rdoc +114 -0
  237. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.2.rdoc +165 -0
  238. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.3.rdoc +112 -0
  239. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.4.rdoc +147 -0
  240. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.5.rdoc +53 -0
  241. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.6.rdoc +55 -0
  242. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.8.7.rdoc +55 -0
  243. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.9.0.rdoc +112 -0
  244. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.9.1.rdoc +52 -0
  245. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/doc/release_notes/rake-0.9.2.rdoc +49 -0
  246. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/install.rb +90 -0
  247. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/alt_system.rb +109 -0
  248. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/application.rb +595 -0
  249. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/classic_namespace.rb +11 -0
  250. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/clean.rb +32 -0
  251. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/cloneable.rb +25 -0
  252. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/compositepublisher.rb +21 -0
  253. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/ftptools.rb +150 -0
  254. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/publisher.rb +73 -0
  255. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/rubyforgepublisher.rb +16 -0
  256. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/sshpublisher.rb +50 -0
  257. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/contrib/sys.rb +191 -0
  258. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/default_loader.rb +10 -0
  259. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/dsl_definition.rb +176 -0
  260. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/early_time.rb +18 -0
  261. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/core.rb +27 -0
  262. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/module.rb +39 -0
  263. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/string.rb +167 -0
  264. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ext/time.rb +14 -0
  265. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_creation_task.rb +24 -0
  266. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_list.rb +403 -0
  267. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_task.rb +47 -0
  268. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_utils.rb +114 -0
  269. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/file_utils_ext.rb +145 -0
  270. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/gempackagetask.rb +15 -0
  271. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/invocation_chain.rb +51 -0
  272. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/invocation_exception_mixin.rb +16 -0
  273. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/loaders/makefile.rb +40 -0
  274. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/multi_task.rb +16 -0
  275. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/name_space.rb +25 -0
  276. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/packagetask.rb +185 -0
  277. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/pathmap.rb +1 -0
  278. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/pseudo_status.rb +24 -0
  279. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rake_module.rb +29 -0
  280. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb +22 -0
  281. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rdoctask.rb +234 -0
  282. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/ruby182_test_unit_fix.rb +25 -0
  283. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/rule_recursion_overflow_error.rb +20 -0
  284. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/runtest.rb +21 -0
  285. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task.rb +327 -0
  286. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task_argument_error.rb +7 -0
  287. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task_arguments.rb +78 -0
  288. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/task_manager.rb +307 -0
  289. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/tasklib.rb +22 -0
  290. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/testtask.rb +191 -0
  291. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/version.rb +8 -0
  292. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake/win32.rb +55 -0
  293. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/lib/rake.rb +69 -0
  294. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/file_creation.rb +34 -0
  295. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/helper.rb +492 -0
  296. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake.rb +40 -0
  297. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_application.rb +489 -0
  298. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_application_options.rb +335 -0
  299. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_clean.rb +14 -0
  300. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_definitions.rb +80 -0
  301. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_directory_task.rb +46 -0
  302. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_dsl.rb +77 -0
  303. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_early_time.rb +31 -0
  304. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_extension.rb +59 -0
  305. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_creation_task.rb +56 -0
  306. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_list.rb +628 -0
  307. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_list_path_map.rb +8 -0
  308. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_task.rb +102 -0
  309. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_file_utils.rb +305 -0
  310. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_ftp_file.rb +59 -0
  311. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_functional.rb +450 -0
  312. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_invocation_chain.rb +52 -0
  313. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_makefile_loader.rb +44 -0
  314. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_multi_task.rb +51 -0
  315. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_name_space.rb +43 -0
  316. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_package_task.rb +79 -0
  317. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_path_map.rb +157 -0
  318. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_path_map_explode.rb +34 -0
  319. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_path_map_partial.rb +18 -0
  320. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_pseudo_status.rb +21 -0
  321. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_rake_test_loader.rb +21 -0
  322. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_rdoc_task.rb +83 -0
  323. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_require.rb +40 -0
  324. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_rules.rb +327 -0
  325. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task.rb +267 -0
  326. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_argument_parsing.rb +103 -0
  327. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_arguments.rb +88 -0
  328. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_lib.rb +9 -0
  329. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_manager.rb +157 -0
  330. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_manager_argument_resolution.rb +36 -0
  331. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_task_with_arguments.rb +173 -0
  332. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_test_task.rb +120 -0
  333. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_top_level_functions.rb +111 -0
  334. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_rake_win32.rb +72 -0
  335. data/vendor/bundle/ruby/1.9.1/gems/rake-0.9.2.2/test/test_sys.rb +20 -0
  336. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/CHANGES +266 -0
  337. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/Gemfile +12 -0
  338. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/Gemfile.lock +31 -0
  339. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/LICENSE +22 -0
  340. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/README.rdoc +392 -0
  341. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/Rakefile +88 -0
  342. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/benchmarks/rr_benchmark.rb +32 -0
  343. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/benchmarks/rspec_benchmark.rb +14 -0
  344. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/doc/0.6.0.release.markdown +81 -0
  345. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/doc/todo.txt +0 -0
  346. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/introducting_rr.txt +206 -0
  347. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/adapters/minitest.rb +31 -0
  348. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/adapters/rr_methods.rb +146 -0
  349. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/adapters/rspec.rb +61 -0
  350. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/adapters/test_unit.rb +31 -0
  351. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/blank_slate.rb +17 -0
  352. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/class_instance_method_defined.rb +9 -0
  353. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double.rb +154 -0
  354. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/child_double_definition_create.rb +27 -0
  355. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/double_definition.rb +365 -0
  356. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/double_definition_create.rb +139 -0
  357. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/double_definition_create_blank_slate.rb +26 -0
  358. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/double_injections/any_instance_of.rb +28 -0
  359. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/double_injections/instance.rb +16 -0
  360. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/double_injection/any_instance_of.rb +30 -0
  361. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/double_injection/double_injection_strategy.rb +10 -0
  362. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/double_injection/instance.rb +17 -0
  363. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/implementation/implementation_strategy.rb +10 -0
  364. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/implementation/proxy.rb +60 -0
  365. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/implementation/reimplementation.rb +14 -0
  366. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/implementation/strongly_typed_reimplementation.rb +15 -0
  367. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/strategy.rb +43 -0
  368. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/strategy_methods.rb +53 -0
  369. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/dont_allow.rb +31 -0
  370. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb +42 -0
  371. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/stub.rb +43 -0
  372. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/verification_strategy.rb +10 -0
  373. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_matches.rb +42 -0
  374. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/argument_equality_error.rb +6 -0
  375. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/double_definition_error.rb +6 -0
  376. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/double_not_found_error.rb +6 -0
  377. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/double_order_error.rb +6 -0
  378. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/rr_error.rb +20 -0
  379. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/spy_verification_errors/double_injection_not_found_error.rb +8 -0
  380. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/spy_verification_errors/invocation_count_error.rb +8 -0
  381. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/spy_verification_errors/spy_verification_error.rb +8 -0
  382. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/subject_does_not_implement_method_error.rb +6 -0
  383. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/subject_has_different_arity_error.rb +6 -0
  384. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/errors/times_called_error.rb +6 -0
  385. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/expectations/any_argument_expectation.rb +21 -0
  386. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/expectations/argument_equality_expectation.rb +41 -0
  387. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/expectations/times_called_expectation.rb +57 -0
  388. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/hash_with_object_id_key.rb +46 -0
  389. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/injections/double_injection.rb +220 -0
  390. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/injections/injection.rb +33 -0
  391. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/injections/method_missing_injection.rb +73 -0
  392. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/injections/singleton_method_added_injection.rb +72 -0
  393. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/method_dispatches/base_method_dispatch.rb +84 -0
  394. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/method_dispatches/method_dispatch.rb +59 -0
  395. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/method_dispatches/method_missing_dispatch.rb +61 -0
  396. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/proc_from_block.rb +7 -0
  397. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/recorded_calls.rb +103 -0
  398. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/space.rb +119 -0
  399. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/spy_verification.rb +48 -0
  400. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/spy_verification_proxy.rb +13 -0
  401. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/any_times_matcher.rb +18 -0
  402. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/at_least_matcher.rb +15 -0
  403. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/at_most_matcher.rb +23 -0
  404. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/integer_matcher.rb +19 -0
  405. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/never_matcher.rb +23 -0
  406. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/non_terminal.rb +27 -0
  407. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/proc_matcher.rb +11 -0
  408. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/range_matcher.rb +21 -0
  409. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/terminal.rb +20 -0
  410. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/times_called_matchers/times_called_matcher.rb +44 -0
  411. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/anything.rb +18 -0
  412. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/boolean.rb +23 -0
  413. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/duck_type.rb +32 -0
  414. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/hash_including.rb +29 -0
  415. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/is_a.rb +25 -0
  416. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/numeric.rb +13 -0
  417. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/range.rb +7 -0
  418. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/regexp.rb +7 -0
  419. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers/satisfy.rb +26 -0
  420. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/wildcard_matchers.rb +158 -0
  421. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr.rb +100 -0
  422. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/rr.gemspec +37 -0
  423. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/any_instance_of/all_instances_of_spec.rb +12 -0
  424. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/any_instance_of/any_instance_of_spec.rb +47 -0
  425. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/any_instance_of/instance_of_spec.rb +12 -0
  426. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/dont_allow/dont_allow_after_stub_spec.rb +14 -0
  427. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/mock/mock_spec.rb +193 -0
  428. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/proxy/proxy_spec.rb +86 -0
  429. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/spy/spy_spec.rb +49 -0
  430. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/strong/strong_spec.rb +87 -0
  431. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/api/stub/stub_spec.rb +152 -0
  432. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/core_spec_suite.rb +19 -0
  433. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/environment_fixture_setup.rb +8 -0
  434. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/minitest_spec_suite.rb +21 -0
  435. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/proc_from_block_spec.rb +14 -0
  436. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/adapters/rr_methods_argument_matcher_spec.rb +67 -0
  437. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/adapters/rr_methods_creator_spec.rb +137 -0
  438. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/adapters/rr_methods_space_spec.rb +98 -0
  439. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/adapters/rr_methods_spec_helper.rb +11 -0
  440. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/adapters/rr_methods_times_matcher_spec.rb +13 -0
  441. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/double_definitions/child_double_definition_creator_spec.rb +112 -0
  442. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/double_definitions/double_definition_create_blank_slate_spec.rb +91 -0
  443. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/double_definitions/double_definition_create_spec.rb +443 -0
  444. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/double_injection/double_injection_spec.rb +546 -0
  445. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/double_injection/double_injection_verify_spec.rb +29 -0
  446. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/errors/rr_error_spec.rb +67 -0
  447. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/any_argument_expectation_spec.rb +47 -0
  448. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/anything_argument_equality_expectation_spec.rb +14 -0
  449. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/argument_equality_expectation_spec.rb +135 -0
  450. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/boolean_argument_equality_expectation_spec.rb +34 -0
  451. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/hash_including_argument_equality_expectation_spec.rb +82 -0
  452. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/hash_including_spec.rb +17 -0
  453. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/satisfy_argument_equality_expectation_spec.rb +59 -0
  454. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/satisfy_spec.rb +14 -0
  455. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_any_times_spec.rb +22 -0
  456. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_at_least_spec.rb +37 -0
  457. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_at_most_spec.rb +43 -0
  458. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_helper.rb +15 -0
  459. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_integer_spec.rb +58 -0
  460. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_proc_spec.rb +35 -0
  461. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/expectations/times_called_expectation/times_called_expectation_range_spec.rb +39 -0
  462. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/minitest/minitest_integration_test.rb +59 -0
  463. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/minitest/test_helper.rb +7 -0
  464. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/rspec/invocation_matcher_spec.rb +279 -0
  465. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/rspec/rspec_adapter_spec.rb +63 -0
  466. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/rspec/rspec_backtrace_tweaking_spec.rb +31 -0
  467. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/rspec/rspec_backtrace_tweaking_spec_fixture.rb +11 -0
  468. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/rspec/rspec_usage_spec.rb +86 -0
  469. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/space/hash_with_object_id_key_spec.rb +88 -0
  470. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/space/space_spec.rb +596 -0
  471. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/test_unit/test_helper.rb +7 -0
  472. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/test_unit/test_unit_backtrace_test.rb +36 -0
  473. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/test_unit/test_unit_integration_test.rb +59 -0
  474. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/any_times_matcher_spec.rb +47 -0
  475. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/at_least_matcher_spec.rb +55 -0
  476. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/at_most_matcher_spec.rb +70 -0
  477. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/integer_matcher_spec.rb +70 -0
  478. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/proc_matcher_spec.rb +55 -0
  479. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/range_matcher_spec.rb +76 -0
  480. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/times_called_matchers/times_called_matcher_spec.rb +118 -0
  481. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/anything_spec.rb +24 -0
  482. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/boolean_spec.rb +36 -0
  483. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/duck_type_spec.rb +52 -0
  484. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/is_a_spec.rb +32 -0
  485. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/numeric_spec.rb +32 -0
  486. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/range_spec.rb +35 -0
  487. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr/wildcard_matchers/regexp_spec.rb +43 -0
  488. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rr_spec.rb +28 -0
  489. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/rspec_spec_suite.rb +17 -0
  490. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/spec.opts +10 -0
  491. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/spec_helper.rb +41 -0
  492. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/spec_suite.rb +54 -0
  493. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/spy_verification_spec.rb +129 -0
  494. data/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/spec/test_unit_spec_suite.rb +21 -0
  495. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/COPYING +64 -0
  496. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/GPL +340 -0
  497. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/PSFL +271 -0
  498. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/README.textile +90 -0
  499. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/Rakefile +332 -0
  500. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/TODO +1 -0
  501. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/assertionfailederror.rb +25 -0
  502. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/assertions.rb +1911 -0
  503. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/attribute.rb +129 -0
  504. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/autorunner.rb +425 -0
  505. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/code-snippet-fetcher.rb +32 -0
  506. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/collector/descendant.rb +23 -0
  507. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/collector/dir.rb +108 -0
  508. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/collector/load.rb +187 -0
  509. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/collector/objectspace.rb +34 -0
  510. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/collector/xml.rb +250 -0
  511. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/collector.rb +38 -0
  512. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/color-scheme.rb +153 -0
  513. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/color.rb +123 -0
  514. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/data.rb +80 -0
  515. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/diff.rb +740 -0
  516. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/error.rb +151 -0
  517. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/exceptionhandler.rb +39 -0
  518. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/failure.rb +136 -0
  519. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/fixture.rb +227 -0
  520. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/notification.rb +133 -0
  521. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/omission.rb +191 -0
  522. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/pending.rb +150 -0
  523. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/priority.rb +182 -0
  524. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/runner/console.rb +59 -0
  525. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/runner/emacs.rb +8 -0
  526. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/runner/xml.rb +15 -0
  527. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/testcase.rb +632 -0
  528. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/testresult.rb +125 -0
  529. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/testsuite.rb +134 -0
  530. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/testsuitecreator.rb +79 -0
  531. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/console/outputlevel.rb +15 -0
  532. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/console/testrunner.rb +591 -0
  533. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/emacs/testrunner.rb +49 -0
  534. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/testrunner.rb +53 -0
  535. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/testrunnermediator.rb +86 -0
  536. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  537. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/ui/xml/testrunner.rb +224 -0
  538. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/util/backtracefilter.rb +53 -0
  539. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/util/method-owner-finder.rb +28 -0
  540. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/util/observable.rb +90 -0
  541. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/util/output.rb +31 -0
  542. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/util/procwrapper.rb +48 -0
  543. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit/version.rb +5 -0
  544. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test/unit.rb +328 -0
  545. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/lib/test-unit.rb +3 -0
  546. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/sample/adder.rb +13 -0
  547. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/sample/subtracter.rb +12 -0
  548. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/sample/test_adder.rb +20 -0
  549. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/sample/test_subtracter.rb +20 -0
  550. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/sample/test_user.rb +23 -0
  551. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/collector/test-descendant.rb +133 -0
  552. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/collector/test-load.rb +442 -0
  553. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/collector/test_dir.rb +406 -0
  554. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/collector/test_objectspace.rb +100 -0
  555. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/fixtures/plus.csv +3 -0
  556. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/run-test.rb +22 -0
  557. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-assertions.rb +1911 -0
  558. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-attribute.rb +86 -0
  559. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-code-snippet.rb +37 -0
  560. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-color-scheme.rb +82 -0
  561. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-color.rb +47 -0
  562. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-data.rb +191 -0
  563. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-diff.rb +518 -0
  564. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-emacs-runner.rb +60 -0
  565. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-fixture.rb +632 -0
  566. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-notification.rb +33 -0
  567. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-omission.rb +81 -0
  568. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-pending.rb +70 -0
  569. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-priority.rb +134 -0
  570. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test-testcase.rb +590 -0
  571. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test_error.rb +26 -0
  572. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test_failure.rb +33 -0
  573. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test_testresult.rb +113 -0
  574. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/test_testsuite.rb +137 -0
  575. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/testunit-test-util.rb +22 -0
  576. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/ui/test_testrunmediator.rb +20 -0
  577. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/util/test-method-owner-finder.rb +38 -0
  578. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/util/test-output.rb +11 -0
  579. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/util/test_backtracefilter.rb +41 -0
  580. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/util/test_observable.rb +102 -0
  581. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.4.8/test/util/test_procwrapper.rb +36 -0
  582. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/COPYING +64 -0
  583. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/GPL +340 -0
  584. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/PSFL +271 -0
  585. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/README.textile +91 -0
  586. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/Rakefile +302 -0
  587. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/TODO +1 -0
  588. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/assertionfailederror.rb +25 -0
  589. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/assertions.rb +1934 -0
  590. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/attribute.rb +129 -0
  591. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/autorunner.rb +443 -0
  592. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/code-snippet-fetcher.rb +32 -0
  593. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/collector/descendant.rb +23 -0
  594. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/collector/dir.rb +108 -0
  595. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/collector/load.rb +187 -0
  596. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/collector/objectspace.rb +34 -0
  597. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/collector/xml.rb +250 -0
  598. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/collector.rb +38 -0
  599. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/color-scheme.rb +153 -0
  600. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/color.rb +123 -0
  601. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/data.rb +80 -0
  602. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/diff.rb +740 -0
  603. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/error.rb +151 -0
  604. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/exceptionhandler.rb +39 -0
  605. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/failure.rb +136 -0
  606. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/fixture.rb +227 -0
  607. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/notification.rb +133 -0
  608. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/omission.rb +191 -0
  609. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/pending.rb +150 -0
  610. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/priority.rb +182 -0
  611. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/runner/console.rb +59 -0
  612. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/runner/emacs.rb +8 -0
  613. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/runner/xml.rb +15 -0
  614. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/testcase.rb +633 -0
  615. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/testresult.rb +125 -0
  616. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/testsuite.rb +168 -0
  617. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/testsuitecreator.rb +79 -0
  618. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/console/outputlevel.rb +15 -0
  619. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/console/testrunner.rb +603 -0
  620. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/emacs/testrunner.rb +49 -0
  621. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/testrunner.rb +53 -0
  622. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/testrunnermediator.rb +100 -0
  623. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  624. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/ui/xml/testrunner.rb +224 -0
  625. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/util/backtracefilter.rb +53 -0
  626. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/util/method-owner-finder.rb +28 -0
  627. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/util/observable.rb +90 -0
  628. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/util/output.rb +31 -0
  629. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/util/procwrapper.rb +48 -0
  630. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit/version.rb +5 -0
  631. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test/unit.rb +332 -0
  632. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/lib/test-unit.rb +13 -0
  633. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/sample/adder.rb +13 -0
  634. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/sample/subtracter.rb +12 -0
  635. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/sample/test_adder.rb +20 -0
  636. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/sample/test_subtracter.rb +20 -0
  637. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/sample/test_user.rb +23 -0
  638. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/collector/test-descendant.rb +133 -0
  639. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/collector/test-load.rb +442 -0
  640. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/collector/test_dir.rb +406 -0
  641. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/collector/test_objectspace.rb +100 -0
  642. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/fixtures/plus.csv +3 -0
  643. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/run-test.rb +22 -0
  644. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-assertions.rb +1926 -0
  645. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-attribute.rb +86 -0
  646. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-code-snippet.rb +37 -0
  647. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-color-scheme.rb +82 -0
  648. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-color.rb +47 -0
  649. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-data.rb +191 -0
  650. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-diff.rb +518 -0
  651. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-emacs-runner.rb +60 -0
  652. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-fixture.rb +632 -0
  653. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-notification.rb +33 -0
  654. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-omission.rb +81 -0
  655. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-pending.rb +70 -0
  656. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-priority.rb +134 -0
  657. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test-testcase.rb +590 -0
  658. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test_error.rb +26 -0
  659. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test_failure.rb +33 -0
  660. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test_testresult.rb +113 -0
  661. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/test_testsuite.rb +137 -0
  662. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/testunit-test-util.rb +22 -0
  663. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/ui/test_testrunmediator.rb +20 -0
  664. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/util/test-method-owner-finder.rb +38 -0
  665. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/util/test-output.rb +11 -0
  666. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/util/test_backtracefilter.rb +41 -0
  667. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/util/test_observable.rb +102 -0
  668. data/vendor/bundle/ruby/1.9.1/gems/test-unit-2.5.1/test/util/test_procwrapper.rb +36 -0
  669. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/COPYING +502 -0
  670. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/History.txt +31 -0
  671. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/Manifest.txt +14 -0
  672. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/README.txt +37 -0
  673. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/Rakefile +47 -0
  674. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/data/icons/kinotan/default.png +0 -0
  675. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/data/icons/kinotan/error.png +0 -0
  676. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/data/icons/kinotan/failure.png +0 -0
  677. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/data/icons/kinotan/omission.png +0 -0
  678. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/data/icons/kinotan/pass.png +0 -0
  679. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/data/icons/kinotan/pending.png +0 -0
  680. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/lib/test/unit/notify.rb +215 -0
  681. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/screenshot/notify-on-gnome.png +0 -0
  682. data/vendor/bundle/ruby/1.9.1/gems/test-unit-notify-0.3.0/screenshot/notify-on-mac-os-x.png +0 -0
  683. data/vendor/bundle/ruby/1.9.1/gems/test-unit-rr-1.0.1/COPYING +502 -0
  684. data/vendor/bundle/ruby/1.9.1/gems/test-unit-rr-1.0.1/History.txt +12 -0
  685. data/vendor/bundle/ruby/1.9.1/gems/test-unit-rr-1.0.1/Manifest.txt +6 -0
  686. data/vendor/bundle/ruby/1.9.1/gems/test-unit-rr-1.0.1/README.txt +30 -0
  687. data/vendor/bundle/ruby/1.9.1/gems/test-unit-rr-1.0.1/Rakefile +38 -0
  688. data/vendor/bundle/ruby/1.9.1/gems/test-unit-rr-1.0.1/lib/test/unit/rr.rb +44 -0
  689. data/vendor/bundle/ruby/1.9.1/specifications/rack-1.4.1.gemspec +47 -0
  690. data/vendor/bundle/ruby/1.9.1/specifications/rake-0.9.2.2.gemspec +34 -0
  691. data/vendor/bundle/ruby/1.9.1/specifications/rr-1.0.4.gemspec +29 -0
  692. data/vendor/bundle/ruby/1.9.1/specifications/test-unit-2.4.8.gemspec +38 -0
  693. data/vendor/bundle/ruby/1.9.1/specifications/test-unit-2.5.1.gemspec +36 -0
  694. data/vendor/bundle/ruby/1.9.1/specifications/test-unit-notify-0.3.0.gemspec +35 -0
  695. data/vendor/bundle/ruby/1.9.1/specifications/test-unit-rr-1.0.1.gemspec +38 -0
  696. metadata +686 -4
  697. data/data/bitclust/catalog/ja_JP.EUC-JP +0 -78
@@ -0,0 +1,3 @@
1
+ label,expected,augend,addend
2
+ positive positive,4,3,1
3
+ positive negative,-1,1,-2
@@ -0,0 +1,22 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $VERBOSE = true
4
+
5
+ $KCODE = "utf8" unless "".respond_to?(:encoding)
6
+
7
+ base_dir = File.expand_path(File.join(File.dirname(__FILE__), ".."))
8
+ lib_dir = File.join(base_dir, "lib")
9
+ test_dir = File.join(base_dir, "test")
10
+
11
+ $LOAD_PATH.unshift(lib_dir)
12
+
13
+ require 'test/unit'
14
+
15
+ test_unit_notify_base_dir = File.join(base_dir, "..", "test-unit-notify")
16
+ test_unit_notify_base_dir = File.expand_path(test_unit_notify_base_dir)
17
+ if File.exist?(test_unit_notify_base_dir)
18
+ $LOAD_PATH.unshift(File.join(test_unit_notify_base_dir, "lib"))
19
+ require 'test/unit/notify'
20
+ end
21
+
22
+ exit Test::Unit::AutoRunner.run(true, test_dir)
@@ -0,0 +1,1926 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # Author:: Nathaniel Talbott.
4
+ # Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
5
+ # Copyright (c) 2009-2010 Kouhei Sutou. All rights reserved.
6
+ # License:: Ruby license.
7
+
8
+ require 'test/unit'
9
+
10
+ module Test
11
+ module Unit
12
+ module AssertionCheckable
13
+ private
14
+ def check(value, message="")
15
+ add_assertion
16
+ raise AssertionFailedError.new(message) unless value
17
+ end
18
+
19
+ def check_assertions(expect_fail, options={})
20
+ expected_message = options[:expected_message]
21
+ actual_message_normalizer = options[:actual_message_normalizer]
22
+ return_value_expected = options[:return_value_expected]
23
+ @actual_assertion_count = 0
24
+ failed = true
25
+ actual_message = nil
26
+ @catch_assertions = true
27
+ return_value = nil
28
+ begin
29
+ return_value = yield
30
+ failed = false
31
+ rescue AssertionFailedError => error
32
+ actual_message = error.message
33
+ end
34
+ @catch_assertions = false
35
+
36
+ if expect_fail
37
+ message = "Should have failed, but didn't"
38
+ else
39
+ message = "Should not have failed, but did with message\n" +
40
+ "<#{actual_message}>"
41
+ end
42
+ check(expect_fail == failed, message)
43
+
44
+ message = "Should have made one assertion but made\n" +
45
+ "<#{@actual_assertion_count}>"
46
+ check(1 == @actual_assertion_count, message)
47
+
48
+ if expect_fail
49
+ if actual_message_normalizer
50
+ actual_message = actual_message_normalizer.call(actual_message)
51
+ end
52
+ case expected_message
53
+ when String
54
+ check(expected_message == actual_message,
55
+ "Should have the correct message.\n" +
56
+ "<#{expected_message.inspect}> expected but was\n" +
57
+ "<#{actual_message.inspect}>")
58
+ when Regexp
59
+ check(expected_message =~ actual_message,
60
+ "The message should match correctly.\n" +
61
+ "</#{expected_message.source}/> expected to match\n" +
62
+ "<#{actual_message.inspect}>")
63
+ else
64
+ check(false,
65
+ "Incorrect expected message type in assert_nothing_failed")
66
+ end
67
+ else
68
+ if return_value_expected
69
+ check(!return_value.nil?, "Should return a value")
70
+ else
71
+ check(return_value.nil?,
72
+ "Should not return a value but returned <#{return_value}>")
73
+ end
74
+ end
75
+
76
+ return_value
77
+ end
78
+
79
+ def check_nothing_fails(return_value_expected=false, &proc)
80
+ check_assertions(false,
81
+ {:expected_message => nil,
82
+ :return_value_expected => return_value_expected},
83
+ &proc)
84
+ end
85
+
86
+ def check_fail(expected_message, options={}, &proc)
87
+ check_assertions(true,
88
+ options.merge(:expected_message => expected_message),
89
+ &proc)
90
+ end
91
+
92
+ def check_fail_exception(expected_message, options={}, &proc)
93
+ normalizer = lambda do |actual_message|
94
+ actual_message.gsub(/(^[^:\n]+:\d+:.+\n?)+\z/, "")
95
+ end
96
+ check_assertions(true,
97
+ options.merge(:expected_message => expected_message,
98
+ :actual_message_normalizer => normalizer),
99
+ &proc)
100
+ end
101
+
102
+ def inspect_tag(tag)
103
+ begin
104
+ throw tag
105
+ rescue NameError
106
+ tag.to_s.inspect
107
+ rescue ArgumentError
108
+ tag.inspect
109
+ end
110
+ end
111
+
112
+ def add_failure(message, location=caller, options=nil)
113
+ unless @catch_assertions
114
+ super
115
+ end
116
+ end
117
+
118
+ def add_assertion
119
+ if @catch_assertions
120
+ @actual_assertion_count += 1
121
+ else
122
+ super
123
+ end
124
+ end
125
+ end
126
+
127
+ class TestAssertions < TestCase
128
+ include AssertionCheckable
129
+
130
+ def test_assert_block
131
+ check_nothing_fails {
132
+ assert_block {true}
133
+ }
134
+ check_nothing_fails {
135
+ assert_block("successful assert_block") {true}
136
+ }
137
+ check_nothing_fails {
138
+ assert_block("successful assert_block") {true}
139
+ }
140
+ check_fail("assert_block failed.") {
141
+ assert_block {false}
142
+ }
143
+ check_fail("failed assert_block") {
144
+ assert_block("failed assert_block") {false}
145
+ }
146
+ end
147
+
148
+ def test_assert_equal
149
+ check_nothing_fails {
150
+ assert_equal("string1", "string1")
151
+ }
152
+ check_nothing_fails {
153
+ assert_equal("string1", "string1", "successful assert_equal")
154
+ }
155
+
156
+ message = <<-EOM.chomp
157
+ <"string1"> expected but was
158
+ <"string2">.
159
+
160
+ diff:
161
+ - string1
162
+ ? ^
163
+ + string2
164
+ ? ^
165
+ EOM
166
+ check_fail(message) {
167
+ assert_equal("string1", "string2")
168
+ }
169
+
170
+ message = <<-EOM.chomp
171
+ failed assert_equal.
172
+ <"string1"> expected but was
173
+ <"string2">.
174
+
175
+ diff:
176
+ - string1
177
+ ? ^
178
+ + string2
179
+ ? ^
180
+ EOM
181
+ check_fail(message) {
182
+ assert_equal("string1", "string2", "failed assert_equal")
183
+ }
184
+
185
+ message = <<-EOM.chomp
186
+ <"111111"> expected but was
187
+ <111111>.
188
+
189
+ diff:
190
+ - "111111"
191
+ ? - -
192
+ + 111111
193
+ EOM
194
+ check_fail(message) do
195
+ assert_equal("111111", 111111)
196
+ end
197
+ end
198
+
199
+ def test_assert_equal_with_long_line
200
+ expected = ["0123456789",
201
+ "1123456789",
202
+ "2123456789",
203
+ "3123456789",
204
+ "4123456789",
205
+ "5123456789",
206
+ "6123456789",
207
+ "7123456789",
208
+ "8123456789"].join
209
+ actual = ["0000000000",
210
+ "1123456789",
211
+ "2123456789",
212
+ "3123456789",
213
+ "4123456789",
214
+ "5123456789",
215
+ "6123456789",
216
+ "7123456789",
217
+ "8123456789"].join
218
+ message = <<-EOM.chomp
219
+ <"#{expected}"> expected but was
220
+ <"#{actual}">.
221
+
222
+ diff:
223
+ - #{expected}
224
+ ? ^^^^^^^^^
225
+ + #{actual}
226
+ ? ^^^^^^^^^
227
+
228
+ folded diff:
229
+ - 012345678911234567892123456789312345678941234567895123456789612345678971234567
230
+ ? ^^^^^^^^^
231
+ + 000000000011234567892123456789312345678941234567895123456789612345678971234567
232
+ ? ^^^^^^^^^
233
+ 898123456789
234
+ EOM
235
+ check_fail(message) do
236
+ assert_equal(expected, actual)
237
+ end
238
+ end
239
+
240
+ def test_assert_equal_for_too_small_difference
241
+ message = <<-EOM.chomp
242
+ <1> expected but was
243
+ <2>.
244
+ EOM
245
+ check_fail(message) do
246
+ assert_equal(1, 2)
247
+ end
248
+ end
249
+
250
+ def test_assert_equal_for_same_inspected_objects
251
+ now = Time.now
252
+ now_without_usec = Time.at(now.to_i)
253
+ message = <<-EOM.chomp
254
+ <#{now.inspect}> expected but was
255
+ <#{now.inspect}>.
256
+ EOM
257
+ check_fail(message) do
258
+ assert_equal(now, now_without_usec)
259
+ end
260
+ end
261
+
262
+ def test_assert_equal_with_multi_lines_result
263
+ message = <<-EOM.chomp
264
+ <#{"a\nb".inspect}> expected but was
265
+ <#{"x".inspect}>.
266
+
267
+ diff:
268
+ + x
269
+ - a
270
+ - b
271
+ EOM
272
+ check_fail(message) do
273
+ assert_equal("a\nb", "x")
274
+ end
275
+ end
276
+
277
+ def test_assert_equal_with_large_string
278
+ message = <<-EOM.chomp
279
+ <#{("a\n" + "x" * 997).inspect}> expected but was
280
+ <#{"x".inspect}>.
281
+
282
+ diff:
283
+ + x
284
+ - a
285
+ - #{"x" * 997}
286
+
287
+ folded diff:
288
+ + x
289
+ - a
290
+ #{(["- " + ("x" * 78)] * 12).join("\n")}
291
+ - #{"x" * 61}
292
+ EOM
293
+ check_fail(message) do
294
+ assert_equal("a\n" + "x" * 997, "x")
295
+ end
296
+
297
+ message = <<-EOM.chomp
298
+ <#{("a\n" + "x" * 998).inspect}> expected but was
299
+ <#{"x".inspect}>.
300
+ EOM
301
+ check_fail(message) do
302
+ assert_equal("a\n" + "x" * 998, "x")
303
+ end
304
+ end
305
+
306
+ def test_assert_equal_with_max_diff_target_string_size
307
+ key = "TEST_UNIT_MAX_DIFF_TARGET_STRING_SIZE"
308
+ before_value = ENV[key]
309
+ ENV[key] = "100"
310
+ begin
311
+ message = <<-EOM.chomp
312
+ <#{("a\n" + "x" * 97).inspect}> expected but was
313
+ <#{"x".inspect}>.
314
+
315
+ diff:
316
+ + x
317
+ - a
318
+ - #{"x" * 97}
319
+
320
+ folded diff:
321
+ + x
322
+ - a
323
+ #{(["- " + ("x" * 78)]).join("\n")}
324
+ - #{"x" * 19}
325
+ EOM
326
+ check_fail(message) do
327
+ assert_equal("a\n" + "x" * 97, "x")
328
+ end
329
+
330
+ message = <<-EOM.chomp
331
+ <#{("a\n" + "x" * 98).inspect}> expected but was
332
+ <#{"x".inspect}>.
333
+ EOM
334
+ check_fail(message) do
335
+ assert_equal("a\n" + "x" * 98, "x")
336
+ end
337
+ ensure
338
+ ENV[key] = before_value
339
+ end
340
+ end
341
+
342
+ def test_assert_equal_with_different_encoding
343
+ utf8_string = "こんにちは"
344
+ unless utf8_string.respond_to?(:force_encoding)
345
+ omit("encoding test is for Ruby >= 1.9")
346
+ end
347
+ ascii_8bit_string = utf8_string.dup.force_encoding("ascii-8bit")
348
+ message = <<-EOM.chomp
349
+ <#{utf8_string.inspect}>("UTF-8") expected but was
350
+ <#{ascii_8bit_string.inspect}>("ASCII-8BIT").
351
+ EOM
352
+ check_fail(message) do
353
+ assert_equal(utf8_string, ascii_8bit_string)
354
+ end
355
+ end
356
+
357
+ def test_assert_equal_with_different_hash
358
+ designers = {
359
+ "Ruby" => "Matz",
360
+ "Lisp" => "John McCarthy",
361
+ }
362
+ categories = {
363
+ "LL" => ["Ruby", "Python"],
364
+ "Heavy" => ["C", "C++"],
365
+ }
366
+ message = <<-EOM.chomp
367
+ <{"Lisp"=>"John McCarthy", "Ruby"=>"Matz"}> expected but was
368
+ <{"Heavy"=>["C", "C++"], "LL"=>["Ruby", "Python"]}>.
369
+ EOM
370
+ check_fail(message) do
371
+ assert_equal(designers, categories)
372
+ end
373
+ end
374
+
375
+ def test_assert_equal_with_recursive_hash
376
+ alice = {"name" => "Alice"}
377
+ bob = {"name" => "Bob"}
378
+ alice["followers"] = [bob]
379
+ bob["followers"] = [alice]
380
+ message = <<-EOM.chomp
381
+ <{"followers"=>[{"followers"=>[{...}], "name"=>"Bob"}], "name"=>"Alice"}> expected but was
382
+ <{"followers"=>[{"followers"=>[{...}], "name"=>"Alice"}], "name"=>"Bob"}>.
383
+
384
+ diff:
385
+ - {"followers"=>[{"followers"=>[{...}], "name"=>"Bob"}], "name"=>"Alice"}
386
+ ? -----------------
387
+ + {"followers"=>[{"followers"=>[{...}], "name"=>"Alice"}], "name"=>"Bob"}
388
+ ? +++++++++++++++++
389
+ EOM
390
+ check_fail(message) do
391
+ assert_equal(alice, bob)
392
+ end
393
+ end
394
+
395
+ def test_assert_raise_success
396
+ return_value = nil
397
+ check_nothing_fails(true) do
398
+ return_value = assert_raise(RuntimeError) do
399
+ raise "Error"
400
+ end
401
+ end
402
+ check(return_value.kind_of?(Exception),
403
+ "Should have returned the exception " +
404
+ "from a successful assert_raise")
405
+ check(return_value.message == "Error",
406
+ "Should have returned the correct exception " +
407
+ "from a successful assert_raise")
408
+
409
+ check_nothing_fails(true) do
410
+ assert_raise(ArgumentError, "successful assert_raise") do
411
+ raise ArgumentError.new("Error")
412
+ end
413
+ end
414
+
415
+ check_nothing_fails(true) do
416
+ assert_raise(RuntimeError) do
417
+ raise "Error"
418
+ end
419
+ end
420
+
421
+ check_nothing_fails(true) do
422
+ assert_raise(RuntimeError, "successful assert_raise") do
423
+ raise "Error"
424
+ end
425
+ end
426
+
427
+ check_nothing_fails(true) do
428
+ assert_raise do
429
+ raise Exception, "Any exception"
430
+ end
431
+ end
432
+ end
433
+
434
+ def test_assert_raise_fail
435
+ check_fail("<RuntimeError> exception expected but none was thrown.") do
436
+ assert_raise(RuntimeError) do
437
+ 1 + 1
438
+ end
439
+ end
440
+
441
+ message = <<-EOM.chomp
442
+ failed assert_raise.
443
+ <ArgumentError> exception expected but was
444
+ <RuntimeError(<Error>)>.
445
+ EOM
446
+ check_fail_exception(message) do
447
+ assert_raise(ArgumentError, "failed assert_raise") do
448
+ raise "Error"
449
+ end
450
+ end
451
+
452
+ message = <<-EOM
453
+ Should expect a class of exception, Object.
454
+ <false> is not true.
455
+ EOM
456
+ check_fail(message.chomp) do
457
+ assert_nothing_raised(Object) do
458
+ 1 + 1
459
+ end
460
+ end
461
+ end
462
+
463
+ def test_assert_raise_module
464
+ exceptions = [ArgumentError, TypeError]
465
+ modules = [Math, Comparable]
466
+ rescues = exceptions + modules
467
+
468
+ exceptions.each do |exc|
469
+ return_value = nil
470
+ check_nothing_fails(true) do
471
+ return_value = assert_raise(*rescues) do
472
+ raise exc, "Error"
473
+ end
474
+ end
475
+ check(return_value.instance_of?(exc),
476
+ "Should have returned #{exc} but was #{return_value.class}")
477
+ check(return_value.message == "Error",
478
+ "Should have returned the correct exception " +
479
+ "from a successful assert_raise")
480
+ end
481
+
482
+ modules.each do |mod|
483
+ return_value = nil
484
+ check_nothing_fails(true) do
485
+ return_value = assert_raise(*rescues) do
486
+ raise Exception.new("Error").extend(mod)
487
+ end
488
+ end
489
+ check(mod === return_value,
490
+ "Should have returned #{mod}")
491
+ check(return_value.message == "Error",
492
+ "Should have returned the correct exception " +
493
+ "from a successful assert_raise")
494
+ end
495
+
496
+ check_fail("<[ArgumentError, TypeError, Math, Comparable]> exception " +
497
+ "expected but none was thrown.") do
498
+ assert_raise(*rescues) do
499
+ 1 + 1
500
+ end
501
+ end
502
+
503
+ message = <<-EOM.chomp
504
+ failed assert_raise.
505
+ <[ArgumentError, TypeError]> exception expected but was
506
+ <RuntimeError(<Error>)>.
507
+ EOM
508
+ check_fail_exception(message) do
509
+ assert_raise(ArgumentError, TypeError, "failed assert_raise") do
510
+ raise "Error"
511
+ end
512
+ end
513
+ end
514
+
515
+ def test_assert_raise_instance
516
+ return_value = nil
517
+ check_nothing_fails(true) do
518
+ return_value = assert_raise(RuntimeError.new("Error")) do
519
+ raise "Error"
520
+ end
521
+ end
522
+ check(return_value.kind_of?(Exception),
523
+ "Should have returned the exception " +
524
+ "from a successful assert_raise")
525
+ check(return_value.message == "Error",
526
+ "Should have returned the correct exception " +
527
+ "from a successful assert_raise")
528
+
529
+ message = <<-EOM.chomp
530
+ <RuntimeError(<XXX>)> exception expected but was
531
+ <RuntimeError(<Error>)>.
532
+
533
+ diff:
534
+ - RuntimeError(<XXX>)
535
+ ? ^^^
536
+ + RuntimeError(<Error>)
537
+ ? ^^^^^
538
+ EOM
539
+ check_fail_exception(message) do
540
+ return_value = assert_raise(RuntimeError.new("XXX")) do
541
+ raise "Error"
542
+ end
543
+ end
544
+
545
+ different_error_class = Class.new(StandardError)
546
+ message = <<-EOM.chomp
547
+ <#{different_error_class.inspect}(<Error>)> exception expected but was
548
+ <RuntimeError(<Error>)>.
549
+ EOM
550
+ check_fail_exception(message) do
551
+ assert_raise(different_error_class.new("Error")) do
552
+ raise "Error"
553
+ end
554
+ end
555
+
556
+ different_error = different_error_class.new("Error")
557
+ def different_error.inspect
558
+ "DifferentError: \"Error\""
559
+ end
560
+ message = <<-EOM.chomp
561
+ <DifferentError: "Error"> exception expected but was
562
+ <RuntimeError(<Error>)>.
563
+ EOM
564
+ check_fail_exception(message) do
565
+ assert_raise(different_error) do
566
+ raise "Error"
567
+ end
568
+ end
569
+
570
+ check_nothing_fails(true) do
571
+ assert_raise(different_error_class.new("Error"),
572
+ RuntimeError.new("Error"),
573
+ RuntimeError.new("XXX")) do
574
+ raise "Error"
575
+ end
576
+ end
577
+ end
578
+
579
+ def test_assert_instance_of
580
+ check_nothing_fails {
581
+ assert_instance_of(String, "string")
582
+ }
583
+ check_nothing_fails {
584
+ assert_instance_of(String, "string", "successful assert_instance_of")
585
+ }
586
+ check_nothing_fails {
587
+ assert_instance_of(String, "string", "successful assert_instance_of")
588
+ }
589
+ check_fail(%Q{<"string"> expected to be an instance of\n<Hash> but was\n<String>.}) {
590
+ assert_instance_of(Hash, "string")
591
+ }
592
+ check_fail(%Q{failed assert_instance_of.\n<"string"> expected to be an instance of\n<Hash> but was\n<String>.}) {
593
+ assert_instance_of(Hash, "string", "failed assert_instance_of")
594
+ }
595
+
596
+ check_nothing_fails do
597
+ assert_instance_of([Fixnum, NilClass], 100)
598
+ end
599
+ check_fail(%Q{<"string"> expected to be an instance of\n[<Fixnum>, <NilClass>] but was\n<String>.}) do
600
+ assert_instance_of([Fixnum, NilClass], "string")
601
+ end
602
+ check_fail(%Q{<100> expected to be an instance of\n[<Numeric>, <NilClass>] but was\n<Fixnum>.}) do
603
+ assert_instance_of([Numeric, NilClass], 100)
604
+ end
605
+ end
606
+
607
+ def test_assert_nil
608
+ check_nothing_fails {
609
+ assert_nil(nil)
610
+ }
611
+ check_nothing_fails {
612
+ assert_nil(nil, "successful assert_nil")
613
+ }
614
+ check_nothing_fails {
615
+ assert_nil(nil, "successful assert_nil")
616
+ }
617
+ check_fail(%Q{<"string"> expected to be nil.}) {
618
+ assert_nil("string")
619
+ }
620
+ check_fail(%Q{failed assert_nil.\n<"string"> expected to be nil.}) {
621
+ assert_nil("string", "failed assert_nil")
622
+ }
623
+ end
624
+
625
+ def test_assert_not_nil
626
+ check_nothing_fails{assert_not_nil(false)}
627
+ check_nothing_fails{assert_not_nil(false, "message")}
628
+ check_fail("<nil> expected to not be nil."){assert_not_nil(nil)}
629
+ check_fail("message.\n<nil> expected to not be nil.") {assert_not_nil(nil, "message")}
630
+ end
631
+
632
+ def test_assert_kind_of
633
+ check_nothing_fails {
634
+ assert_kind_of(Module, Array)
635
+ }
636
+ check_nothing_fails {
637
+ assert_kind_of(Object, "string", "successful assert_kind_of")
638
+ }
639
+ check_nothing_fails {
640
+ assert_kind_of(Object, "string", "successful assert_kind_of")
641
+ }
642
+ check_nothing_fails {
643
+ assert_kind_of(Comparable, 1)
644
+ }
645
+ check_fail(%Q{<"string"> expected to be kind_of?\n<Class> but was\n<String>.}) {
646
+ assert_kind_of(Class, "string")
647
+ }
648
+ check_fail(%Q{failed assert_kind_of.\n<"string"> expected to be kind_of?\n<Class> but was\n<String>.}) {
649
+ assert_kind_of(Class, "string", "failed assert_kind_of")
650
+ }
651
+
652
+ check_nothing_fails do
653
+ assert_kind_of([Fixnum, NilClass], 100)
654
+ end
655
+ check_fail(%Q{<"string"> expected to be kind_of?\n[<Fixnum>, <NilClass>] but was\n<String>.}) do
656
+ assert_kind_of([Fixnum, NilClass], "string")
657
+ end
658
+ end
659
+
660
+ def test_assert_match
661
+ check_nothing_fails {
662
+ assert_match(/strin./, "string")
663
+ }
664
+ check_nothing_fails {
665
+ assert_match("strin", "string")
666
+ }
667
+ check_nothing_fails {
668
+ assert_match(/strin./, "string", "successful assert_match")
669
+ }
670
+ check_nothing_fails {
671
+ assert_match(/strin./, "string", "successful assert_match")
672
+ }
673
+ check_fail(%Q{<"string"> expected to be =~\n</slin./>.}) {
674
+ assert_match(/slin./, "string")
675
+ }
676
+ check_fail(%Q{<"string"> expected to be =~\n</strin\\./>.}) {
677
+ assert_match("strin.", "string")
678
+ }
679
+ check_fail(%Q{failed assert_match.\n<"string"> expected to be =~\n</slin./>.}) {
680
+ assert_match(/slin./, "string", "failed assert_match")
681
+ }
682
+ end
683
+
684
+ def test_assert_same
685
+ thing = "thing"
686
+ check_nothing_fails {
687
+ assert_same(thing, thing)
688
+ }
689
+ check_nothing_fails {
690
+ assert_same(thing, thing, "successful assert_same")
691
+ }
692
+ check_nothing_fails {
693
+ assert_same(thing, thing, "successful assert_same")
694
+ }
695
+ thing2 = "thing"
696
+ check_fail(%Q{<"thing">\nwith id <#{thing.__id__}> expected to be equal? to\n<"thing">\nwith id <#{thing2.__id__}>.}) {
697
+ assert_same(thing, thing2)
698
+ }
699
+ check_fail(%Q{failed assert_same.\n<"thing">\nwith id <#{thing.__id__}> expected to be equal? to\n<"thing">\nwith id <#{thing2.__id__}>.}) {
700
+ assert_same(thing, thing2, "failed assert_same")
701
+ }
702
+ end
703
+
704
+ def test_assert_nothing_raised
705
+ check_nothing_fails {
706
+ assert_nothing_raised {
707
+ 1 + 1
708
+ }
709
+ }
710
+ check_nothing_fails {
711
+ assert_nothing_raised("successful assert_nothing_raised") {
712
+ 1 + 1
713
+ }
714
+ }
715
+ check_nothing_fails {
716
+ assert_nothing_raised("successful assert_nothing_raised") {
717
+ 1 + 1
718
+ }
719
+ }
720
+ check_nothing_fails {
721
+ begin
722
+ assert_nothing_raised(RuntimeError, StandardError, Comparable, "successful assert_nothing_raised") {
723
+ raise ZeroDivisionError.new("ArgumentError")
724
+ }
725
+ rescue ZeroDivisionError
726
+ end
727
+ }
728
+ check_fail("Should expect a class of exception, Object.\n<false> is not true.") {
729
+ assert_nothing_raised(Object) {
730
+ 1 + 1
731
+ }
732
+ }
733
+ expected_message = <<-EOM.chomp
734
+ Exception raised:
735
+ RuntimeError(<Error>)
736
+ EOM
737
+ check_fail_exception(expected_message) {
738
+ assert_nothing_raised {
739
+ raise "Error"
740
+ }
741
+ }
742
+ expected_message = <<-EOM.chomp
743
+ failed assert_nothing_raised.
744
+ Exception raised:
745
+ RuntimeError(<Error>)
746
+ EOM
747
+ check_fail_exception(expected_message) {
748
+ assert_nothing_raised("failed assert_nothing_raised") {
749
+ raise "Error"
750
+ }
751
+ }
752
+ expected_message = <<-EOM.chomp
753
+ Exception raised:
754
+ RuntimeError(<Error>)
755
+ EOM
756
+ check_fail_exception(expected_message) {
757
+ assert_nothing_raised(StandardError, RuntimeError) {
758
+ raise "Error"
759
+ }
760
+ }
761
+ check_fail("Failure.") do
762
+ assert_nothing_raised do
763
+ flunk("Failure")
764
+ end
765
+ end
766
+ end
767
+
768
+ def test_flunk
769
+ check_fail("Flunked.") {
770
+ flunk
771
+ }
772
+ check_fail("flunk message.") {
773
+ flunk("flunk message")
774
+ }
775
+ end
776
+
777
+ def test_assert_not_same
778
+ thing = "thing"
779
+ thing2 = "thing"
780
+ check_nothing_fails {
781
+ assert_not_same(thing, thing2)
782
+ }
783
+ check_nothing_fails {
784
+ assert_not_same(thing, thing2, "message")
785
+ }
786
+ check_fail(%Q{<"thing">\nwith id <#{thing.__id__}> expected to not be equal? to\n<"thing">\nwith id <#{thing.__id__}>.}) {
787
+ assert_not_same(thing, thing)
788
+ }
789
+ check_fail(%Q{message.\n<"thing">\nwith id <#{thing.__id__}> expected to not be equal? to\n<"thing">\nwith id <#{thing.__id__}>.}) {
790
+ assert_not_same(thing, thing, "message")
791
+ }
792
+ end
793
+
794
+ def test_assert_not_equal
795
+ check_nothing_fails {
796
+ assert_not_equal("string1", "string2")
797
+ }
798
+ check_nothing_fails {
799
+ assert_not_equal("string1", "string2", "message")
800
+ }
801
+ check_fail(%Q{<"string"> expected to be != to\n<"string">.}) {
802
+ assert_not_equal("string", "string")
803
+ }
804
+ check_fail(%Q{message.\n<"string"> expected to be != to\n<"string">.}) {
805
+ assert_not_equal("string", "string", "message")
806
+ }
807
+ end
808
+
809
+ def test_assert_not_match_pass
810
+ check_nothing_fails do
811
+ assert_not_match(/sling/, "string")
812
+ end
813
+ end
814
+
815
+ def test_assert_not_match_pass_with_message
816
+ check_nothing_fails do
817
+ assert_not_match(/sling/, "string", "message")
818
+ end
819
+ end
820
+
821
+ def test_assert_not_match_fail_not_regexp
822
+ check_fail("<REGEXP> in assert_not_match(<REGEXP>, ...) " +
823
+ "should be a Regexp.\n" +
824
+ "<\"asdf\"> expected to be an instance of\n" +
825
+ "<Regexp> but was\n" +
826
+ "<String>.") do
827
+ assert_not_match("asdf", "asdf")
828
+ end
829
+ end
830
+
831
+ def test_assert_not_match_fail_match
832
+ check_fail("</string/> expected to not match\n" +
833
+ "<\"string\">.") do
834
+ assert_not_match(/string/, "string")
835
+ end
836
+ end
837
+
838
+ def test_assert_not_match_fail_match_with_message
839
+ check_fail("message.\n" +
840
+ "</string/> expected to not match\n" +
841
+ "<\"string\">.") do
842
+ assert_not_match(/string/, "string", "message")
843
+ end
844
+ end
845
+
846
+ def test_assert_no_match
847
+ check_nothing_fails{assert_no_match(/sling/, "string")}
848
+ check_nothing_fails{assert_no_match(/sling/, "string", "message")}
849
+ check_fail(%Q{The first argument to assert_no_match should be a Regexp.\n<"asdf"> expected to be an instance of\n<Regexp> but was\n<String>.}) do
850
+ assert_no_match("asdf", "asdf")
851
+ end
852
+ check_fail(%Q{</string/> expected to not match\n<"string">.}) do
853
+ assert_no_match(/string/, "string")
854
+ end
855
+ check_fail(%Q{message.\n</string/> expected to not match\n<"string">.}) do
856
+ assert_no_match(/string/, "string", "message")
857
+ end
858
+ end
859
+
860
+ def test_assert_throw
861
+ check_nothing_fails do
862
+ assert_throw(:thing, "message") do
863
+ throw :thing
864
+ end
865
+ end
866
+
867
+ tag = :thing2
868
+ check_fail("message.\n" +
869
+ "<:thing> expected to be thrown but\n" +
870
+ "<#{inspect_tag(tag)}> was thrown.") do
871
+ assert_throw(:thing, "message") do
872
+ throw :thing2
873
+ end
874
+ end
875
+ check_fail("message.\n" +
876
+ "<:thing> should have been thrown.") do
877
+ assert_throw(:thing, "message") do
878
+ 1 + 1
879
+ end
880
+ end
881
+ end
882
+
883
+ def test_assert_nothing_thrown
884
+ check_nothing_fails do
885
+ assert_nothing_thrown("message") do
886
+ 1 + 1
887
+ end
888
+ end
889
+
890
+ tag = :thing
891
+ inspected = inspect_tag(tag)
892
+ check_fail("message.\n" +
893
+ "<#{inspected}> was thrown when nothing was expected.") do
894
+ assert_nothing_thrown("message") do
895
+ throw tag
896
+ end
897
+ end
898
+ end
899
+
900
+ def test_assert_operator
901
+ check_nothing_fails {
902
+ assert_operator("thing", :==, "thing", "message")
903
+ }
904
+ check_fail(%Q{<0.15>\ngiven as the operator for #assert_operator must be a Symbol or #respond_to?(:to_str).}) do
905
+ assert_operator("thing", 0.15, "thing")
906
+ end
907
+ check_fail(%Q{message.\n<"thing1"> expected to be\n==\n<"thing2">.}) {
908
+ assert_operator("thing1", :==, "thing2", "message")
909
+ }
910
+ end
911
+
912
+ def test_assert_respond_to
913
+ check_nothing_fails {
914
+ assert_respond_to("thing", :to_s, "message")
915
+ }
916
+ check_nothing_fails {
917
+ assert_respond_to("thing", "to_s", "message")
918
+ }
919
+ check_fail("<0.15>.kind_of?(Symbol) or\n" +
920
+ "<0.15>.respond_to?(:to_str) expected") {
921
+ assert_respond_to("thing", 0.15)
922
+ }
923
+ check_fail("message.\n" +
924
+ "<:symbol>.respond_to?(:nonexistence) expected\n" +
925
+ "(Class: <Symbol>)") {
926
+ assert_respond_to(:symbol, :nonexistence, "message")
927
+ }
928
+ end
929
+
930
+ def test_assert_not_respond_to_pass_symbol
931
+ check_nothing_fails do
932
+ assert_not_respond_to("thing", :nonexistent, "message")
933
+ end
934
+ end
935
+
936
+ def test_assert_not_respond_to_pass_string
937
+ check_nothing_fails do
938
+ assert_not_respond_to("thing", :nonexistent, "message")
939
+ end
940
+ end
941
+
942
+ def test_assert_not_respond_to_fail_number
943
+ check_fail("<0.15>.kind_of?(Symbol) or\n" +
944
+ "<0.15>.respond_to?(:to_str) expected") do
945
+ assert_respond_to("thing", 0.15)
946
+ end
947
+ end
948
+
949
+ def tset_assert_not_respond_to_fail_existence
950
+ check_fail("message.\n" +
951
+ "!<:symbol>.respond_to?(:to_s) expected\n" +
952
+ "(Class: <Symbol>)") do
953
+ assert_respond_to(:symbol, :to_s, "message")
954
+ end
955
+ end
956
+
957
+ def test_assert_send
958
+ object = Object.new
959
+ class << object
960
+ private
961
+ def return_argument(argument, bogus)
962
+ return argument
963
+ end
964
+ end
965
+ check_nothing_fails do
966
+ assert_send([object, :return_argument, true, "bogus"], "message")
967
+ end
968
+
969
+ inspected_object = AssertionMessage.convert(object)
970
+ expected_message = <<-EOM
971
+ message.
972
+ <#{inspected_object}> expected to respond to
973
+ <return_argument(*[false, "bogus"])> with a true value but was
974
+ <false>.
975
+ EOM
976
+ check_fail(expected_message.chomp) do
977
+ assert_send([object, :return_argument, false, "bogus"], "message")
978
+ end
979
+ end
980
+
981
+ def test_condition_invariant
982
+ object = Object.new
983
+ def object.inspect
984
+ @changed = true
985
+ end
986
+ def object.==(other)
987
+ @changed ||= false
988
+ return (!@changed)
989
+ end
990
+ check_nothing_fails do
991
+ assert_equal(object, object, "message")
992
+ end
993
+ end
994
+
995
+ def test_assert_boolean
996
+ check_nothing_fails do
997
+ assert_boolean(true)
998
+ end
999
+ check_nothing_fails do
1000
+ assert_boolean(false)
1001
+ end
1002
+
1003
+ check_fail("<true> or <false> expected but was\n<1>") do
1004
+ assert_boolean(1)
1005
+ end
1006
+
1007
+ check_fail("<true> or <false> expected but was\n<nil>") do
1008
+ assert_boolean(nil)
1009
+ end
1010
+
1011
+ check_fail("message.\n<true> or <false> expected but was\n<\"XXX\">") do
1012
+ assert_boolean("XXX", "message")
1013
+ end
1014
+ end
1015
+
1016
+ def test_assert_true
1017
+ check_nothing_fails do
1018
+ assert_true(true)
1019
+ end
1020
+
1021
+ check_fail("<true> expected but was\n<false>") do
1022
+ assert_true(false)
1023
+ end
1024
+
1025
+ check_fail("<true> expected but was\n<1>") do
1026
+ assert_true(1)
1027
+ end
1028
+
1029
+ check_fail("message.\n<true> expected but was\n<nil>") do
1030
+ assert_true(nil, "message")
1031
+ end
1032
+ end
1033
+
1034
+ def test_assert_false
1035
+ check_nothing_fails do
1036
+ assert_false(false)
1037
+ end
1038
+
1039
+ check_fail("<false> expected but was\n<true>") do
1040
+ assert_false(true)
1041
+ end
1042
+
1043
+ check_fail("<false> expected but was\n<nil>") do
1044
+ assert_false(nil)
1045
+ end
1046
+
1047
+ check_fail("message.\n<false> expected but was\n<:false>") do
1048
+ assert_false(:false, "message")
1049
+ end
1050
+ end
1051
+
1052
+ def test_assert_compare
1053
+ check_nothing_fails do
1054
+ assert_compare(1.4, "<", 10.0)
1055
+ end
1056
+
1057
+ check_nothing_fails do
1058
+ assert_compare(2, "<=", 2)
1059
+ end
1060
+
1061
+ check_nothing_fails do
1062
+ assert_compare(14, ">=", 10.0)
1063
+ end
1064
+
1065
+ check_nothing_fails do
1066
+ assert_compare(14, ">", 13.9)
1067
+ end
1068
+
1069
+ expected_message = <<-EOM
1070
+ <15> < <10> should be true
1071
+ <15> expected less than
1072
+ <10>.
1073
+ EOM
1074
+ check_fail(expected_message.chomp) do
1075
+ assert_compare(15, "<", 10)
1076
+ end
1077
+
1078
+ expected_message = <<-EOM
1079
+ <15> <= <10> should be true
1080
+ <15> expected less than or equal to
1081
+ <10>.
1082
+ EOM
1083
+ check_fail(expected_message.chomp) do
1084
+ assert_compare(15, "<=", 10)
1085
+ end
1086
+
1087
+ expected_message = <<-EOM
1088
+ <10> > <15> should be true
1089
+ <10> expected greater than
1090
+ <15>.
1091
+ EOM
1092
+ check_fail(expected_message.chomp) do
1093
+ assert_compare(10, ">", 15)
1094
+ end
1095
+
1096
+ expected_message = <<-EOM
1097
+ <10> >= <15> should be true
1098
+ <10> expected greater than or equal to
1099
+ <15>.
1100
+ EOM
1101
+ check_fail(expected_message.chomp) do
1102
+ assert_compare(10, ">=", 15)
1103
+ end
1104
+ end
1105
+
1106
+ def test_assert_fail_assertion
1107
+ check_nothing_fails do
1108
+ assert_fail_assertion do
1109
+ flunk
1110
+ end
1111
+ end
1112
+
1113
+ check_fail("Failed assertion was expected.") do
1114
+ assert_fail_assertion do
1115
+ end
1116
+ end
1117
+ end
1118
+
1119
+ def test_assert_raise_message
1120
+ check_nothing_fails do
1121
+ assert_raise_message("Raise!") do
1122
+ raise "Raise!"
1123
+ end
1124
+ end
1125
+
1126
+ check_nothing_fails do
1127
+ assert_raise_message("Raise!") do
1128
+ raise Exception, "Raise!"
1129
+ end
1130
+ end
1131
+
1132
+ check_nothing_fails do
1133
+ assert_raise_message(/raise/i) do
1134
+ raise "Raise!"
1135
+ end
1136
+ end
1137
+
1138
+ expected_message = <<-EOM
1139
+ <"Expected message"> exception message expected but was
1140
+ <"Actual message">.
1141
+ EOM
1142
+ check_fail(expected_message.chomp) do
1143
+ assert_raise_message("Expected message") do
1144
+ raise "Actual message"
1145
+ end
1146
+ end
1147
+
1148
+ expected_message = <<-EOM
1149
+ <"Expected message"> exception message expected but none was thrown.
1150
+ EOM
1151
+ check_fail(expected_message.chomp) do
1152
+ assert_raise_message("Expected message") do
1153
+ end
1154
+ end
1155
+ end
1156
+
1157
+ def test_assert_raise_kind_of
1158
+ check_nothing_fails(true) do
1159
+ assert_raise_kind_of(SystemCallError) do
1160
+ raise Errno::EACCES
1161
+ end
1162
+ end
1163
+
1164
+ expected_message = <<-EOM.chomp
1165
+ <SystemCallError> family exception expected but was
1166
+ <RuntimeError(<XXX>)>.
1167
+ EOM
1168
+ check_fail_exception(expected_message) do
1169
+ assert_raise_kind_of(SystemCallError) do
1170
+ raise RuntimeError, "XXX"
1171
+ end
1172
+ end
1173
+ end
1174
+
1175
+ def test_assert_const_defined
1176
+ check_nothing_fails do
1177
+ assert_const_defined(Test, :Unit)
1178
+ end
1179
+
1180
+ check_nothing_fails do
1181
+ assert_const_defined(Test, "Unit")
1182
+ end
1183
+
1184
+ check_fail("<Test>.const_defined?(<:Nonexistence>) expected.") do
1185
+ assert_const_defined(Test, :Nonexistence)
1186
+ end
1187
+ end
1188
+
1189
+ def test_assert_not_const_defined
1190
+ check_nothing_fails do
1191
+ assert_not_const_defined(Test, :Nonexistence)
1192
+ end
1193
+
1194
+ check_fail("!<Test>.const_defined?(<:Unit>) expected.") do
1195
+ assert_not_const_defined(Test, :Unit)
1196
+ end
1197
+
1198
+ check_fail("!<Test>.const_defined?(<\"Unit\">) expected.") do
1199
+ assert_not_const_defined(Test, "Unit")
1200
+ end
1201
+ end
1202
+
1203
+ def test_assert_predicate
1204
+ check_nothing_fails do
1205
+ assert_predicate([], :empty?)
1206
+ end
1207
+
1208
+ check_fail("<[1]>.empty? is true value expected but was\n<false>") do
1209
+ assert_predicate([1], :empty?)
1210
+ end
1211
+
1212
+ check_fail("<[1]>.respond_to?(:nonexistent?) expected\n" +
1213
+ "(Class: <Array>)") do
1214
+ assert_predicate([1], :nonexistent?)
1215
+ end
1216
+ end
1217
+
1218
+ def test_assert_not_predicate
1219
+ check_nothing_fails do
1220
+ assert_not_predicate([1], :empty?)
1221
+ end
1222
+
1223
+ check_fail("<[]>.empty? is false value expected but was\n<true>") do
1224
+ assert_not_predicate([], :empty?)
1225
+ end
1226
+
1227
+ check_fail("<[]>.respond_to?(:nonexistent?) expected\n" +
1228
+ "(Class: <Array>)") do
1229
+ assert_not_predicate([], :nonexistent?)
1230
+ end
1231
+ end
1232
+
1233
+ def test_assert_alias_method
1234
+ object = Object.new
1235
+ class << object
1236
+ def original_method
1237
+ end
1238
+ alias_method :alias_method, :original_method
1239
+
1240
+ def other
1241
+ end
1242
+ end
1243
+
1244
+ check_nothing_fails do
1245
+ assert_alias_method(object, :alias_method, :original_method)
1246
+ end
1247
+
1248
+ check_nothing_fails do
1249
+ assert_alias_method(object, :original_method, :alias_method)
1250
+ end
1251
+
1252
+ check_fail("<#{object.method(:other).inspect}> is alias of\n" +
1253
+ "<#{object.method(:original_method).inspect}> expected") do
1254
+ assert_alias_method(object, :other, :original_method)
1255
+ end
1256
+
1257
+ inspected_object = AssertionMessage.convert(object)
1258
+ check_fail("<#{inspected_object}>.nonexistent doesn't exist\n" +
1259
+ "(Class: <Object>)") do
1260
+ assert_alias_method(object, :nonexistent, :original_method)
1261
+ end
1262
+
1263
+ check_fail("<#{inspected_object}>.nonexistent doesn't exist\n" +
1264
+ "(Class: <Object>)") do
1265
+ assert_alias_method(object, :alias_method, :nonexistent)
1266
+ end
1267
+ end
1268
+
1269
+ def test_assert_path_exist
1270
+ check_nothing_fails do
1271
+ assert_path_exist(__FILE__)
1272
+ end
1273
+
1274
+ nonexistent_file = __FILE__ + ".nonexistent"
1275
+ check_fail("<#{nonexistent_file.inspect}> expected to exist") do
1276
+ assert_path_exist(nonexistent_file)
1277
+ end
1278
+ end
1279
+
1280
+ def test_assert_path_not_exist
1281
+ nonexistent_file = __FILE__ + ".nonexistent"
1282
+ check_nothing_fails do
1283
+ assert_path_not_exist(nonexistent_file)
1284
+ end
1285
+
1286
+ check_fail("<#{__FILE__.inspect}> expected to not exist") do
1287
+ assert_path_not_exist(__FILE__)
1288
+ end
1289
+ end
1290
+ end
1291
+
1292
+ class TestAssert < TestCase
1293
+ include AssertionCheckable
1294
+
1295
+ def test_pass
1296
+ check_nothing_fails do
1297
+ assert(true)
1298
+ end
1299
+ end
1300
+
1301
+ def test_pass_neither_false_or_nil
1302
+ check_nothing_fails do
1303
+ assert("a")
1304
+ end
1305
+ end
1306
+
1307
+ def test_pass_with_message
1308
+ check_nothing_fails do
1309
+ assert(true, "successful assert")
1310
+ end
1311
+ end
1312
+
1313
+ def test_fail_nil
1314
+ check_fail("<nil> is not true.") do
1315
+ assert(nil)
1316
+ end
1317
+ end
1318
+
1319
+ def test_fail_false
1320
+ check_fail("<false> is not true.") do
1321
+ assert(false)
1322
+ end
1323
+ end
1324
+
1325
+ def test_fail_false_with_message
1326
+ check_fail("failed assert.\n" +
1327
+ "<false> is not true.") do
1328
+ assert(false, "failed assert")
1329
+ end
1330
+ end
1331
+
1332
+ def test_fail_with_assertion_message
1333
+ check_fail("user message.\n" +
1334
+ "placeholder <:in> message") do
1335
+ assert(false, build_message("user message",
1336
+ "placeholder <?> message",
1337
+ :in))
1338
+ end
1339
+ end
1340
+
1341
+ def test_error_invalid_message_true
1342
+ check_fail("assertion message must be String, Proc or " +
1343
+ "Test::Unit::Assertions::AssertionMessage: " +
1344
+ "<true>(<TrueClass>)") do
1345
+ begin
1346
+ assert(true, true)
1347
+ rescue ArgumentError
1348
+ raise AssertionFailedError, $!.message
1349
+ end
1350
+ end
1351
+ end
1352
+ end
1353
+
1354
+ class TestAssertInDelta < TestCase
1355
+ include AssertionCheckable
1356
+
1357
+ def test_pass
1358
+ check_nothing_fails do
1359
+ assert_in_delta(1.4, 1.4, 0)
1360
+ end
1361
+ end
1362
+
1363
+ def test_pass_without_delta
1364
+ check_nothing_fails do
1365
+ assert_in_delta(1.401, 1.402)
1366
+ end
1367
+ end
1368
+
1369
+ def test_pass_with_message
1370
+ check_nothing_fails do
1371
+ assert_in_delta(0.5, 0.4, 0.1, "message")
1372
+ end
1373
+ end
1374
+
1375
+ def test_pass_float_like_object
1376
+ check_nothing_fails do
1377
+ float_thing = Object.new
1378
+ def float_thing.to_f
1379
+ 0.2
1380
+ end
1381
+ assert_in_delta(0.1, float_thing, 0.1)
1382
+ end
1383
+ end
1384
+
1385
+ def test_pass_string_expected
1386
+ check_nothing_fails do
1387
+ assert_in_delta("0.5", 0.4, 0.1)
1388
+ end
1389
+ end
1390
+
1391
+ def test_fail_with_message
1392
+ check_fail("message.\n" +
1393
+ "<0.5> -/+ <0.05> expected to include\n" +
1394
+ "<0.4>.\n" +
1395
+ "\n" +
1396
+ "Relation:\n" +
1397
+ "<<0.4> < <0.5>-<0.05>[0.45] <= <0.5>+<0.05>[0.55]>") do
1398
+ assert_in_delta(0.5, 0.4, 0.05, "message")
1399
+ end
1400
+ end
1401
+
1402
+ def test_fail_because_not_float_like_object
1403
+ object = Object.new
1404
+ inspected_object = AssertionMessage.convert(object)
1405
+ check_fail("The arguments must respond to to_f; " +
1406
+ "the first float did not.\n" +
1407
+ "<#{inspected_object}>.respond_to?(:to_f) expected\n" +
1408
+ "(Class: <Object>)") do
1409
+ assert_in_delta(object, 0.4, 0.1)
1410
+ end
1411
+ end
1412
+
1413
+ def test_fail_because_negaitve_delta
1414
+ check_fail("The delta should not be negative.\n" +
1415
+ "<-0.1> expected to be\n>=\n<0.0>.") do
1416
+ assert_in_delta(0.5, 0.4, -0.1, "message")
1417
+ end
1418
+ end
1419
+
1420
+ def test_fail_without_delta
1421
+ check_fail("<1.402> -/+ <0.001> expected to include\n" +
1422
+ "<1.404>.\n" +
1423
+ "\n" +
1424
+ "Relation:\n" +
1425
+ "<" +
1426
+ "<1.402>-<0.001>[#{1.402 - 0.001}] <= " +
1427
+ "<1.402>+<0.001>[#{1.402 + 0.001}] < " +
1428
+ "<1.404>" +
1429
+ ">") do
1430
+ assert_in_delta(1.402, 1.404)
1431
+ end
1432
+ end
1433
+ end
1434
+
1435
+ class TestAssertNotInDelta < Test::Unit::TestCase
1436
+ include AssertionCheckable
1437
+
1438
+ def test_pass
1439
+ check_nothing_fails do
1440
+ assert_not_in_delta(1.42, 1.44, 0.01)
1441
+ end
1442
+ end
1443
+
1444
+ def test_pass_without_delta
1445
+ check_nothing_fails do
1446
+ assert_not_in_delta(1.402, 1.404)
1447
+ end
1448
+ end
1449
+
1450
+ def test_pass_with_message
1451
+ check_nothing_fails do
1452
+ assert_not_in_delta(0.5, 0.4, 0.09, "message")
1453
+ end
1454
+ end
1455
+
1456
+ def test_pass_float_like_object
1457
+ check_nothing_fails do
1458
+ float_thing = Object.new
1459
+ def float_thing.to_f
1460
+ 0.2
1461
+ end
1462
+ assert_not_in_delta(0.1, float_thing, 0.09)
1463
+ end
1464
+ end
1465
+
1466
+ def test_pass_string_epxected
1467
+ check_nothing_fails do
1468
+ assert_not_in_delta("0.5", 0.4, 0.09)
1469
+ end
1470
+ end
1471
+
1472
+ def test_fail
1473
+ check_fail("<1.4> -/+ <0.11> expected to not include\n" +
1474
+ "<1.5>.\n" +
1475
+ "\n" +
1476
+ "Relation:\n" +
1477
+ "<" +
1478
+ "<1.4>-<0.11>[#{1.4 - 0.11}] <= " +
1479
+ "<1.5> <= " +
1480
+ "<1.4>+<0.11>[#{1.4 + 0.11}]" +
1481
+ ">") do
1482
+ assert_not_in_delta(1.4, 1.5, 0.11)
1483
+ end
1484
+ end
1485
+
1486
+ def test_fail_without_delta
1487
+ check_fail("<1.402> -/+ <0.001> expected to not include\n" +
1488
+ "<1.4021>.\n" +
1489
+ "\n" +
1490
+ "Relation:\n" +
1491
+ "<" +
1492
+ "<1.402>-<0.001>[#{1.402 - 0.001}] <= " +
1493
+ "<1.4021> <= " +
1494
+ "<1.402>+<0.001>[#{1.402 + 0.001}]" +
1495
+ ">") do
1496
+ assert_not_in_delta(1.402, 1.4021)
1497
+ end
1498
+ end
1499
+
1500
+ def test_fail_with_message
1501
+ check_fail("message.\n" +
1502
+ "<0.5> -/+ <0.11> expected to not include\n" +
1503
+ "<0.4>.\n" +
1504
+ "\n" +
1505
+ "Relation:\n" +
1506
+ "<" +
1507
+ "<0.5>-<0.11>[0.39] <= " +
1508
+ "<0.4> <= " +
1509
+ "<0.5>+<0.11>[0.61]" +
1510
+ ">") do
1511
+ assert_not_in_delta(0.5, 0.4, 0.11, "message")
1512
+ end
1513
+ end
1514
+
1515
+ def test_fail_because_not_float_like_object
1516
+ object = Object.new
1517
+ inspected_object = AssertionMessage.convert(object)
1518
+ check_fail("The arguments must respond to to_f; " +
1519
+ "the first float did not.\n" +
1520
+ "<#{inspected_object}>.respond_to?(:to_f) expected\n" +
1521
+ "(Class: <Object>)") do
1522
+ assert_not_in_delta(object, 0.4, 0.1)
1523
+ end
1524
+ end
1525
+
1526
+ def test_fail_because_negaitve_delta
1527
+ check_fail("The delta should not be negative.\n" +
1528
+ "<-0.11> expected to be\n>=\n<0.0>.") do
1529
+ assert_not_in_delta(0.5, 0.4, -0.11, "message")
1530
+ end
1531
+ end
1532
+ end
1533
+
1534
+ class TestAssertInEpsilon < TestCase
1535
+ include AssertionCheckable
1536
+
1537
+ def test_pass
1538
+ check_nothing_fails do
1539
+ assert_in_epsilon(10000, 9000, 0.1)
1540
+ end
1541
+ end
1542
+
1543
+ def test_pass_without_epsilon
1544
+ check_nothing_fails do
1545
+ assert_in_epsilon(10000, 9991)
1546
+ end
1547
+ end
1548
+
1549
+ def test_pass_with_message
1550
+ check_nothing_fails do
1551
+ assert_in_epsilon(10000, 9000, 0.1, "message")
1552
+ end
1553
+ end
1554
+
1555
+ def test_pass_float_like_object
1556
+ check_nothing_fails do
1557
+ float_thing = Object.new
1558
+ def float_thing.to_f
1559
+ 9000.0
1560
+ end
1561
+ assert_in_epsilon(10000, float_thing, 0.1)
1562
+ end
1563
+ end
1564
+
1565
+ def test_pass_string_expected
1566
+ check_nothing_fails do
1567
+ assert_in_epsilon("10000", 9000, 0.1)
1568
+ end
1569
+ end
1570
+
1571
+ def test_pass_zero_expected
1572
+ check_nothing_fails do
1573
+ assert_in_epsilon(0, 0.00000001)
1574
+ end
1575
+ end
1576
+
1577
+ def test_fail_with_message
1578
+ check_fail("message.\n" +
1579
+ "<10000> -/+ (<10000> * <0.1>)[1000.0] " +
1580
+ "expected to include\n" +
1581
+ "<8999>.\n" +
1582
+ "\n" +
1583
+ "Relation:\n" +
1584
+ "<" +
1585
+ "<8999> < " +
1586
+ "<10000>-(<10000>*<0.1>)[9000.0] <= " +
1587
+ "<10000>+(<10000>*<0.1>)[11000.0]" +
1588
+ ">") do
1589
+ assert_in_epsilon(10000, 8999, 0.1, "message")
1590
+ end
1591
+ end
1592
+
1593
+ def test_fail_because_not_float_like_object
1594
+ object = Object.new
1595
+ inspected_object = AssertionMessage.convert(object)
1596
+ check_fail("The arguments must respond to to_f; " +
1597
+ "the first float did not.\n" +
1598
+ "<#{inspected_object}>.respond_to?(:to_f) expected\n" +
1599
+ "(Class: <Object>)") do
1600
+ assert_in_epsilon(object, 9000, 0.1)
1601
+ end
1602
+ end
1603
+
1604
+ def test_fail_because_negaitve_epsilon
1605
+ check_fail("The epsilon should not be negative.\n" +
1606
+ "<-0.1> expected to be\n>=\n<0.0>.") do
1607
+ assert_in_epsilon(10000, 9000, -0.1, "message")
1608
+ end
1609
+ end
1610
+
1611
+ def test_fail_without_epsilon
1612
+ check_fail("<10000> -/+ (<10000> * <0.001>)[10.0] " +
1613
+ "expected to include\n" +
1614
+ "<10011>.\n" +
1615
+ "\n" +
1616
+ "Relation:\n" +
1617
+ "<" +
1618
+ "<10000>-(<10000>*<0.001>)[9990.0] <= " +
1619
+ "<10000>+(<10000>*<0.001>)[10010.0] < " +
1620
+ "<10011>" +
1621
+ ">") do
1622
+ assert_in_epsilon(10000, 10011)
1623
+ end
1624
+ end
1625
+ end
1626
+
1627
+ class TestAssertNotInEpsilon < Test::Unit::TestCase
1628
+ include AssertionCheckable
1629
+
1630
+ def test_pass
1631
+ check_nothing_fails do
1632
+ assert_not_in_epsilon(10000, 8999, 0.1)
1633
+ end
1634
+ end
1635
+
1636
+ def test_pass_without_epsilon
1637
+ check_nothing_fails do
1638
+ assert_not_in_epsilon(10000, 9989)
1639
+ end
1640
+ end
1641
+
1642
+ def test_pass_with_message
1643
+ check_nothing_fails do
1644
+ assert_not_in_epsilon(10000, 8999, 0.1, "message")
1645
+ end
1646
+ end
1647
+
1648
+ def test_pass_float_like_object
1649
+ check_nothing_fails do
1650
+ float_thing = Object.new
1651
+ def float_thing.to_f
1652
+ 8999.0
1653
+ end
1654
+ assert_not_in_epsilon(10000, float_thing, 0.1)
1655
+ end
1656
+ end
1657
+
1658
+ def test_pass_string_epxected
1659
+ check_nothing_fails do
1660
+ assert_not_in_epsilon("10000", 8999, 0.1)
1661
+ end
1662
+ end
1663
+
1664
+ def test_fail
1665
+ check_fail("<10000> -/+ (<10000> * <0.1>)[1000.0] " +
1666
+ "expected to not include\n" +
1667
+ "<9000>.\n" +
1668
+ "\n" +
1669
+ "Relation:\n" +
1670
+ "<" +
1671
+ "<10000>-(<10000>*<0.1>)[9000.0] <= " +
1672
+ "<9000> <= " +
1673
+ "<10000>+(<10000>*<0.1>)[11000.0]" +
1674
+ ">") do
1675
+ assert_not_in_epsilon(10000, 9000, 0.1)
1676
+ end
1677
+ end
1678
+
1679
+ def test_fail_without_epsilon
1680
+ check_fail("<10000> -/+ (<10000> * <0.001>)[10.0] " +
1681
+ "expected to not include\n" +
1682
+ "<9990>.\n" +
1683
+ "\n" +
1684
+ "Relation:\n" +
1685
+ "<" +
1686
+ "<10000>-(<10000>*<0.001>)[9990.0] <= " +
1687
+ "<9990> <= " +
1688
+ "<10000>+(<10000>*<0.001>)[10010.0]" +
1689
+ ">") do
1690
+ assert_not_in_epsilon(10000, 9990)
1691
+ end
1692
+ end
1693
+
1694
+ def test_fail_with_message
1695
+ check_fail("message.\n" +
1696
+ "<10000> -/+ (<10000> * <0.1>)[1000.0] " +
1697
+ "expected to not include\n" +
1698
+ "<9000>.\n" +
1699
+ "\n" +
1700
+ "Relation:\n" +
1701
+ "<" +
1702
+ "<10000>-(<10000>*<0.1>)[9000.0] <= " +
1703
+ "<9000> <= " +
1704
+ "<10000>+(<10000>*<0.1>)[11000.0]" +
1705
+ ">") do
1706
+ assert_not_in_epsilon(10000, 9000, 0.1, "message")
1707
+ end
1708
+ end
1709
+
1710
+ def test_fail_because_not_float_like_object
1711
+ object = Object.new
1712
+ inspected_object = AssertionMessage.convert(object)
1713
+ check_fail("The arguments must respond to to_f; " +
1714
+ "the first float did not.\n" +
1715
+ "<#{inspected_object}>.respond_to?(:to_f) expected\n" +
1716
+ "(Class: <Object>)") do
1717
+ assert_not_in_epsilon(object, 9000, 0.1)
1718
+ end
1719
+ end
1720
+
1721
+ def test_fail_because_negaitve_epsilon
1722
+ check_fail("The epsilon should not be negative.\n" +
1723
+ "<-0.1> expected to be\n>=\n<0.0>.") do
1724
+ assert_not_in_epsilon(10000, 9000, -0.1, "message")
1725
+ end
1726
+ end
1727
+ end
1728
+
1729
+ class TestAssertInclude < Test::Unit::TestCase
1730
+ include AssertionCheckable
1731
+
1732
+ def test_pass
1733
+ check_nothing_fails do
1734
+ assert_include([1, 2, 3], 1)
1735
+ end
1736
+ end
1737
+
1738
+ def test_pass_with_message
1739
+ check_nothing_fails do
1740
+ assert_include([1, 2, 3], 1, "message")
1741
+ end
1742
+ end
1743
+
1744
+ def test_fail
1745
+ check_fail("<[1, 2, 3]> expected to include\n" +
1746
+ "<4>.") do
1747
+ assert_include([1, 2, 3], 4)
1748
+ end
1749
+ end
1750
+
1751
+ def test_fail_with_message
1752
+ check_fail("message.\n" +
1753
+ "<[1, 2, 3]> expected to include\n" +
1754
+ "<4>.") do
1755
+ assert_include([1, 2, 3], 4, "message")
1756
+ end
1757
+ end
1758
+
1759
+ def test_fail_because_not_collection_like_object
1760
+ object = Object.new
1761
+ inspected_object = AssertionMessage.convert(object)
1762
+ check_fail("The collection must respond to :include?.\n" +
1763
+ "<#{inspected_object}>.respond_to?(:include?) expected\n" +
1764
+ "(Class: <Object>)") do
1765
+ assert_include(object, 1)
1766
+ end
1767
+ end
1768
+ end
1769
+
1770
+ class TestAssertNotInclude < Test::Unit::TestCase
1771
+ include AssertionCheckable
1772
+
1773
+ def test_pass
1774
+ check_nothing_fails do
1775
+ assert_not_include([1, 2, 3], 5)
1776
+ end
1777
+ end
1778
+
1779
+ def test_pass_with_message
1780
+ check_nothing_fails do
1781
+ assert_not_include([1, 2, 3], 5, "message")
1782
+ end
1783
+ end
1784
+
1785
+ def test_fail
1786
+ check_fail("<[1, 2, 3]> expected to not include\n" +
1787
+ "<2>.") do
1788
+ assert_not_include([1, 2, 3], 2)
1789
+ end
1790
+ end
1791
+
1792
+ def test_fail_with_message
1793
+ check_fail("message.\n" +
1794
+ "<[1, 2, 3]> expected to not include\n" +
1795
+ "<2>.") do
1796
+ assert_not_include([1, 2, 3], 2, "message")
1797
+ end
1798
+ end
1799
+
1800
+ def test_fail_because_not_collection_like_object
1801
+ object = Object.new
1802
+ inspected_object = AssertionMessage.convert(object)
1803
+ check_fail("The collection must respond to :include?.\n" +
1804
+ "<#{inspected_object}>.respond_to?(:include?) expected\n" +
1805
+ "(Class: <Object>)") do
1806
+ assert_not_include(object, 1)
1807
+ end
1808
+ end
1809
+ end
1810
+
1811
+ class TestAssertEmpty < Test::Unit::TestCase
1812
+ include AssertionCheckable
1813
+
1814
+ def test_pass
1815
+ check_nothing_fails do
1816
+ assert_empty([])
1817
+ end
1818
+ end
1819
+
1820
+ def test_pass_with_message
1821
+ check_nothing_fails do
1822
+ assert_empty([], "message")
1823
+ end
1824
+ end
1825
+
1826
+ def test_fail
1827
+ check_fail("<[1]> expected to be empty.") do
1828
+ assert_empty([1])
1829
+ end
1830
+ end
1831
+
1832
+ def test_fail_with_message
1833
+ check_fail("message.\n" +
1834
+ "<[1]> expected to be empty.") do
1835
+ assert_empty([1], "message")
1836
+ end
1837
+ end
1838
+
1839
+ def test_fail_because_no_empty_method
1840
+ object = Object.new
1841
+ inspected_object = AssertionMessage.convert(object)
1842
+ check_fail("The object must respond to :empty?.\n" +
1843
+ "<#{inspected_object}>.respond_to?(:empty?) expected\n" +
1844
+ "(Class: <Object>)") do
1845
+ assert_empty(object)
1846
+ end
1847
+ end
1848
+ end
1849
+
1850
+ class TestAssertNotEmpty < Test::Unit::TestCase
1851
+ include AssertionCheckable
1852
+
1853
+ def test_pass
1854
+ check_nothing_fails do
1855
+ assert_not_empty([1])
1856
+ end
1857
+ end
1858
+
1859
+ def test_pass_with_message
1860
+ check_nothing_fails do
1861
+ assert_not_empty([1], "message")
1862
+ end
1863
+ end
1864
+
1865
+ def test_fail
1866
+ check_fail("<[]> expected to not be empty.") do
1867
+ assert_not_empty([])
1868
+ end
1869
+ end
1870
+
1871
+ def test_fail_with_message
1872
+ check_fail("message.\n" +
1873
+ "<[]> expected to not be empty.") do
1874
+ assert_not_empty([], "message")
1875
+ end
1876
+ end
1877
+
1878
+ def test_fail_because_no_empty_method
1879
+ object = Object.new
1880
+ inspected_object = AssertionMessage.convert(object)
1881
+ check_fail("The object must respond to :empty?.\n" +
1882
+ "<#{inspected_object}>.respond_to?(:empty?) expected\n" +
1883
+ "(Class: <Object>)") do
1884
+ assert_not_empty(object)
1885
+ end
1886
+ end
1887
+ end
1888
+
1889
+ class TestAssertNotSend < Test::Unit::TestCase
1890
+ include AssertionCheckable
1891
+
1892
+ def test_pass
1893
+ check_nothing_fails do
1894
+ assert_not_send([[1, 2], :member?, 4], "message")
1895
+ end
1896
+ end
1897
+
1898
+ def test_fail
1899
+ expected_message = <<-EOM
1900
+ message.
1901
+ <[1, 2]> expected to respond to
1902
+ <member?(*[2])> with not a true value but was
1903
+ <true>.
1904
+ EOM
1905
+ check_fail(expected_message.chomp) do
1906
+ assert_not_send([[1, 2], :member?, 2], "message")
1907
+ end
1908
+ end
1909
+ end
1910
+
1911
+ class TestTemplate < Test::Unit::TestCase
1912
+ def test_incompatible_encoding_by_diff
1913
+ need_encoding
1914
+ assert_raise(AssertionFailedError) do
1915
+ assert_equal("UTF-8の日本語\n" * 3,
1916
+ ("Shift_JISの日本語\n" * 3).force_encoding("ASCII-8BIT"))
1917
+ end
1918
+ end
1919
+
1920
+ private
1921
+ def need_encoding
1922
+ omit("need Encoding") unless Object.const_defined?(:Encoding)
1923
+ end
1924
+ end
1925
+ end
1926
+ end