has_finder 0.1.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 (432) hide show
  1. data/History.txt +4 -0
  2. data/License.txt +20 -0
  3. data/Manifest.txt +431 -0
  4. data/README.txt +1 -0
  5. data/Rakefile +4 -0
  6. data/config/hoe.rb +70 -0
  7. data/config/requirements.rb +17 -0
  8. data/lib/has_finder.rb +1 -0
  9. data/lib/has_finder/has_finder.rb +84 -0
  10. data/lib/has_finder/metaid.rb +15 -0
  11. data/lib/has_finder/version.rb +9 -0
  12. data/log/debug.log +0 -0
  13. data/nbproject/private/private.xml +4 -0
  14. data/nbproject/private/rake-t.txt +1 -0
  15. data/nbproject/project.properties +4 -0
  16. data/nbproject/project.xml +15 -0
  17. data/script/destroy +14 -0
  18. data/script/generate +14 -0
  19. data/setup.rb +1585 -0
  20. data/spec/rails/README +182 -0
  21. data/spec/rails/Rakefile +10 -0
  22. data/spec/rails/app/controllers/application.rb +7 -0
  23. data/spec/rails/app/helpers/application_helper.rb +3 -0
  24. data/spec/rails/app/models/being.rb +3 -0
  25. data/spec/rails/config/boot.rb +45 -0
  26. data/spec/rails/config/database.yml +36 -0
  27. data/spec/rails/config/environment.rb +62 -0
  28. data/spec/rails/config/environments/development.rb +21 -0
  29. data/spec/rails/config/environments/production.rb +18 -0
  30. data/spec/rails/config/environments/test.rb +19 -0
  31. data/spec/rails/config/routes.rb +23 -0
  32. data/spec/rails/db/migrate/001_create_beings.rb +12 -0
  33. data/spec/rails/db/schema.rb +17 -0
  34. data/spec/rails/doc/README_FOR_APP +2 -0
  35. data/spec/rails/log/development.log +432 -0
  36. data/spec/rails/log/production.log +0 -0
  37. data/spec/rails/log/server.log +0 -0
  38. data/spec/rails/log/test.log +5820 -0
  39. data/spec/rails/nbproject/private/config.properties +0 -0
  40. data/spec/rails/nbproject/private/private.properties +1 -0
  41. data/spec/rails/nbproject/private/rake-t.txt +54 -0
  42. data/spec/rails/nbproject/project.properties +4 -0
  43. data/spec/rails/nbproject/project.xml +9 -0
  44. data/spec/rails/previous_failures.txt +0 -0
  45. data/spec/rails/public/404.html +30 -0
  46. data/spec/rails/public/500.html +30 -0
  47. data/spec/rails/public/dispatch.cgi +10 -0
  48. data/spec/rails/public/dispatch.fcgi +24 -0
  49. data/spec/rails/public/dispatch.rb +10 -0
  50. data/spec/rails/public/favicon.ico +0 -0
  51. data/spec/rails/public/images/rails.png +0 -0
  52. data/spec/rails/public/index.html +277 -0
  53. data/spec/rails/public/javascripts/application.js +2 -0
  54. data/spec/rails/public/javascripts/controls.js +833 -0
  55. data/spec/rails/public/javascripts/dragdrop.js +942 -0
  56. data/spec/rails/public/javascripts/effects.js +1088 -0
  57. data/spec/rails/public/javascripts/prototype.js +2515 -0
  58. data/spec/rails/public/robots.txt +1 -0
  59. data/spec/rails/script/about +3 -0
  60. data/spec/rails/script/breakpointer +3 -0
  61. data/spec/rails/script/console +3 -0
  62. data/spec/rails/script/destroy +3 -0
  63. data/spec/rails/script/generate +3 -0
  64. data/spec/rails/script/performance/benchmarker +3 -0
  65. data/spec/rails/script/performance/profiler +3 -0
  66. data/spec/rails/script/plugin +3 -0
  67. data/spec/rails/script/process/inspector +3 -0
  68. data/spec/rails/script/process/reaper +3 -0
  69. data/spec/rails/script/process/spawner +3 -0
  70. data/spec/rails/script/runner +3 -0
  71. data/spec/rails/script/server +3 -0
  72. data/spec/rails/script/spec +4 -0
  73. data/spec/rails/script/spec_server +45 -0
  74. data/spec/rails/spec/fixtures/beings.yml +12 -0
  75. data/spec/rails/spec/models/being_spec.rb +98 -0
  76. data/spec/rails/spec/spec.opts +6 -0
  77. data/spec/rails/spec/spec_helper.rb +15 -0
  78. data/spec/rails/test/test_helper.rb +28 -0
  79. data/spec/rails/tmp/sessions/ruby_sess.5edc9bf3b65456d0 +0 -0
  80. data/spec/rails/vendor/plugins/rspec/CHANGES +797 -0
  81. data/spec/rails/vendor/plugins/rspec/MIT-LICENSE +20 -0
  82. data/spec/rails/vendor/plugins/rspec/README +70 -0
  83. data/spec/rails/vendor/plugins/rspec/Rakefile +304 -0
  84. data/spec/rails/vendor/plugins/rspec/UPGRADE +31 -0
  85. data/spec/rails/vendor/plugins/rspec/bin/spec +3 -0
  86. data/spec/rails/vendor/plugins/rspec/bin/spec_translator +8 -0
  87. data/spec/rails/vendor/plugins/rspec/examples/auto_spec_description_example.rb +19 -0
  88. data/spec/rails/vendor/plugins/rspec/examples/before_and_after_example.rb +39 -0
  89. data/spec/rails/vendor/plugins/rspec/examples/behave_as_example.rb +45 -0
  90. data/spec/rails/vendor/plugins/rspec/examples/custom_expectation_matchers.rb +54 -0
  91. data/spec/rails/vendor/plugins/rspec/examples/custom_formatter.rb +11 -0
  92. data/spec/rails/vendor/plugins/rspec/examples/dynamic_spec.rb +9 -0
  93. data/spec/rails/vendor/plugins/rspec/examples/file_accessor.rb +18 -0
  94. data/spec/rails/vendor/plugins/rspec/examples/file_accessor_spec.rb +38 -0
  95. data/spec/rails/vendor/plugins/rspec/examples/greeter_spec.rb +30 -0
  96. data/spec/rails/vendor/plugins/rspec/examples/helper_method_example.rb +11 -0
  97. data/spec/rails/vendor/plugins/rspec/examples/io_processor.rb +8 -0
  98. data/spec/rails/vendor/plugins/rspec/examples/io_processor_spec.rb +21 -0
  99. data/spec/rails/vendor/plugins/rspec/examples/legacy_spec.rb +10 -0
  100. data/spec/rails/vendor/plugins/rspec/examples/mocking_example.rb +27 -0
  101. data/spec/rails/vendor/plugins/rspec/examples/multi_threaded_behaviour_runner.rb +25 -0
  102. data/spec/rails/vendor/plugins/rspec/examples/not_yet_implemented_spec.rb +12 -0
  103. data/spec/rails/vendor/plugins/rspec/examples/partial_mock_example.rb +28 -0
  104. data/spec/rails/vendor/plugins/rspec/examples/predicate_example.rb +27 -0
  105. data/spec/rails/vendor/plugins/rspec/examples/priority.txt +1 -0
  106. data/spec/rails/vendor/plugins/rspec/examples/shared_behaviours_example.rb +39 -0
  107. data/spec/rails/vendor/plugins/rspec/examples/spec_helper.rb +1 -0
  108. data/spec/rails/vendor/plugins/rspec/examples/stack.rb +36 -0
  109. data/spec/rails/vendor/plugins/rspec/examples/stack_spec.rb +97 -0
  110. data/spec/rails/vendor/plugins/rspec/examples/stubbing_example.rb +69 -0
  111. data/spec/rails/vendor/plugins/rspec/examples/test_case_adapter_example.rb +26 -0
  112. data/spec/rails/vendor/plugins/rspec/examples/test_case_spec.rb +65 -0
  113. data/spec/rails/vendor/plugins/rspec/failing_examples/diffing_spec.rb +36 -0
  114. data/spec/rails/vendor/plugins/rspec/failing_examples/failure_in_setup.rb +10 -0
  115. data/spec/rails/vendor/plugins/rspec/failing_examples/failure_in_teardown.rb +10 -0
  116. data/spec/rails/vendor/plugins/rspec/failing_examples/mocking_example.rb +33 -0
  117. data/spec/rails/vendor/plugins/rspec/failing_examples/mocking_with_flexmock.rb +26 -0
  118. data/spec/rails/vendor/plugins/rspec/failing_examples/mocking_with_mocha.rb +25 -0
  119. data/spec/rails/vendor/plugins/rspec/failing_examples/partial_mock_example.rb +20 -0
  120. data/spec/rails/vendor/plugins/rspec/failing_examples/predicate_example.rb +29 -0
  121. data/spec/rails/vendor/plugins/rspec/failing_examples/raising_example.rb +47 -0
  122. data/spec/rails/vendor/plugins/rspec/failing_examples/spec_helper.rb +1 -0
  123. data/spec/rails/vendor/plugins/rspec/failing_examples/syntax_error_example.rb +7 -0
  124. data/spec/rails/vendor/plugins/rspec/failing_examples/team_spec.rb +46 -0
  125. data/spec/rails/vendor/plugins/rspec/failing_examples/timeout_behaviour.rb +7 -0
  126. data/spec/rails/vendor/plugins/rspec/init.rb +3 -0
  127. data/spec/rails/vendor/plugins/rspec/lib/autotest/discover.rb +3 -0
  128. data/spec/rails/vendor/plugins/rspec/lib/autotest/rspec.rb +67 -0
  129. data/spec/rails/vendor/plugins/rspec/lib/spec.rb +13 -0
  130. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl.rb +10 -0
  131. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour.rb +210 -0
  132. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour_callbacks.rb +78 -0
  133. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour_eval.rb +220 -0
  134. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour_factory.rb +42 -0
  135. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/composite_proc_builder.rb +28 -0
  136. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/configuration.rb +119 -0
  137. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/description.rb +69 -0
  138. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/example.rb +127 -0
  139. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/example_matcher.rb +40 -0
  140. data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/example_should_raise_handler.rb +74 -0
  141. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations.rb +56 -0
  142. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/differs/default.rb +61 -0
  143. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/errors.rb +6 -0
  144. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/extensions.rb +2 -0
  145. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/extensions/object.rb +66 -0
  146. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
  147. data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/handler.rb +43 -0
  148. data/spec/rails/vendor/plugins/rspec/lib/spec/extensions.rb +1 -0
  149. data/spec/rails/vendor/plugins/rspec/lib/spec/extensions/object.rb +6 -0
  150. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers.rb +166 -0
  151. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/be.rb +206 -0
  152. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/be_close.rb +37 -0
  153. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/change.rb +120 -0
  154. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/eql.rb +43 -0
  155. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/equal.rb +43 -0
  156. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/has.rb +44 -0
  157. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/have.rb +145 -0
  158. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/include.rb +70 -0
  159. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/match.rb +41 -0
  160. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/operator_matcher.rb +72 -0
  161. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/raise_error.rb +100 -0
  162. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/respond_to.rb +45 -0
  163. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/satisfy.rb +47 -0
  164. data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/throw_symbol.rb +72 -0
  165. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks.rb +208 -0
  166. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/argument_constraint_matchers.rb +27 -0
  167. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/argument_expectation.rb +183 -0
  168. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/error_generator.rb +84 -0
  169. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/errors.rb +10 -0
  170. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/extensions/object.rb +3 -0
  171. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/message_expectation.rb +231 -0
  172. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/methods.rb +35 -0
  173. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/mock.rb +29 -0
  174. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/order_group.rb +29 -0
  175. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/proxy.rb +163 -0
  176. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/space.rb +28 -0
  177. data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/spec_methods.rb +30 -0
  178. data/spec/rails/vendor/plugins/rspec/lib/spec/rake/spectask.rb +175 -0
  179. data/spec/rails/vendor/plugins/rspec/lib/spec/rake/verify_rcov.rb +52 -0
  180. data/spec/rails/vendor/plugins/rspec/lib/spec/runner.rb +165 -0
  181. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/backtrace_tweaker.rb +56 -0
  182. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb +102 -0
  183. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/command_line.rb +22 -0
  184. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/drb_command_line.rb +21 -0
  185. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/extensions/kernel.rb +50 -0
  186. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/extensions/object.rb +32 -0
  187. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter.rb +9 -0
  188. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/base_formatter.rb +68 -0
  189. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/base_text_formatter.rb +102 -0
  190. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/failing_behaviours_formatter.rb +25 -0
  191. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/failing_examples_formatter.rb +22 -0
  192. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/html_formatter.rb +316 -0
  193. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/progress_bar_formatter.rb +30 -0
  194. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/rdoc_formatter.rb +24 -0
  195. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
  196. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/specdoc_formatter.rb +28 -0
  197. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/heckle_runner.rb +72 -0
  198. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/heckle_runner_unsupported.rb +10 -0
  199. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/option_parser.rb +226 -0
  200. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/options.rb +158 -0
  201. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/reporter.rb +114 -0
  202. data/spec/rails/vendor/plugins/rspec/lib/spec/runner/spec_parser.rb +50 -0
  203. data/spec/rails/vendor/plugins/rspec/lib/spec/test_case_adapter.rb +10 -0
  204. data/spec/rails/vendor/plugins/rspec/lib/spec/translator.rb +106 -0
  205. data/spec/rails/vendor/plugins/rspec/lib/spec/version.rb +22 -0
  206. data/spec/rails/vendor/plugins/rspec/plugins/mock_frameworks/flexmock.rb +27 -0
  207. data/spec/rails/vendor/plugins/rspec/plugins/mock_frameworks/mocha.rb +21 -0
  208. data/spec/rails/vendor/plugins/rspec/plugins/mock_frameworks/rspec.rb +18 -0
  209. data/spec/rails/vendor/plugins/rspec/rake_tasks/examples.rake +7 -0
  210. data/spec/rails/vendor/plugins/rspec/rake_tasks/examples_specdoc.rake +9 -0
  211. data/spec/rails/vendor/plugins/rspec/rake_tasks/examples_with_rcov.rake +9 -0
  212. data/spec/rails/vendor/plugins/rspec/rake_tasks/failing_examples_with_html.rake +9 -0
  213. data/spec/rails/vendor/plugins/rspec/rake_tasks/verify_rcov.rake +7 -0
  214. data/spec/rails/vendor/plugins/rspec/spec.opts +13 -0
  215. data/spec/rails/vendor/plugins/rspec/spec/README.jruby +14 -0
  216. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/behaviour_eval_spec.rb +49 -0
  217. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/behaviour_factory_spec.rb +30 -0
  218. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/behaviour_spec.rb +624 -0
  219. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/composite_proc_builder_spec.rb +57 -0
  220. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/configuration_spec.rb +50 -0
  221. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/description_spec.rb +81 -0
  222. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/example_class_spec.rb +24 -0
  223. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/example_instance_spec.rb +162 -0
  224. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/example_should_raise_spec.rb +137 -0
  225. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/predicate_matcher_spec.rb +21 -0
  226. data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/shared_behaviour_spec.rb +228 -0
  227. data/spec/rails/vendor/plugins/rspec/spec/spec/expectations/differs/default_spec.rb +107 -0
  228. data/spec/rails/vendor/plugins/rspec/spec/spec/expectations/extensions/object_spec.rb +46 -0
  229. data/spec/rails/vendor/plugins/rspec/spec/spec/expectations/fail_with_spec.rb +71 -0
  230. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/be_close_spec.rb +39 -0
  231. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/be_spec.rb +209 -0
  232. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/change_spec.rb +232 -0
  233. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/description_generation_spec.rb +159 -0
  234. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/eql_spec.rb +28 -0
  235. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/equal_spec.rb +28 -0
  236. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/exist_spec.rb +48 -0
  237. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/handler_spec.rb +88 -0
  238. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/has_spec.rb +37 -0
  239. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/have_spec.rb +272 -0
  240. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/include_spec.rb +45 -0
  241. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/match_spec.rb +37 -0
  242. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/matcher_methods_spec.rb +78 -0
  243. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/mock_constraint_matchers_spec.rb +24 -0
  244. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/operator_matcher_spec.rb +158 -0
  245. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/raise_error_spec.rb +147 -0
  246. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/respond_to_spec.rb +54 -0
  247. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/satisfy_spec.rb +36 -0
  248. data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/throw_symbol_spec.rb +51 -0
  249. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/any_number_of_times_spec.rb +29 -0
  250. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/argument_expectation_spec.rb +19 -0
  251. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/at_least_spec.rb +97 -0
  252. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/at_most_spec.rb +93 -0
  253. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
  254. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_7611_spec.rb +19 -0
  255. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_7805_spec.rb +22 -0
  256. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_8165_spec.rb +31 -0
  257. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_8302_spec.rb +26 -0
  258. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +114 -0
  259. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/mock_ordering_spec.rb +84 -0
  260. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/mock_space_spec.rb +54 -0
  261. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/mock_spec.rb +377 -0
  262. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/multiple_return_value_spec.rb +113 -0
  263. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/null_object_mock_spec.rb +40 -0
  264. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/once_counts_spec.rb +53 -0
  265. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/options_hash_spec.rb +33 -0
  266. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/partial_mock_spec.rb +52 -0
  267. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +66 -0
  268. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +148 -0
  269. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/precise_counts_spec.rb +52 -0
  270. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/record_messages_spec.rb +26 -0
  271. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/stub_spec.rb +159 -0
  272. data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/twice_counts_spec.rb +67 -0
  273. data/spec/rails/vendor/plugins/rspec/spec/spec/package/bin_spec_spec.rb +12 -0
  274. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/behaviour_runner_spec.rb +206 -0
  275. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/command_line_spec.rb +33 -0
  276. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/context_matching_spec.rb +27 -0
  277. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/drb_command_line_spec.rb +81 -0
  278. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/empty_file.txt +0 -0
  279. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/example_matcher_spec.rb +127 -0
  280. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/examples.txt +2 -0
  281. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/execution_context_spec.rb +31 -0
  282. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/extensions/kernel_spec.rb +36 -0
  283. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/failed.txt +3 -0
  284. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/failing_behaviours_formatter_spec.rb +27 -0
  285. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +28 -0
  286. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.4.html +333 -0
  287. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +344 -0
  288. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5.html +338 -0
  289. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6.html +338 -0
  290. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatter_spec.rb +56 -0
  291. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_dry_run_spec.rb +21 -0
  292. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_failure_dump_spec.rb +36 -0
  293. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +78 -0
  294. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_dry_run_spec.rb +19 -0
  295. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_spec.rb +46 -0
  296. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/snippet_extractor_spec.rb +11 -0
  297. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_dry_run_spec.rb +21 -0
  298. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_spec.rb +56 -0
  299. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/heckle_runner_spec.rb +63 -0
  300. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/heckler_spec.rb +14 -0
  301. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +45 -0
  302. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/object_ext_spec.rb +11 -0
  303. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/option_parser_spec.rb +348 -0
  304. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/options_spec.rb +142 -0
  305. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +56 -0
  306. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/reporter_spec.rb +153 -0
  307. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/spec.opts +2 -0
  308. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/spec_parser_spec.rb +93 -0
  309. data/spec/rails/vendor/plugins/rspec/spec/spec/runner/spec_spaced.opts +2 -0
  310. data/spec/rails/vendor/plugins/rspec/spec/spec/spec_classes.rb +111 -0
  311. data/spec/rails/vendor/plugins/rspec/spec/spec/translator_spec.rb +216 -0
  312. data/spec/rails/vendor/plugins/rspec/spec/spec_helper.rb +43 -0
  313. data/spec/rails/vendor/plugins/rspec_on_rails/MIT-LICENSE +31 -0
  314. data/spec/rails/vendor/plugins/rspec_on_rails/README +1 -0
  315. data/spec/rails/vendor/plugins/rspec_on_rails/Rakefile +9 -0
  316. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/CHANGES +1 -0
  317. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/rspec_generator.rb +31 -0
  318. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/previous_failures.txt +0 -0
  319. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec +4 -0
  320. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec_server +45 -0
  321. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec.opts +6 -0
  322. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec_helper.rb +26 -0
  323. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/USAGE +33 -0
  324. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/rspec_controller_generator.rb +42 -0
  325. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/controller_spec.rb +23 -0
  326. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/helper_spec.rb +11 -0
  327. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/view_spec.rb +12 -0
  328. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_model/USAGE +18 -0
  329. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_model/rspec_model_generator.rb +30 -0
  330. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_model/templates/model_spec.rb +11 -0
  331. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +161 -0
  332. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/controller_spec.rb +303 -0
  333. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/edit_erb_spec.rb +25 -0
  334. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/helper_spec.rb +4 -0
  335. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/index_erb_spec.rb +22 -0
  336. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/new_erb_spec.rb +26 -0
  337. data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/show_erb_spec.rb +22 -0
  338. data/spec/rails/vendor/plugins/rspec_on_rails/init.rb +9 -0
  339. data/spec/rails/vendor/plugins/rspec_on_rails/lib/autotest/rails_rspec.rb +81 -0
  340. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/dsl.rb +2 -0
  341. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/dsl/configuration.rb +23 -0
  342. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/matchers.rb +3 -0
  343. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/matchers/have.rb +12 -0
  344. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails.rb +57 -0
  345. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl.rb +40 -0
  346. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/assigns_hash_proxy.rb +42 -0
  347. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour.rb +8 -0
  348. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/base.rb +82 -0
  349. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/controller.rb +246 -0
  350. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/functional.rb +90 -0
  351. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/helper.rb +100 -0
  352. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/model.rb +21 -0
  353. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/view.rb +185 -0
  354. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/ivar_proxy.rb +62 -0
  355. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions.rb +7 -0
  356. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/base.rb +11 -0
  357. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/rescue.rb +10 -0
  358. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/test_response.rb +5 -0
  359. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_view/base.rb +26 -0
  360. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb +29 -0
  361. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/object.rb +5 -0
  362. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers.rb +29 -0
  363. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/assert_select.rb +131 -0
  364. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/have_text.rb +55 -0
  365. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/redirect_to.rb +106 -0
  366. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/render_template.rb +63 -0
  367. data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/version.rb +26 -0
  368. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/assigns_hash_proxy_spec.rb +55 -0
  369. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/behaviour_factory_spec.rb +53 -0
  370. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/controller_isolation_spec.rb +43 -0
  371. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/controller_spec_spec.rb +124 -0
  372. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/helper_spec_spec.rb +62 -0
  373. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/ivar_proxy_spec.rb +64 -0
  374. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/model_spec_spec.rb +14 -0
  375. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/shared_behaviour_spec.rb +16 -0
  376. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/test_unit_assertion_accessibility_spec.rb +28 -0
  377. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/view_spec_spec.rb +165 -0
  378. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/extensions/active_record_spec.rb +17 -0
  379. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/assert_select_spec.rb +718 -0
  380. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/description_generation_spec.rb +42 -0
  381. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/redirect_to_spec.rb +183 -0
  382. data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/render_spec.rb +112 -0
  383. data/spec/rails/vendor/plugins/rspec_on_rails/spec/spec_helper.rb +40 -0
  384. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/controller_spec_controller.rb +36 -0
  385. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/redirect_spec_controller.rb +59 -0
  386. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/render_spec_controller.rb +18 -0
  387. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/rjs_spec_controller.rb +58 -0
  388. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/explicit_helper.rb +10 -0
  389. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/more_explicit_helper.rb +5 -0
  390. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/plugin_application_helper.rb +6 -0
  391. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/view_spec_helper.rb +13 -0
  392. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/_a_partial.rhtml +0 -0
  393. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_after_session_reset.rhtml +1 -0
  394. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_before_session_reset.rhtml +1 -0
  395. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_the_assigns_hash.rhtml +0 -0
  396. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_errors_in_template.rhtml +1 -0
  397. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_template.rhtml +1 -0
  398. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/_a_partial.rhtml +0 -0
  399. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.js.rjs +1 -0
  400. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rhtml +0 -0
  401. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rjs +1 -0
  402. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/_replacement_partial.rhtml +1 -0
  403. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_div.rjs +1 -0
  404. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_page_element.rjs +1 -0
  405. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/insert_html.rjs +1 -0
  406. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace.rjs +1 -0
  407. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html.rjs +1 -0
  408. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html_with_partial.rjs +1 -0
  409. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_effect.rjs +1 -0
  410. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_toggle_effect.rjs +1 -0
  411. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/no_tags.rhtml +1 -0
  412. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_no_attributes.rhtml +1 -0
  413. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_one_attribute.rhtml +1 -0
  414. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_included_partial.rhtml +2 -0
  415. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_included_partial_collection_with_spacer_template.rhtml +1 -0
  416. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_local_variable.rhtml +1 -0
  417. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_spacer.rhtml +1 -0
  418. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/accessor.rhtml +3 -0
  419. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/entry_form.rhtml +2 -0
  420. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/explicit_helper.rhtml +2 -0
  421. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/multiple_helpers.rhtml +3 -0
  422. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/partial_collection_including_template.rhtml +2 -0
  423. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/partial_including_template.rhtml +2 -0
  424. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/partial_with_array.rhtml +1 -0
  425. data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/show.rhtml +2 -0
  426. data/spec/rails/vendor/plugins/rspec_on_rails/tasks/rspec.rake +90 -0
  427. data/tasks/deployment.rake +27 -0
  428. data/tasks/environment.rake +7 -0
  429. data/tasks/website.rake +9 -0
  430. data/test/test_has_finder.rb +11 -0
  431. data/test/test_helper.rb +2 -0
  432. metadata +490 -0
@@ -0,0 +1,57 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ module Spec
4
+ module DSL
5
+ describe CompositeProcBuilder do
6
+ before(:each) do
7
+ @klass = Class.new do
8
+ attr_reader :an_attribute
9
+
10
+ def an_attribute_setter
11
+ @an_attribute = :the_value
12
+ end
13
+ end
14
+
15
+ @parent = @klass.new
16
+ @builder = CompositeProcBuilder.new {}
17
+ end
18
+
19
+ it "calls all of its child procs" do
20
+ @builder << proc {:proc1}
21
+ @builder << proc {:proc2}
22
+ @builder.proc.call.should == [:proc1, :proc2]
23
+ end
24
+
25
+ it "calls block on exceptions" do
26
+ exception1 = Exception.new("Proc1 Error")
27
+ exception2 = Exception.new("Proc2 Error")
28
+ @builder << proc {raise exception1}
29
+ @builder << proc {raise exception2}
30
+ @builder << proc {:successful}
31
+
32
+ errors = []
33
+ @builder.proc {|e| errors << e }.call.should == [exception1, exception2, :successful]
34
+
35
+ errors.should == [exception1, exception2]
36
+ end
37
+
38
+ it "evals procs in the caller's instance" do
39
+ the_proc = proc do
40
+ @an_attribute = :the_value
41
+ end
42
+ the_proc.class.should == Proc
43
+ @builder << the_proc
44
+ @parent.instance_eval &@builder.proc
45
+ @parent.an_attribute.should == :the_value
46
+ end
47
+
48
+ it "binds unbound methods to the parent" do
49
+ unbound_method = @klass.instance_method(:an_attribute_setter)
50
+ unbound_method.class.should == UnboundMethod
51
+ @builder << unbound_method
52
+ @parent.instance_eval &@builder.proc
53
+ @parent.an_attribute.should == :the_value
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,50 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module DSL
5
+ describe Configuration do
6
+ before(:each) do
7
+ @config = Configuration.new
8
+ @behaviour = mock("behaviour")
9
+ end
10
+
11
+ it "should default mock framework to rspec" do
12
+ @config.mock_framework.should =~ /\/plugins\/mock_frameworks\/rspec$/
13
+ end
14
+
15
+ it "should let you set rspec mocking explicitly" do
16
+ @config.mock_with(:rspec)
17
+ @config.mock_framework.should =~ /\/plugins\/mock_frameworks\/rspec$/
18
+ end
19
+
20
+ it "should let you set mocha" do
21
+ @config.mock_with(:mocha)
22
+ @config.mock_framework.should =~ /\/plugins\/mock_frameworks\/mocha$/
23
+ end
24
+
25
+ it "should let you set flexmock" do
26
+ @config.mock_with(:flexmock)
27
+ @config.mock_framework.should =~ /\/plugins\/mock_frameworks\/flexmock$/
28
+ end
29
+
30
+ it "should let you set an arbitrary adapter module" do
31
+ adapter = Module.new
32
+ @config.mock_with(adapter)
33
+ @config.mock_framework.should == adapter
34
+ end
35
+
36
+ it "should let you define modules to be included" do
37
+ mod = Module.new
38
+ @config.include mod
39
+ @config.included_modules.should include(mod)
40
+ end
41
+
42
+ [:prepend_before, :append_before, :prepend_after, :append_after].each do |m|
43
+ it "should delegate ##{m} to Behaviour class" do
44
+ Behaviour.should_receive(m).with(:whatever)
45
+ @config.__send__(m, :whatever)
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,81 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper'
2
+
3
+ module Spec
4
+ module DSL
5
+ describe Description, " constructed with a single String" do
6
+ before(:each) {@description = Description.new("abc")}
7
+
8
+ it "should provide that string as its name" do
9
+ @description.description.should == "abc"
10
+ end
11
+ it "should provide nil as its type" do
12
+ @description.described_type.should be_nil
13
+ end
14
+ it "should respond to []" do
15
+ @description[:key].should be_nil
16
+ end
17
+ it "should respond to []=" do
18
+ @description[:key] = :value
19
+ @description[:key].should == :value
20
+ end
21
+ it "should return for == when value matches description" do
22
+ @description.should == "abc"
23
+ end
24
+ it "should return for == when value is other description that matches description" do
25
+ @description.should == Description.new("abc")
26
+ end
27
+ end
28
+
29
+ describe Description, " constructed with a Type" do
30
+ before(:each) {@description = Description.new(Behaviour)}
31
+
32
+ it "should provide a String representation of that type (fully qualified) as its name" do
33
+ @description.description.should == "Spec::DSL::Behaviour"
34
+ end
35
+ it "should provide that type (fully qualified) as its type" do
36
+ @description.described_type.should == Spec::DSL::Behaviour
37
+ end
38
+ end
39
+
40
+ describe Description, " constructed with a Type and a String" do
41
+ before(:each) {@description = Description.new(Behaviour, " behaving")}
42
+
43
+ it "should include the type and second String in its name" do
44
+ @description.description.should == "Spec::DSL::Behaviour behaving"
45
+ end
46
+ it "should provide that type (fully qualified) as its type" do
47
+ @description.described_type.should == Spec::DSL::Behaviour
48
+ end
49
+ end
50
+
51
+ describe Description, "constructed with a Type and a String not starting with a space" do
52
+ before(:each) {@description = Description.new(Behaviour, "behaving")}
53
+
54
+ it "should include the type and second String with a space in its name" do
55
+ @description.description.should == "Spec::DSL::Behaviour behaving"
56
+ end
57
+ end
58
+
59
+ describe Description, "constructed with a Type and a String starting with a ." do
60
+ before(:each) {@description = Description.new(Behaviour, ".behaving")}
61
+
62
+ it "should include the type and second String with a space in its name" do
63
+ @description.description.should == "Spec::DSL::Behaviour.behaving"
64
+ end
65
+ end
66
+
67
+ describe Description, "constructed with a Type and a String starting with a #" do
68
+ before(:each) {@description = Description.new(Behaviour, "#behaving")}
69
+
70
+ it "should include the type and second String with a space in its name" do
71
+ @description.description.should == "Spec::DSL::Behaviour#behaving"
72
+ end
73
+ end
74
+
75
+ describe Description, " constructed with options" do before(:each) {@description = Description.new(Behaviour, :a => "b")}
76
+ it "should provide its options" do
77
+ @description[:a].should == "b"
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,24 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module DSL
5
+ describe Example, " class" do
6
+
7
+ def run(example)
8
+ example.run(@reporter, nil, nil, nil, Object.new)
9
+ end
10
+
11
+ before do
12
+ @reporter = stub("reporter", :example_started => nil, :example_finished => nil)
13
+ @example_class = Example.dup
14
+ end
15
+
16
+ it "should report errors in example" do
17
+ error = Exception.new
18
+ @reporter.should_receive(:example_finished).with("example", error, "example", false)
19
+
20
+ run(@example_class.new("example") {raise(error)})
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,162 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module DSL
5
+ describe Example, " instance" do
6
+ # TODO - this should be
7
+ # predicate_matchers :is_a
8
+ def is_a(error)
9
+ be_is_a(error)
10
+ end
11
+
12
+ before do
13
+ @reporter = stub("reporter", :example_started => nil, :example_finished => nil)
14
+ end
15
+
16
+ it "should send reporter example_started" do
17
+ example=Example.new("example") {}
18
+ @reporter.should_receive(:example_started).with("example")
19
+ example.run(@reporter, nil, nil, false, nil)
20
+ end
21
+
22
+ it "should report its name for dry run" do
23
+ example=Example.new("example") {}
24
+ @reporter.should_receive(:example_finished).with("example")
25
+ example.run(@reporter, nil, nil, true, nil) #4th arg indicates dry run
26
+ end
27
+
28
+ it "should report success" do
29
+ example=Example.new("example") {}
30
+ @reporter.should_receive(:example_finished).with("example", nil, nil, false)
31
+ example.run(@reporter, nil, nil, nil, nil)
32
+ end
33
+
34
+ it "should report failure due to failure" do
35
+ example=Example.new("example") do
36
+ (2+2).should == 5
37
+ end
38
+ @reporter.should_receive(:example_finished).with("example", is_a(Spec::Expectations::ExpectationNotMetError), "example", false)
39
+ example.run(@reporter, nil, nil, nil, nil)
40
+ end
41
+
42
+ it "should report failure due to error" do
43
+ error=RuntimeError.new
44
+ example=Example.new("example") do
45
+ raise(error)
46
+ end
47
+ @reporter.should_receive(:example_finished).with("example", error, "example", false)
48
+ example.run(@reporter, nil, nil, nil, nil)
49
+ end
50
+
51
+ it "should run example in scope of supplied object" do
52
+ scope_class = Class.new
53
+ example=Example.new("should pass") do
54
+ self.instance_of?(Example).should == false
55
+ self.instance_of?(scope_class).should == true
56
+ end
57
+ @reporter.should_receive(:example_finished).with("should pass", nil, nil, false)
58
+ example.run(@reporter, nil, nil, nil, scope_class.new)
59
+ end
60
+
61
+ it "should not run example block if before_each fails" do
62
+ example_ran = false
63
+ example=Example.new("should pass") {example_ran = true}
64
+ before_each = lambda {raise "Setup error"}
65
+ example.run(@reporter, before_each, nil, nil, Object.new)
66
+ example_ran.should == false
67
+ end
68
+
69
+ it "should run after_each block if before_each fails" do
70
+ after_each_ran = false
71
+ example=Example.new("should pass") {}
72
+ before_each = lambda {raise "Setup error"}
73
+ after_each = lambda {after_each_ran = true}
74
+ example.run(@reporter, before_each, after_each, nil, Object.new)
75
+ after_each_ran.should == true
76
+ end
77
+
78
+ it "should run after_each block when example fails" do
79
+ example=Example.new("example") do
80
+ raise("in body")
81
+ end
82
+ after_each=lambda do
83
+ raise("in after_each")
84
+ end
85
+ @reporter.should_receive(:example_finished) do |example, error, location|
86
+ example.should eql("example")
87
+ location.should eql("example")
88
+ error.message.should eql("in body")
89
+ end
90
+ example.run(@reporter, nil, after_each, nil, nil)
91
+ end
92
+
93
+ it "should report failure location when in before_each" do
94
+ example=Example.new("example") {}
95
+ before_each=lambda { raise("in before_each") }
96
+ @reporter.should_receive(:example_finished) do |name, error, location|
97
+ name.should eql("example")
98
+ error.message.should eql("in before_each")
99
+ location.should eql("before(:each)")
100
+ end
101
+ example.run(@reporter, before_each, nil, nil, nil)
102
+ end
103
+
104
+ it "should report failure location when in after_each" do
105
+ example = Example.new("example") {}
106
+ after_each = lambda { raise("in after_each") }
107
+ @reporter.should_receive(:example_finished) do |name, error, location|
108
+ name.should eql("example")
109
+ error.message.should eql("in after_each")
110
+ location.should eql("after(:each)")
111
+ end
112
+ example.run(@reporter, nil, after_each, nil, nil)
113
+ end
114
+
115
+ it "should accept an options hash following the example name" do
116
+ example = Example.new("name", :key => 'value')
117
+ end
118
+
119
+ it "should report NO NAME when told to use generated description with --dry-run" do
120
+ example = Example.new(:__generate_description) {
121
+ 5.should == 5
122
+ }
123
+ @reporter.should_receive(:example_finished) do |desc, error, location|
124
+ desc.should == "NO NAME (Because of --dry-run)"
125
+ end
126
+ example.run(@reporter, lambda{}, lambda{}, true, Object.new)
127
+ end
128
+
129
+ it "should report NO NAME when told to use generated description with no expectations" do
130
+ example = Example.new(:__generate_description) {}
131
+ @reporter.should_receive(:example_finished) do |desc, error, location|
132
+ desc.should == "NO NAME (Because there were no expectations)"
133
+ end
134
+ example.run(@reporter, lambda{}, lambda{}, false, Object.new)
135
+ end
136
+
137
+ it "should report NO NAME when told to use generated description and matcher fails" do
138
+ example = Example.new(:__generate_description) do
139
+ 5.should "" # Has no matches? method..
140
+ end
141
+ @reporter.should_receive(:example_finished) do |desc, error, location|
142
+ desc.should == "NO NAME (Because of Error raised in matcher)"
143
+ end
144
+ example.run(@reporter, nil, nil, nil, Object.new)
145
+ end
146
+
147
+ it "should report generated description when told to and it is available" do
148
+ example = Example.new(:__generate_description) {
149
+ 5.should == 5
150
+ }
151
+ @reporter.should_receive(:example_finished).with("should == 5", anything(), anything(), false)
152
+ example.run(@reporter, nil, nil, nil, Object.new)
153
+ end
154
+
155
+ it "should unregister description_generated callback (lest a memory leak should build up)" do
156
+ example = Example.new("something")
157
+ Spec::Matchers.should_receive(:unregister_description_generated).with(is_a(Proc))
158
+ example.run(@reporter, nil, nil, nil, Object.new)
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,137 @@
1
+ require File.dirname(__FILE__) + '/../../spec_helper.rb'
2
+
3
+ module Spec
4
+ module DSL
5
+ describe Example, " declared with {:should_raise => ...}" do
6
+ before(:each) do
7
+ @reporter = mock("reporter")
8
+ @reporter.stub!(:example_started)
9
+ end
10
+
11
+ def verify_error(error, message=nil)
12
+ error.should be_an_instance_of(Spec::Expectations::ExpectationNotMetError)
13
+ unless message.nil?
14
+ return error.message.should =~ message if Regexp === message
15
+ return error.message.should == message
16
+ end
17
+ end
18
+
19
+ it "true} should pass when there is an ExpectationNotMetError" do
20
+ example = Spec::DSL:: Example.new("example", :should_raise => true) do
21
+ raise Spec::Expectations::ExpectationNotMetError
22
+ end
23
+ @reporter.should_receive(:example_finished) do |description, error|
24
+ error.should be_nil
25
+ end
26
+ example.run(@reporter, nil, nil, nil, nil)
27
+ end
28
+
29
+ it "true} should fail if nothing is raised" do
30
+ example = Spec::DSL:: Example.new("example", :should_raise => true) {}
31
+ @reporter.should_receive(:example_finished) do |example_name, error|
32
+ verify_error(error, /example block expected Exception but nothing was raised/)
33
+ end
34
+ example.run(@reporter, nil, nil, nil, nil)
35
+ end
36
+
37
+ it "NameError} should pass when there is a NameError" do
38
+ example = Spec::DSL:: Example.new("example", :should_raise => NameError) do
39
+ raise NameError
40
+ end
41
+ @reporter.should_receive(:example_finished) do |example_name, error|
42
+ error.should be_nil
43
+ end
44
+ example.run(@reporter, nil, nil, nil, nil)
45
+ end
46
+
47
+ it "NameError} should fail when there is no error" do
48
+ example = Spec::DSL:: Example.new("example", :should_raise => NameError) do
49
+ #do nothing
50
+ end
51
+ @reporter.should_receive(:example_finished) do |example_name, error|
52
+ verify_error(error,/example block expected NameError but nothing was raised/)
53
+ end
54
+ example.run(@reporter, nil, nil, nil, nil)
55
+ end
56
+
57
+ it "NameError} should fail when there is the wrong error" do
58
+ example = Spec::DSL:: Example.new("example", :should_raise => NameError) do
59
+ raise RuntimeError
60
+ end
61
+ @reporter.should_receive(:example_finished) do |example_name, error|
62
+ verify_error(error, /example block expected NameError but raised.+RuntimeError/)
63
+ end
64
+ example.run(@reporter, nil, nil, nil, nil)
65
+ end
66
+
67
+ it "[NameError]} should pass when there is a NameError" do
68
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError]) do
69
+ raise NameError
70
+ end
71
+ @reporter.should_receive(:example_finished) do |description, error|
72
+ error.should be_nil
73
+ end
74
+ example.run(@reporter, nil, nil, nil, nil)
75
+ end
76
+
77
+ it "[NameError]} should fail when there is no error" do
78
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError]) do
79
+ end
80
+ @reporter.should_receive(:example_finished) do |description, error|
81
+ verify_error(error, /example block expected NameError but nothing was raised/)
82
+ end
83
+ example.run(@reporter, nil, nil, nil, nil)
84
+ end
85
+
86
+ it "[NameError]} should fail when there is the wrong error" do
87
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError]) do
88
+ raise RuntimeError
89
+ end
90
+ @reporter.should_receive(:example_finished) do |description, error|
91
+ verify_error(error, /example block expected NameError but raised.+RuntimeError/)
92
+ end
93
+ example.run(@reporter, nil, nil, nil, nil)
94
+ end
95
+
96
+ it "[NameError, 'message'} should pass when there is a NameError with the right message" do
97
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError, 'expected']) do
98
+ raise NameError, 'expected'
99
+ end
100
+ @reporter.should_receive(:example_finished) do |description, error|
101
+ error.should be_nil
102
+ end
103
+ example.run(@reporter, nil, nil, nil, nil)
104
+ end
105
+
106
+ it "[NameError, 'message'} should pass when there is a NameError with a message matching a regex" do
107
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError, /xpec/]) do
108
+ raise NameError, 'expected'
109
+ end
110
+ @reporter.should_receive(:example_finished) do |description, error|
111
+ error.should be_nil
112
+ end
113
+ example.run(@reporter, nil, nil, nil, nil)
114
+ end
115
+
116
+ it "[NameError, 'message'} should fail when there is a NameError with the wrong message" do
117
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError, 'expected']) do
118
+ raise NameError, 'wrong message'
119
+ end
120
+ @reporter.should_receive(:example_finished) do |description, error|
121
+ verify_error(error, /example block expected #<NameError: expected> but raised #<NameError: wrong message>/)
122
+ end
123
+ example.run(@reporter, nil, nil, nil, nil)
124
+ end
125
+
126
+ it "[NameError, 'message'} should fail when there is a NameError with a message not matching regexp" do
127
+ example = Spec::DSL:: Example.new("spec", :should_raise => [NameError, /exp/]) do
128
+ raise NameError, 'wrong message'
129
+ end
130
+ @reporter.should_receive(:example_finished) do |description, error|
131
+ verify_error(error, /example block expected #<NameError: \(\?-mix:exp\)> but raised #<NameError: wrong message>/)
132
+ end
133
+ example.run(@reporter, nil, nil, nil, nil)
134
+ end
135
+ end
136
+ end
137
+ end