rspec 1.3.2 → 2.0.0.a2

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 (398) hide show
  1. data/.document +4 -6
  2. data/.gitignore +4 -14
  3. data/License.txt +1 -1
  4. data/README.markdown +46 -0
  5. data/Rakefile +26 -100
  6. data/lib/rspec.rb +4 -0
  7. data/lib/rspec/version.rb +14 -0
  8. data/rspec.gemspec +46 -19
  9. metadata +72 -673
  10. data/.autotest +0 -5
  11. data/Gemfile +0 -20
  12. data/History.rdoc +0 -1560
  13. data/README.rdoc +0 -44
  14. data/Ruby1.9.rdoc +0 -31
  15. data/TODO.txt +0 -17
  16. data/Upgrade.rdoc +0 -260
  17. data/bin/autospec +0 -4
  18. data/bin/spec +0 -5
  19. data/cucumber.yml +0 -5
  20. data/example_spec.rb +0 -4
  21. data/examples/failing/README.txt +0 -11
  22. data/examples/failing/diffing_spec.rb +0 -36
  23. data/examples/failing/failing_implicit_docstrings_example.rb +0 -17
  24. data/examples/failing/failure_in_after.rb +0 -10
  25. data/examples/failing/failure_in_before.rb +0 -10
  26. data/examples/failing/mocking_example.rb +0 -38
  27. data/examples/failing/mocking_with_flexmock.rb +0 -26
  28. data/examples/failing/mocking_with_mocha.rb +0 -25
  29. data/examples/failing/mocking_with_rr.rb +0 -27
  30. data/examples/failing/partial_mock_example.rb +0 -18
  31. data/examples/failing/pending_example.rb +0 -7
  32. data/examples/failing/predicate_example.rb +0 -32
  33. data/examples/failing/raising_example.rb +0 -47
  34. data/examples/failing/syntax_error_example.rb +0 -7
  35. data/examples/failing/team_spec.rb +0 -41
  36. data/examples/failing/timeout_behaviour.rb +0 -5
  37. data/examples/passing/custom_formatter.rb +0 -11
  38. data/examples/passing/custom_matchers.rb +0 -54
  39. data/examples/passing/dynamic_spec.rb +0 -7
  40. data/examples/passing/file_accessor.rb +0 -18
  41. data/examples/passing/file_accessor_spec.rb +0 -37
  42. data/examples/passing/filtered_formatter.rb +0 -17
  43. data/examples/passing/filtered_formatter_example.rb +0 -31
  44. data/examples/passing/greeter_spec.rb +0 -30
  45. data/examples/passing/helper_method_example.rb +0 -12
  46. data/examples/passing/implicit_docstrings_example.rb +0 -16
  47. data/examples/passing/io_processor.rb +0 -8
  48. data/examples/passing/io_processor_spec.rb +0 -20
  49. data/examples/passing/mocking_example.rb +0 -25
  50. data/examples/passing/multi_threaded_example_group_runner.rb +0 -26
  51. data/examples/passing/nested_classes_example.rb +0 -35
  52. data/examples/passing/options_example.rb +0 -29
  53. data/examples/passing/options_formatter.rb +0 -20
  54. data/examples/passing/partial_mock_example.rb +0 -27
  55. data/examples/passing/pending_example.rb +0 -18
  56. data/examples/passing/predicate_example.rb +0 -25
  57. data/examples/passing/shared_example_group_example.rb +0 -43
  58. data/examples/passing/shared_stack_examples.rb +0 -36
  59. data/examples/passing/simple_matcher_example.rb +0 -29
  60. data/examples/passing/stack.rb +0 -36
  61. data/examples/passing/stack_spec.rb +0 -63
  62. data/examples/passing/stack_spec_with_nested_example_groups.rb +0 -66
  63. data/examples/passing/stubbing_example.rb +0 -67
  64. data/examples/passing/yielding_example.rb +0 -31
  65. data/examples/ruby1.9.compatibility/access_to_constants_spec.rb +0 -85
  66. data/features-pending/cli/conditional_exclusion.feature +0 -39
  67. data/features-pending/heckle/heckle.feature +0 -56
  68. data/features/before_and_after_blocks/before_and_after_blocks.feature +0 -167
  69. data/features/command_line/line_number_option.feature +0 -56
  70. data/features/command_line/line_number_option_with_example_with_no_name.feature +0 -22
  71. data/features/example_groups/define_example_attribute.feature +0 -41
  72. data/features/example_groups/example_group_with_should_methods.feature +0 -29
  73. data/features/example_groups/implicit_docstrings.feature +0 -59
  74. data/features/example_groups/nested_groups.feature +0 -32
  75. data/features/expectations/customized_message.feature +0 -54
  76. data/features/expectations/expect_change.feature +0 -65
  77. data/features/expectations/expect_error.feature +0 -44
  78. data/features/extensions/custom_example_group.feature +0 -19
  79. data/features/formatters/custom_formatter.feature +0 -30
  80. data/features/formatters/nested_formatter.feature +0 -32
  81. data/features/interop/cucumber_stubs_dont_leak.feature +0 -11
  82. data/features/interop/examples_and_tests_together.feature +0 -84
  83. data/features/interop/rspec_output.feature +0 -25
  84. data/features/interop/test_but_not_test_unit.feature +0 -26
  85. data/features/interop/test_case_with_should_methods.feature +0 -46
  86. data/features/load_paths/add_lib_to_load_path.feature +0 -20
  87. data/features/load_paths/add_spec_to_load_path.feature +0 -20
  88. data/features/matchers/define_diffable_matcher.feature +0 -26
  89. data/features/matchers/define_matcher.feature +0 -179
  90. data/features/matchers/define_matcher_outside_rspec.feature +0 -37
  91. data/features/matchers/define_matcher_with_fluent_interface.feature +0 -48
  92. data/features/matchers/define_wrapped_matcher.feature +0 -56
  93. data/features/matchers/match_unless_raises.feature +0 -60
  94. data/features/matchers/match_unless_raises_unexpected_error.feature +0 -39
  95. data/features/mock_framework_integration/use_flexmock.feature +0 -27
  96. data/features/mock_framework_integration/use_mocha.feature +0 -27
  97. data/features/mock_framework_integration/use_rr.feature +0 -27
  98. data/features/mocks/block_local_expectations.feature +0 -62
  99. data/features/mocks/mix_stubs_and_mocks.feature +0 -22
  100. data/features/mocks/stub_implementation.feature +0 -26
  101. data/features/pending/pending_examples.feature +0 -81
  102. data/features/runner/specify_line_number.feature +0 -32
  103. data/features/spec_helper/spec_helper.feature +0 -25
  104. data/features/step_definitions/running_rspec_steps.rb +0 -52
  105. data/features/step_definitions/stubbing_steps.rb +0 -16
  106. data/features/subject/explicit_subject.feature +0 -31
  107. data/features/subject/implicit_subject.feature +0 -43
  108. data/features/support/env.rb +0 -83
  109. data/features/support/matchers/smart_match.rb +0 -31
  110. data/init.rb +0 -9
  111. data/lib/autotest/discover.rb +0 -3
  112. data/lib/autotest/rspec.rb +0 -54
  113. data/lib/spec.rb +0 -8
  114. data/lib/spec/adapters/mock_frameworks/flexmock.rb +0 -24
  115. data/lib/spec/adapters/mock_frameworks/mocha.rb +0 -25
  116. data/lib/spec/adapters/mock_frameworks/rr.rb +0 -22
  117. data/lib/spec/adapters/mock_frameworks/rspec.rb +0 -21
  118. data/lib/spec/autorun.rb +0 -3
  119. data/lib/spec/deprecation.rb +0 -41
  120. data/lib/spec/dsl.rb +0 -1
  121. data/lib/spec/dsl/main.rb +0 -93
  122. data/lib/spec/example.rb +0 -164
  123. data/lib/spec/example/args_and_options.rb +0 -27
  124. data/lib/spec/example/before_and_after_hooks.rb +0 -93
  125. data/lib/spec/example/errors.rb +0 -25
  126. data/lib/spec/example/example_group.rb +0 -10
  127. data/lib/spec/example/example_group_factory.rb +0 -82
  128. data/lib/spec/example/example_group_hierarchy.rb +0 -53
  129. data/lib/spec/example/example_group_methods.rb +0 -287
  130. data/lib/spec/example/example_group_proxy.rb +0 -61
  131. data/lib/spec/example/example_matcher.rb +0 -43
  132. data/lib/spec/example/example_methods.rb +0 -152
  133. data/lib/spec/example/example_proxy.rb +0 -41
  134. data/lib/spec/example/module_reopening_fix.rb +0 -43
  135. data/lib/spec/example/pending.rb +0 -18
  136. data/lib/spec/example/predicate_matchers.rb +0 -46
  137. data/lib/spec/example/shared_example_group.rb +0 -59
  138. data/lib/spec/example/subject.rb +0 -114
  139. data/lib/spec/expectations.rb +0 -35
  140. data/lib/spec/expectations/errors.rb +0 -12
  141. data/lib/spec/expectations/extensions.rb +0 -1
  142. data/lib/spec/expectations/extensions/kernel.rb +0 -52
  143. data/lib/spec/expectations/fail_with.rb +0 -45
  144. data/lib/spec/expectations/handler.rb +0 -50
  145. data/lib/spec/extensions/instance_exec.rb +0 -31
  146. data/lib/spec/interop/test.rb +0 -44
  147. data/lib/spec/interop/test/unit/autorunner.rb +0 -6
  148. data/lib/spec/interop/test/unit/testcase.rb +0 -56
  149. data/lib/spec/interop/test/unit/testresult.rb +0 -6
  150. data/lib/spec/interop/test/unit/testsuite_adapter.rb +0 -36
  151. data/lib/spec/interop/test/unit/ui/console/testrunner.rb +0 -61
  152. data/lib/spec/matchers.rb +0 -214
  153. data/lib/spec/matchers/be.rb +0 -249
  154. data/lib/spec/matchers/be_close.rb +0 -32
  155. data/lib/spec/matchers/be_instance_of.rb +0 -26
  156. data/lib/spec/matchers/be_kind_of.rb +0 -26
  157. data/lib/spec/matchers/change.rb +0 -151
  158. data/lib/spec/matchers/compatibility.rb +0 -14
  159. data/lib/spec/matchers/dsl.rb +0 -20
  160. data/lib/spec/matchers/eql.rb +0 -42
  161. data/lib/spec/matchers/equal.rb +0 -53
  162. data/lib/spec/matchers/errors.rb +0 -5
  163. data/lib/spec/matchers/exist.rb +0 -16
  164. data/lib/spec/matchers/generated_descriptions.rb +0 -36
  165. data/lib/spec/matchers/has.rb +0 -35
  166. data/lib/spec/matchers/have.rb +0 -152
  167. data/lib/spec/matchers/include.rb +0 -44
  168. data/lib/spec/matchers/match.rb +0 -21
  169. data/lib/spec/matchers/match_array.rb +0 -71
  170. data/lib/spec/matchers/matcher.rb +0 -132
  171. data/lib/spec/matchers/method_missing.rb +0 -9
  172. data/lib/spec/matchers/operator_matcher.rb +0 -83
  173. data/lib/spec/matchers/pretty.rb +0 -37
  174. data/lib/spec/matchers/raise_exception.rb +0 -131
  175. data/lib/spec/matchers/respond_to.rb +0 -71
  176. data/lib/spec/matchers/satisfy.rb +0 -47
  177. data/lib/spec/matchers/simple_matcher.rb +0 -134
  178. data/lib/spec/matchers/throw_symbol.rb +0 -100
  179. data/lib/spec/matchers/wrap_expectation.rb +0 -55
  180. data/lib/spec/mocks.rb +0 -200
  181. data/lib/spec/mocks/argument_expectation.rb +0 -51
  182. data/lib/spec/mocks/argument_matchers.rb +0 -237
  183. data/lib/spec/mocks/error_generator.rb +0 -92
  184. data/lib/spec/mocks/errors.rb +0 -10
  185. data/lib/spec/mocks/example_methods.rb +0 -69
  186. data/lib/spec/mocks/extensions.rb +0 -1
  187. data/lib/spec/mocks/extensions/object.rb +0 -3
  188. data/lib/spec/mocks/framework.rb +0 -15
  189. data/lib/spec/mocks/message_expectation.rb +0 -344
  190. data/lib/spec/mocks/methods.rb +0 -94
  191. data/lib/spec/mocks/mock.rb +0 -71
  192. data/lib/spec/mocks/order_group.rb +0 -29
  193. data/lib/spec/mocks/proxy.rb +0 -254
  194. data/lib/spec/mocks/space.rb +0 -28
  195. data/lib/spec/rake/spectask.rb +0 -230
  196. data/lib/spec/rake/verify_rcov.rb +0 -52
  197. data/lib/spec/ruby.rb +0 -9
  198. data/lib/spec/runner.rb +0 -66
  199. data/lib/spec/runner/backtrace_tweaker.rb +0 -78
  200. data/lib/spec/runner/class_and_arguments_parser.rb +0 -14
  201. data/lib/spec/runner/command_line.rb +0 -15
  202. data/lib/spec/runner/configuration.rb +0 -202
  203. data/lib/spec/runner/differs/default.rb +0 -93
  204. data/lib/spec/runner/differs/load-diff-lcs.rb +0 -12
  205. data/lib/spec/runner/drb_command_line.rb +0 -32
  206. data/lib/spec/runner/example_group_runner.rb +0 -58
  207. data/lib/spec/runner/extensions/kernel.rb +0 -9
  208. data/lib/spec/runner/formatter/base_formatter.rb +0 -139
  209. data/lib/spec/runner/formatter/base_text_formatter.rb +0 -142
  210. data/lib/spec/runner/formatter/failing_example_groups_formatter.rb +0 -25
  211. data/lib/spec/runner/formatter/failing_examples_formatter.rb +0 -20
  212. data/lib/spec/runner/formatter/html_formatter.rb +0 -338
  213. data/lib/spec/runner/formatter/nested_text_formatter.rb +0 -50
  214. data/lib/spec/runner/formatter/no_op_method_missing.rb +0 -21
  215. data/lib/spec/runner/formatter/profile_formatter.rb +0 -47
  216. data/lib/spec/runner/formatter/progress_bar_formatter.rb +0 -33
  217. data/lib/spec/runner/formatter/silent_formatter.rb +0 -10
  218. data/lib/spec/runner/formatter/snippet_extractor.rb +0 -52
  219. data/lib/spec/runner/formatter/specdoc_formatter.rb +0 -33
  220. data/lib/spec/runner/formatter/text_mate_formatter.rb +0 -16
  221. data/lib/spec/runner/heckle_runner.rb +0 -77
  222. data/lib/spec/runner/heckle_runner_unsupported.rb +0 -10
  223. data/lib/spec/runner/line_number_query.rb +0 -78
  224. data/lib/spec/runner/option_parser.rb +0 -225
  225. data/lib/spec/runner/options.rb +0 -406
  226. data/lib/spec/runner/reporter.rb +0 -171
  227. data/lib/spec/stubs/cucumber.rb +0 -5
  228. data/lib/spec/test/unit.rb +0 -10
  229. data/lib/spec/version.rb +0 -14
  230. data/resources/helpers/cmdline.rb +0 -8
  231. data/resources/rake/examples.rake +0 -7
  232. data/resources/rake/examples_with_rcov.rake +0 -9
  233. data/resources/rake/failing_examples_with_html.rake +0 -9
  234. data/resources/rake/verify_rcov.rake +0 -7
  235. data/spec/README.jruby +0 -15
  236. data/spec/autotest/autotest_helper.rb +0 -8
  237. data/spec/autotest/autotest_matchers.rb +0 -38
  238. data/spec/autotest/discover_spec.rb +0 -8
  239. data/spec/autotest/failed_results_re_spec.rb +0 -31
  240. data/spec/autotest/rspec_spec.rb +0 -126
  241. data/spec/ruby_forker.rb +0 -13
  242. data/spec/spec.opts +0 -6
  243. data/spec/spec/dsl/main_spec.rb +0 -103
  244. data/spec/spec/example/example_group_class_definition_spec.rb +0 -51
  245. data/spec/spec/example/example_group_factory_spec.rb +0 -180
  246. data/spec/spec/example/example_group_methods_spec.rb +0 -778
  247. data/spec/spec/example/example_group_proxy_spec.rb +0 -107
  248. data/spec/spec/example/example_group_spec.rb +0 -632
  249. data/spec/spec/example/example_matcher_spec.rb +0 -85
  250. data/spec/spec/example/example_methods_spec.rb +0 -162
  251. data/spec/spec/example/example_proxy_spec.rb +0 -57
  252. data/spec/spec/example/helper_method_spec.rb +0 -24
  253. data/spec/spec/example/nested_example_group_spec.rb +0 -71
  254. data/spec/spec/example/pending_module_spec.rb +0 -58
  255. data/spec/spec/example/predicate_matcher_spec.rb +0 -41
  256. data/spec/spec/example/shared_example_group_spec.rb +0 -257
  257. data/spec/spec/example/subclassing_example_group_spec.rb +0 -25
  258. data/spec/spec/example/subject_spec.rb +0 -110
  259. data/spec/spec/expectations/differs/default_spec.rb +0 -194
  260. data/spec/spec/expectations/extensions/kernel_spec.rb +0 -45
  261. data/spec/spec/expectations/fail_with_spec.rb +0 -96
  262. data/spec/spec/expectations/handler_spec.rb +0 -206
  263. data/spec/spec/expectations/wrap_expectation_spec.rb +0 -31
  264. data/spec/spec/interop/test/unit/resources/spec_that_fails.rb +0 -10
  265. data/spec/spec/interop/test/unit/resources/spec_that_passes.rb +0 -10
  266. data/spec/spec/interop/test/unit/resources/spec_with_errors.rb +0 -10
  267. data/spec/spec/interop/test/unit/resources/spec_with_options_hash.rb +0 -13
  268. data/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +0 -10
  269. data/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +0 -10
  270. data/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +0 -10
  271. data/spec/spec/interop/test/unit/resources/test_case_with_various_names.rb +0 -22
  272. data/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +0 -38
  273. data/spec/spec/interop/test/unit/spec_spec.rb +0 -48
  274. data/spec/spec/interop/test/unit/test_unit_spec_helper.rb +0 -18
  275. data/spec/spec/interop/test/unit/testcase_spec.rb +0 -50
  276. data/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +0 -9
  277. data/spec/spec/matchers/be_close_spec.rb +0 -50
  278. data/spec/spec/matchers/be_instance_of_spec.rb +0 -36
  279. data/spec/spec/matchers/be_kind_of_spec.rb +0 -33
  280. data/spec/spec/matchers/be_spec.rb +0 -460
  281. data/spec/spec/matchers/change_spec.rb +0 -349
  282. data/spec/spec/matchers/compatibility_spec.rb +0 -28
  283. data/spec/spec/matchers/description_generation_spec.rb +0 -160
  284. data/spec/spec/matchers/dsl_spec.rb +0 -34
  285. data/spec/spec/matchers/eql_spec.rb +0 -33
  286. data/spec/spec/matchers/equal_spec.rb +0 -57
  287. data/spec/spec/matchers/exist_spec.rb +0 -65
  288. data/spec/spec/matchers/has_spec.rb +0 -190
  289. data/spec/spec/matchers/have_spec.rb +0 -381
  290. data/spec/spec/matchers/include_spec.rb +0 -88
  291. data/spec/spec/matchers/match_array_spec.rb +0 -115
  292. data/spec/spec/matchers/match_spec.rb +0 -57
  293. data/spec/spec/matchers/matcher_spec.rb +0 -289
  294. data/spec/spec/matchers/matchers_spec.rb +0 -2
  295. data/spec/spec/matchers/operator_matcher_spec.rb +0 -191
  296. data/spec/spec/matchers/pretty_spec.rb +0 -22
  297. data/spec/spec/matchers/raise_exception_spec.rb +0 -345
  298. data/spec/spec/matchers/respond_to_spec.rb +0 -116
  299. data/spec/spec/matchers/satisfy_spec.rb +0 -36
  300. data/spec/spec/matchers/simple_matcher_spec.rb +0 -100
  301. data/spec/spec/matchers/throw_symbol_spec.rb +0 -121
  302. data/spec/spec/mocks/and_yield_spec.rb +0 -117
  303. data/spec/spec/mocks/any_number_of_times_spec.rb +0 -36
  304. data/spec/spec/mocks/argument_expectation_spec.rb +0 -23
  305. data/spec/spec/mocks/argument_matchers_spec.rb +0 -19
  306. data/spec/spec/mocks/at_least_spec.rb +0 -97
  307. data/spec/spec/mocks/at_most_spec.rb +0 -93
  308. data/spec/spec/mocks/bug_report_10260_spec.rb +0 -8
  309. data/spec/spec/mocks/bug_report_10263_spec.rb +0 -27
  310. data/spec/spec/mocks/bug_report_1049_spec.rb +0 -30
  311. data/spec/spec/mocks/bug_report_11545_spec.rb +0 -32
  312. data/spec/spec/mocks/bug_report_15719_spec.rb +0 -30
  313. data/spec/spec/mocks/bug_report_496_spec.rb +0 -17
  314. data/spec/spec/mocks/bug_report_600_spec.rb +0 -22
  315. data/spec/spec/mocks/bug_report_7611_spec.rb +0 -19
  316. data/spec/spec/mocks/bug_report_7805_spec.rb +0 -22
  317. data/spec/spec/mocks/bug_report_8165_spec.rb +0 -31
  318. data/spec/spec/mocks/bug_report_8302_spec.rb +0 -26
  319. data/spec/spec/mocks/bug_report_830_spec.rb +0 -21
  320. data/spec/spec/mocks/bug_report_957_spec.rb +0 -22
  321. data/spec/spec/mocks/double_spec.rb +0 -12
  322. data/spec/spec/mocks/failing_argument_matchers_spec.rb +0 -95
  323. data/spec/spec/mocks/hash_including_matcher_spec.rb +0 -90
  324. data/spec/spec/mocks/hash_not_including_matcher_spec.rb +0 -67
  325. data/spec/spec/mocks/mock_ordering_spec.rb +0 -94
  326. data/spec/spec/mocks/mock_space_spec.rb +0 -54
  327. data/spec/spec/mocks/mock_spec.rb +0 -601
  328. data/spec/spec/mocks/multiple_return_value_spec.rb +0 -113
  329. data/spec/spec/mocks/nil_expectation_warning_spec.rb +0 -53
  330. data/spec/spec/mocks/null_object_mock_spec.rb +0 -54
  331. data/spec/spec/mocks/once_counts_spec.rb +0 -53
  332. data/spec/spec/mocks/options_hash_spec.rb +0 -35
  333. data/spec/spec/mocks/partial_mock_spec.rb +0 -164
  334. data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +0 -66
  335. data/spec/spec/mocks/passing_argument_matchers_spec.rb +0 -145
  336. data/spec/spec/mocks/precise_counts_spec.rb +0 -52
  337. data/spec/spec/mocks/record_messages_spec.rb +0 -26
  338. data/spec/spec/mocks/stub_chain_spec.rb +0 -42
  339. data/spec/spec/mocks/stub_implementation_spec.rb +0 -31
  340. data/spec/spec/mocks/stub_spec.rb +0 -203
  341. data/spec/spec/mocks/stubbed_message_expectations_spec.rb +0 -26
  342. data/spec/spec/mocks/twice_counts_spec.rb +0 -67
  343. data/spec/spec/mocks/unstub_spec.rb +0 -127
  344. data/spec/spec/package/bin_spec_spec.rb +0 -16
  345. data/spec/spec/rake/spectask_spec.rb +0 -150
  346. data/spec/spec/runner/class_and_argument_parser_spec.rb +0 -23
  347. data/spec/spec/runner/command_line_spec.rb +0 -162
  348. data/spec/spec/runner/configuration_spec.rb +0 -320
  349. data/spec/spec/runner/drb_command_line_spec.rb +0 -146
  350. data/spec/spec/runner/empty_file.txt +0 -0
  351. data/spec/spec/runner/example_group_runner_spec.rb +0 -26
  352. data/spec/spec/runner/examples.txt +0 -2
  353. data/spec/spec/runner/failed.txt +0 -3
  354. data/spec/spec/runner/formatter/base_formatter_spec.rb +0 -30
  355. data/spec/spec/runner/formatter/base_text_formatter_spec.rb +0 -113
  356. data/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +0 -45
  357. data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +0 -33
  358. data/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +0 -377
  359. data/spec/spec/runner/formatter/html_formatted-1.8.6.html +0 -377
  360. data/spec/spec/runner/formatter/html_formatted-1.8.7.html +0 -377
  361. data/spec/spec/runner/formatter/html_formatted-1.9.1.html +0 -377
  362. data/spec/spec/runner/formatter/html_formatted-1.9.2.html +0 -377
  363. data/spec/spec/runner/formatter/html_formatter_spec.rb +0 -118
  364. data/spec/spec/runner/formatter/nested_text_formatter_spec.rb +0 -329
  365. data/spec/spec/runner/formatter/profile_formatter_spec.rb +0 -70
  366. data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +0 -149
  367. data/spec/spec/runner/formatter/snippet_extractor_spec.rb +0 -18
  368. data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +0 -159
  369. data/spec/spec/runner/formatter/text_mate_formatted-1.8.6-jruby.html +0 -371
  370. data/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +0 -371
  371. data/spec/spec/runner/formatter/text_mate_formatted-1.8.7.html +0 -371
  372. data/spec/spec/runner/formatter/text_mate_formatted-1.9.1.html +0 -371
  373. data/spec/spec/runner/formatter/text_mate_formatted-1.9.2.html +0 -371
  374. data/spec/spec/runner/formatter/text_mate_formatter_spec.rb +0 -106
  375. data/spec/spec/runner/heckle_runner_spec.rb +0 -78
  376. data/spec/spec/runner/heckler_spec.rb +0 -20
  377. data/spec/spec/runner/line_number_query/line_number_query_fixture.rb +0 -70
  378. data/spec/spec/runner/line_number_query_spec.rb +0 -129
  379. data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +0 -51
  380. data/spec/spec/runner/option_parser_spec.rb +0 -551
  381. data/spec/spec/runner/options_spec.rb +0 -554
  382. data/spec/spec/runner/output_one_time_fixture.rb +0 -7
  383. data/spec/spec/runner/output_one_time_fixture_runner.rb +0 -7
  384. data/spec/spec/runner/output_one_time_spec.rb +0 -15
  385. data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +0 -123
  386. data/spec/spec/runner/reporter_spec.rb +0 -244
  387. data/spec/spec/runner/resources/a_bar.rb +0 -0
  388. data/spec/spec/runner/resources/a_foo.rb +0 -0
  389. data/spec/spec/runner/resources/a_spec.rb +0 -1
  390. data/spec/spec/runner/resources/custom_example_group_runner.rb +0 -14
  391. data/spec/spec/runner/resources/utf8_encoded.rb +0 -8
  392. data/spec/spec/runner/spec.opts +0 -2
  393. data/spec/spec/runner/spec_drb.opts +0 -2
  394. data/spec/spec/runner/spec_spaced.opts +0 -2
  395. data/spec/spec/runner_spec.rb +0 -13
  396. data/spec/spec_helper.rb +0 -113
  397. data/spec/support/macros.rb +0 -29
  398. data/spec/support/spec_classes.rb +0 -133
@@ -1,92 +0,0 @@
1
- module Spec
2
- module Mocks
3
- class ErrorGenerator
4
- attr_writer :opts
5
-
6
- def initialize(target, name, options={})
7
- @declared_as = options[:__declared_as] || 'Mock'
8
- @target = target
9
- @name = name
10
- end
11
-
12
- def opts
13
- @opts ||= {}
14
- end
15
-
16
- def raise_unexpected_message_error(sym, *args)
17
- __raise "#{intro} received unexpected message :#{sym}#{arg_message(*args)}"
18
- end
19
-
20
- def raise_unexpected_message_args_error(expectation, *args)
21
- expected_args = format_args(*expectation.expected_args)
22
- actual_args = args.empty? ? "(no args)" : format_args(*args)
23
- __raise "#{intro} received #{expectation.sym.inspect} with unexpected arguments\n expected: #{expected_args}\n got: #{actual_args}"
24
- end
25
-
26
- def raise_expectation_error(sym, expected_received_count, actual_received_count, *args)
27
- __raise "#{intro} expected :#{sym}#{arg_message(*args)} #{count_message(expected_received_count)}, but received it #{count_message(actual_received_count)}"
28
- end
29
-
30
- def raise_out_of_order_error(sym)
31
- __raise "#{intro} received :#{sym} out of order"
32
- end
33
-
34
- def raise_block_failed_error(sym, detail)
35
- __raise "#{intro} received :#{sym} but passed block failed with: #{detail}"
36
- end
37
-
38
- def raise_missing_block_error(args_to_yield)
39
- __raise "#{intro} asked to yield |#{arg_list(*args_to_yield)}| but no block was passed"
40
- end
41
-
42
- def raise_wrong_arity_error(args_to_yield, arity)
43
- __raise "#{intro} yielded |#{arg_list(*args_to_yield)}| to block with arity of #{arity}"
44
- end
45
-
46
- private
47
-
48
- def intro
49
- if @name
50
- "#{@declared_as} #{@name.inspect}"
51
- elsif Mock === @target
52
- @declared_as
53
- elsif Class === @target
54
- "<#{@target.inspect} (class)>"
55
- elsif @target
56
- @target
57
- else
58
- "nil"
59
- end
60
- end
61
-
62
- def __raise(message)
63
- message = opts[:message] unless opts[:message].nil?
64
- Kernel::raise(Spec::Mocks::MockExpectationError, message)
65
- end
66
-
67
- def arg_message(*args)
68
- " with " + format_args(*args)
69
- end
70
-
71
- def format_args(*args)
72
- args.empty? ? "(no args)" : "(" + arg_list(*args) + ")"
73
- end
74
-
75
- def arg_list(*args)
76
- args.collect {|arg| arg.respond_to?(:description) ? arg.description : arg.inspect}.join(", ")
77
- end
78
-
79
- def count_message(count)
80
- return "at least #{pretty_print(count.abs)}" if count < 0
81
- return pretty_print(count)
82
- end
83
-
84
- def pretty_print(count)
85
- return "once" if count == 1
86
- return "twice" if count == 2
87
- return "#{count} times"
88
- end
89
-
90
- end
91
- end
92
- end
@@ -1,10 +0,0 @@
1
- module Spec
2
- module Mocks
3
- class MockExpectationError < Exception
4
- end
5
-
6
- class AmbiguousReturnError < StandardError
7
- end
8
- end
9
- end
10
-
@@ -1,69 +0,0 @@
1
- module Spec
2
- module Mocks
3
- module ExampleMethods
4
- include Spec::Mocks::ArgumentMatchers
5
-
6
- # Shortcut for creating an instance of Spec::Mocks::Mock.
7
- #
8
- # +name+ is used for failure reporting, so you should use the
9
- # role that the double is playing in the example.
10
- #
11
- # +stubs_and_options+ lets you assign options and stub values
12
- # at the same time. The only option available is :null_object.
13
- # Anything else is treated as a stub value.
14
- #
15
- # == Examples
16
- #
17
- # thing = double("thing", :a => "A")
18
- # thing.a == "A" => true
19
- #
20
- # person = double("thing", :name => "Joe", :email => "joe@domain.com")
21
- # person.name => "Joe"
22
- # person.email => "joe@domain.com"
23
- def double(*args)
24
- __declare_double('Double', *args)
25
- end
26
-
27
- # Alias for double
28
- def mock(*args)
29
- __declare_double('Mock', *args)
30
- end
31
-
32
- # Alias for double
33
- def stub(*args)
34
- __declare_double('Stub', *args)
35
- end
36
-
37
- def __declare_double(declared_as, *args) # :nodoc:
38
- args << {} unless Hash === args.last
39
- args.last[:__declared_as] = declared_as
40
- Spec::Mocks::Mock.new(*args)
41
- end
42
-
43
- # DEPRECATED - use double('name').as_null_object instead
44
- #
45
- # Shortcut for creating a mock object that will return itself in response
46
- # to any message it receives that it hasn't been explicitly instructed
47
- # to respond to.
48
- def stub_everything(name = 'stub')
49
- Spec.warn(<<-WARNING)
50
-
51
- DEPRECATION: stub_everything('#{name}') is deprecated and will be removed
52
- from a future version of rspec. Please use double('#{name}').as_null_object
53
- (or stub('#{name}').as_null_object or mock('#{name}').as_null_object instead.
54
-
55
- WARNING
56
- mock(name, :null_object => true)
57
- end
58
-
59
- # Disables warning messages about expectations being set on nil.
60
- #
61
- # By default warning messages are issued when expectations are set on nil. This is to
62
- # prevent false-positives and to catch potential bugs early on.
63
- def allow_message_expectations_on_nil
64
- Proxy.allow_message_expectations_on_nil
65
- end
66
-
67
- end
68
- end
69
- end
@@ -1 +0,0 @@
1
- require 'spec/mocks/extensions/object'
@@ -1,3 +0,0 @@
1
- class Object
2
- include Spec::Mocks::Methods
3
- end
@@ -1,15 +0,0 @@
1
- # Require everything except the global extensions of class and object. This
2
- # supports wrapping rspec's mocking functionality without invading every
3
- # object in the system.
4
-
5
- require 'spec/mocks/methods'
6
- require 'spec/mocks/argument_matchers'
7
- require 'spec/mocks/example_methods'
8
- require 'spec/mocks/proxy'
9
- require 'spec/mocks/mock'
10
- require 'spec/mocks/argument_expectation'
11
- require 'spec/mocks/message_expectation'
12
- require 'spec/mocks/order_group'
13
- require 'spec/mocks/errors'
14
- require 'spec/mocks/error_generator'
15
- require 'spec/mocks/space'
@@ -1,344 +0,0 @@
1
- module Spec
2
- module Mocks
3
-
4
- class BaseExpectation
5
- attr_reader :sym
6
- attr_writer :expected_received_count, :method_block, :expected_from
7
- protected :expected_received_count=, :method_block=, :expected_from=
8
- attr_accessor :error_generator
9
- protected :error_generator, :error_generator=
10
-
11
- def initialize(error_generator, expectation_ordering, expected_from, sym, method_block, expected_received_count=1, opts={}, &implementation)
12
- @error_generator = error_generator
13
- @error_generator.opts = opts
14
- @expected_from = expected_from
15
- @sym = sym
16
- @method_block = method_block
17
- @actual_received_count = 0
18
- @expected_received_count = expected_received_count
19
- @args_expectation = ArgumentExpectation.new([ArgumentMatchers::AnyArgsMatcher.new])
20
- @consecutive = false
21
- @exception_to_raise = nil
22
- @symbol_to_throw = nil
23
- @order_group = expectation_ordering
24
- @at_least = nil
25
- @at_most = nil
26
- @args_to_yield = []
27
- @failed_fast = nil
28
- @args_to_yield_were_cloned = false
29
- @return_block = implementation
30
- @eval_context = nil
31
- end
32
-
33
- def build_child(expected_from, method_block, expected_received_count, opts={})
34
- child = clone
35
- child.expected_from = expected_from
36
- child.method_block = method_block
37
- child.expected_received_count = expected_received_count
38
- child.clear_actual_received_count!
39
- new_gen = error_generator.clone
40
- new_gen.opts = opts
41
- child.error_generator = new_gen
42
- child.clone_args_to_yield @args_to_yield
43
- child
44
- end
45
-
46
- def expected_args
47
- @args_expectation.args
48
- end
49
-
50
- def and_return(*values, &return_block)
51
- Kernel::raise AmbiguousReturnError unless @method_block.nil?
52
- case values.size
53
- when 0 then value = nil
54
- when 1 then value = values[0]
55
- else
56
- value = values
57
- @consecutive = true
58
- @expected_received_count = values.size if !ignoring_args? &&
59
- @expected_received_count < values.size
60
- end
61
- @return_block = block_given? ? return_block : lambda { value }
62
- end
63
-
64
- # :call-seq:
65
- # and_raise()
66
- # and_raise(Exception) #any exception class
67
- # and_raise(exception) #any exception object
68
- #
69
- # == Warning
70
- #
71
- # When you pass an exception class, the MessageExpectation will
72
- # raise an instance of it, creating it with +new+. If the exception
73
- # class initializer requires any parameters, you must pass in an
74
- # instance and not the class.
75
- def and_raise(exception=Exception)
76
- @exception_to_raise = exception
77
- end
78
-
79
- def and_throw(symbol)
80
- @symbol_to_throw = symbol
81
- end
82
-
83
- def and_yield(*args, &block)
84
- if @args_to_yield_were_cloned
85
- @args_to_yield.clear
86
- @args_to_yield_were_cloned = false
87
- end
88
-
89
- if block
90
- require 'spec/extensions/instance_exec'
91
- @eval_context = Object.new
92
- @eval_context.extend Spec::Matchers::InstanceExec
93
- yield @eval_context
94
- end
95
- @args_to_yield << args
96
- self
97
- end
98
-
99
- def matches(sym, args)
100
- @sym == sym and @args_expectation.args_match?(args)
101
- end
102
-
103
- def invoke(*args, &block)
104
- if @expected_received_count == 0
105
- @failed_fast = true
106
- @actual_received_count += 1
107
- @error_generator.raise_expectation_error @sym, @expected_received_count, @actual_received_count, *args
108
- end
109
-
110
- @order_group.handle_order_constraint self
111
-
112
- begin
113
- Kernel::raise @exception_to_raise unless @exception_to_raise.nil?
114
- Kernel::throw @symbol_to_throw unless @symbol_to_throw.nil?
115
-
116
-
117
- if !@method_block.nil?
118
- default_return_val = invoke_method_block(*args)
119
- elsif @args_to_yield.size > 0 || @eval_context
120
- default_return_val = invoke_with_yield(&block)
121
- else
122
- default_return_val = nil
123
- end
124
-
125
- if @consecutive
126
- return invoke_consecutive_return_block(*args, &block)
127
- elsif @return_block
128
- return invoke_return_block(*args, &block)
129
- else
130
- return default_return_val
131
- end
132
- ensure
133
- @actual_received_count += 1
134
- end
135
- end
136
-
137
- def called_max_times?
138
- @expected_received_count != :any && @expected_received_count > 0 &&
139
- @actual_received_count >= @expected_received_count
140
- end
141
-
142
- def invoke_return_block(*args, &block)
143
- args << block unless block.nil?
144
- # Ruby 1.9 - when we set @return_block to return values
145
- # regardless of arguments, any arguments will result in
146
- # a "wrong number of arguments" error
147
- @return_block.arity == 0 ? @return_block.call : @return_block.call(*args)
148
- end
149
-
150
- protected
151
-
152
- def invoke_method_block(*args)
153
- begin
154
- @method_block.call(*args)
155
- rescue => detail
156
- @error_generator.raise_block_failed_error @sym, detail.message
157
- end
158
- end
159
-
160
- def invoke_with_yield(&block)
161
- if block.nil?
162
- @error_generator.raise_missing_block_error @args_to_yield
163
- end
164
- value = nil
165
- @args_to_yield.each do |args_to_yield_this_time|
166
- if block.arity > -1 && args_to_yield_this_time.length != block.arity
167
- @error_generator.raise_wrong_arity_error args_to_yield_this_time, block.arity
168
- end
169
- value = eval_block(*args_to_yield_this_time, &block)
170
- end
171
- value
172
- end
173
-
174
- def eval_block(*args, &block)
175
- if @eval_context
176
- @eval_context.instance_exec(*args, &block)
177
- else
178
- block.call(*args)
179
- end
180
- end
181
-
182
- def invoke_consecutive_return_block(*args, &block)
183
- value = invoke_return_block(*args, &block)
184
- index = [@actual_received_count, value.size-1].min
185
- value[index]
186
- end
187
-
188
- def clone_args_to_yield(args)
189
- @args_to_yield = args.clone
190
- @args_to_yield_were_cloned = true
191
- end
192
-
193
- def failed_fast?
194
- @failed_fast
195
- end
196
- end
197
-
198
- class MessageExpectation < BaseExpectation
199
-
200
- def matches_name?(sym)
201
- @sym == sym
202
- end
203
-
204
- def matches_name_but_not_args(sym, args)
205
- matches_name?(sym) and not @args_expectation.args_match?(args)
206
- end
207
-
208
- def verify_messages_received
209
- return if expected_messages_received? || failed_fast?
210
-
211
- generate_error
212
- rescue Spec::Mocks::MockExpectationError => error
213
- error.backtrace.insert(0, @expected_from)
214
- Kernel::raise error
215
- end
216
-
217
- def expected_messages_received?
218
- ignoring_args? || matches_exact_count? ||
219
- matches_at_least_count? || matches_at_most_count?
220
- end
221
-
222
- def ignoring_args?
223
- @expected_received_count == :any
224
- end
225
-
226
- def matches_at_least_count?
227
- @at_least && @actual_received_count >= @expected_received_count
228
- end
229
-
230
- def matches_at_most_count?
231
- @at_most && @actual_received_count <= @expected_received_count
232
- end
233
-
234
- def matches_exact_count?
235
- @expected_received_count == @actual_received_count
236
- end
237
-
238
- def similar_messages
239
- @similar_messages ||= []
240
- end
241
-
242
- def advise(*args)
243
- similar_messages << args
244
- end
245
-
246
- def generate_error
247
- if similar_messages.empty?
248
- @error_generator.raise_expectation_error(@sym, @expected_received_count, @actual_received_count, *@args_expectation.args)
249
- else
250
- @error_generator.raise_unexpected_message_args_error(self, *@similar_messages)
251
- end
252
- end
253
-
254
- def with(*args, &block)
255
- @args_expectation = ArgumentExpectation.new(args, &block)
256
- self
257
- end
258
-
259
- def exactly(n)
260
- set_expected_received_count :exactly, n
261
- self
262
- end
263
-
264
- def at_least(n)
265
- set_expected_received_count :at_least, n
266
- self
267
- end
268
-
269
- def at_most(n)
270
- set_expected_received_count :at_most, n
271
- self
272
- end
273
-
274
- def times(&block)
275
- @method_block = block if block
276
- self
277
- end
278
-
279
- def any_number_of_times(&block)
280
- @method_block = block if block
281
- @expected_received_count = :any
282
- self
283
- end
284
-
285
- def never
286
- @expected_received_count = 0
287
- self
288
- end
289
-
290
- def once(&block)
291
- @method_block = block if block
292
- @expected_received_count = 1
293
- self
294
- end
295
-
296
- def twice(&block)
297
- @method_block = block if block
298
- @expected_received_count = 2
299
- self
300
- end
301
-
302
- def ordered(&block)
303
- @method_block = block if block
304
- @order_group.register(self)
305
- @ordered = true
306
- self
307
- end
308
-
309
- def negative_expectation_for?(sym)
310
- return false
311
- end
312
-
313
- protected
314
- def set_expected_received_count(relativity, n)
315
- @at_least = (relativity == :at_least)
316
- @at_most = (relativity == :at_most)
317
- @expected_received_count = case n
318
- when Numeric
319
- n
320
- when :once
321
- 1
322
- when :twice
323
- 2
324
- end
325
- end
326
-
327
- def clear_actual_received_count!
328
- @actual_received_count = 0
329
- end
330
-
331
- end
332
-
333
- class NegativeMessageExpectation < MessageExpectation
334
- def initialize(message, expectation_ordering, expected_from, sym, method_block)
335
- super(message, expectation_ordering, expected_from, sym, method_block, 0)
336
- end
337
-
338
- def negative_expectation_for?(sym)
339
- return @sym == sym
340
- end
341
- end
342
-
343
- end
344
- end