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,14 +0,0 @@
1
- module Spec
2
- module Runner
3
- class ClassAndArgumentsParser
4
- def self.parse(s)
5
- if s =~ /([a-zA-Z_]+(?:::[a-zA-Z_]+)*):?(.*)/
6
- arg = $2 == "" ? nil : $2
7
- [$1, arg]
8
- else
9
- raise "Couldn't parse #{s.inspect}"
10
- end
11
- end
12
- end
13
- end
14
- end
@@ -1,15 +0,0 @@
1
- require 'spec/runner/option_parser'
2
-
3
- module Spec
4
- module Runner
5
- class CommandLine
6
- def self.run(tmp_options=Spec::Runner.options)
7
- orig_options = Spec::Runner.options
8
- Spec::Runner.use tmp_options
9
- tmp_options.run_examples
10
- ensure
11
- Spec::Runner.use orig_options
12
- end
13
- end
14
- end
15
- end
@@ -1,202 +0,0 @@
1
- module Spec
2
- module Runner
3
- class Configuration
4
- include Spec::Example::ArgsAndOptions
5
-
6
- # Chooses what mock framework to use. Example:
7
- #
8
- # Spec::Runner.configure do |config|
9
- # config.mock_with :rspec, :mocha, :flexmock, or :rr
10
- # end
11
- #
12
- # To use any other mock framework, you'll have to provide your own
13
- # adapter. This is simply a module that responds to the following
14
- # methods:
15
- #
16
- # setup_mocks_for_rspec
17
- # verify_mocks_for_rspec
18
- # teardown_mocks_for_rspec.
19
- #
20
- # These are your hooks into the lifecycle of a given example. RSpec will
21
- # call setup_mocks_for_rspec before running anything else in each
22
- # Example. After executing the #after methods, RSpec will then call
23
- # verify_mocks_for_rspec and teardown_mocks_for_rspec (this is
24
- # guaranteed to run even if there are failures in
25
- # verify_mocks_for_rspec).
26
- #
27
- # Once you've defined this module, you can pass that to mock_with:
28
- #
29
- # Spec::Runner.configure do |config|
30
- # config.mock_with MyMockFrameworkAdapter
31
- # end
32
- #
33
- def mock_with(mock_framework)
34
- @mock_framework = case mock_framework
35
- when Symbol
36
- mock_framework_path(mock_framework.to_s)
37
- else
38
- mock_framework
39
- end
40
- end
41
-
42
- def mock_framework # :nodoc:
43
- @mock_framework ||= mock_framework_path("rspec")
44
- end
45
-
46
- # :call-seq:
47
- # include(Some::Helpers)
48
- # include(Some::Helpers, More::Helpers)
49
- # include(My::Helpers, :type => :key)
50
- #
51
- # Declares modules to be included in multiple example groups
52
- # (<tt>describe</tt> blocks). With no <tt>:type</tt>, the modules listed
53
- # will be included in all example groups.
54
- #
55
- # Use <tt>:type</tt> to restrict
56
- # the inclusion to a subset of example groups. The value assigned to
57
- # <tt>:type</tt> should be a key that maps to a class that is either a
58
- # subclass of Spec::Example::ExampleGroup or extends
59
- # Spec::Example::ExampleGroupMethods and includes
60
- # Spec::Example::ExampleMethods.
61
- #
62
- # For example, the rspec-rails gem/plugin extends Test::Unit::TestCase
63
- # with Spec::Example::ExampleGroupMethods and includes
64
- # Spec::Example::ExampleMethods in it. So if you have a module of helper
65
- # methods for controller examples, you could do this:
66
- #
67
- # config.include(ControllerExampleHelpers, :type => :controller)
68
- #
69
- # Only example groups that have that type will get the modules included:
70
- #
71
- # describe Account, :type => :model do
72
- # # Will *not* include ControllerExampleHelpers
73
- # end
74
- #
75
- # describe AccountsController, :type => :controller do
76
- # # *Will* include ControllerExampleHelpers
77
- # end
78
- #
79
- def include(*modules_and_options)
80
- include_or_extend(:include, *modules_and_options)
81
- end
82
-
83
- # :call-seq:
84
- # extend(Some::Helpers)
85
- # extend(Some::Helpers, More::Helpers)
86
- # extend(My::Helpers, :type => :key)
87
- #
88
- # Works just like #include, but extends the example groups
89
- # with the modules rather than including them.
90
- def extend(*modules_and_options)
91
- include_or_extend(:extend, *modules_and_options)
92
- end
93
-
94
- # Appends a global <tt>before</tt> block to all example groups.
95
- # <tt>scope</tt> can be any of <tt>:each</tt> (default), <tt>:all</tt>, or
96
- # <tt>:suite</tt>. When <tt>:each</tt>, the block is executed before each
97
- # example. When <tt>:all</tt>, the block is executed once per example
98
- # group, before any of its examples are run. When <tt>:suite</tt> the
99
- # block is run once before the entire suite is run.
100
- def append_before(scope = :each, options={}, &proc)
101
- add_callback(:append_before, scope, options, &proc)
102
- end
103
- alias_method :before, :append_before
104
-
105
- # Prepends a global <tt>before</tt> block to all example groups.
106
- #
107
- # See <tt>append_before</tt> for scoping semantics.
108
- def prepend_before(scope = :each, options={}, &proc)
109
- add_callback(:prepend_before, scope, options, &proc)
110
- end
111
-
112
- # Prepends a global <tt>after</tt> block to all example groups.
113
- #
114
- # See <tt>append_before</tt> for scoping semantics.
115
- def prepend_after(scope = :each, options={}, &proc)
116
- add_callback(:prepend_after, scope, options, &proc)
117
- end
118
- alias_method :after, :prepend_after
119
-
120
- # Appends a global <tt>after</tt> block to all example groups.
121
- #
122
- # See <tt>append_before</tt> for scoping semantics.
123
- def append_after(scope = :each, options={}, &proc)
124
- add_callback(:append_after, scope, options, &proc)
125
- end
126
-
127
- # DEPRECATED - use Spec::Matchers::DSL instead
128
- #
129
- # Defines global predicate matchers. Example:
130
- #
131
- # config.predicate_matchers[:swim] = :can_swim?
132
- #
133
- # This makes it possible to say:
134
- #
135
- # person.should swim # passes if person.can_swim? returns true
136
- #
137
- def predicate_matchers
138
- @predicate_matchers ||= Spec::HashWithDeprecationNotice.new("predicate_matchers", "the new Matcher DSL")
139
- end
140
-
141
- # Adds patterns to the list of patterns ignored in the backtrace when a
142
- # failure is output by rspec. Example:
143
- #
144
- # config.ignore_backtrace_patterns /spork/, /shoulda/, "/some/weird/path/"
145
- #
146
- # When quiet backtraces are turned on (default), this will exclude any
147
- # lines that match any of the Regexps and Strings passed.
148
- #
149
- def ignore_backtrace_patterns(*patterns)
150
- @ignored_backtrace_patterns ||= []
151
- @ignored_backtrace_patterns += patterns
152
- end
153
-
154
- def ignored_backtrace_patterns # :nodoc:
155
- @ignored_backtrace_patterns ||= []
156
- end
157
-
158
- def suppress_deprecation_warnings!
159
- @suppress_deprecation_warnings = true
160
- end
161
-
162
- def suppress_deprecation_warnings?
163
- @suppress_deprecation_warnings ||= false
164
- end
165
-
166
- private
167
-
168
- def include_or_extend(action, *args)
169
- modules, options = args_and_options(*args)
170
- [get_type_from_options(options)].flatten.each do |required_example_group|
171
- required_example_group = required_example_group.to_sym if required_example_group
172
- modules.each do |mod|
173
- Spec::Example::ExampleGroupFactory[required_example_group].__send__(action, mod)
174
- end
175
- end
176
- end
177
-
178
- def add_callback(sym, *args, &proc)
179
- scope, options = scope_and_options(*args)
180
- example_group = Spec::Example::ExampleGroupFactory[get_type_from_options(options)]
181
- example_group.__send__(sym, scope, &proc)
182
- end
183
-
184
- def get_type_from_options(options)
185
- options[:type] || options[:behaviour_type]
186
- end
187
-
188
- def mock_framework_path(framework_name)
189
- "spec/adapters/mock_frameworks/#{framework_name}"
190
- end
191
-
192
- def scope_and_options(*args) # :nodoc:
193
- args, options = args_and_options(*args)
194
- return scope_from(*args), options
195
- end
196
-
197
- def scope_from(*args) # :nodoc:
198
- args[0] || :each
199
- end
200
- end
201
- end
202
- end
@@ -1,93 +0,0 @@
1
- require 'spec/runner/differs/load-diff-lcs'
2
- require 'pp'
3
-
4
- module Spec
5
- module Expectations
6
- module Differs
7
- unless defined?(Spec::Expectations::Differs::Default)
8
- class Default
9
- def initialize(options)
10
- @options = options
11
- end
12
-
13
- # This is snagged from diff/lcs/ldiff.rb (which is a commandline tool)
14
- def diff_as_string(data_new, data_old)
15
- data_old = data_old.split(/\n/).map! { |e| e.chomp }
16
- data_new = data_new.split(/\n/).map! { |e| e.chomp }
17
- output = ""
18
- diffs = Diff::LCS.diff(data_old, data_new)
19
- return output if diffs.empty?
20
- oldhunk = hunk = nil
21
- file_length_difference = 0
22
- diffs.each do |piece|
23
- begin
24
- hunk = Diff::LCS::Hunk.new(data_old, data_new, piece, context_lines,
25
- file_length_difference)
26
- file_length_difference = hunk.file_length_difference
27
- next unless oldhunk
28
- # Hunks may overlap, which is why we need to be careful when our
29
- # diff includes lines of context. Otherwise, we might print
30
- # redundant lines.
31
- if (context_lines > 0) and hunk.overlaps?(oldhunk)
32
- hunk.unshift(oldhunk)
33
- else
34
- output << oldhunk.diff(format)
35
- end
36
- ensure
37
- oldhunk = hunk
38
- output << "\n"
39
- end
40
- end
41
- #Handle the last remaining hunk
42
- output << oldhunk.diff(format) << "\n"
43
- end
44
-
45
- def diff_as_object(target,expected)
46
- diff_as_string(PP.pp(target,""), PP.pp(expected,""))
47
- end
48
-
49
- def diff_as_hash(target, expected)
50
- contains_hash = false
51
- contains_array = false
52
-
53
- extra_expected_keys = expected.keys - target.keys
54
- extra_target_keys = target.keys - expected.keys
55
-
56
- o = "\n"
57
-
58
- o << "Expected hash contains keys that target hash does not: " << extra_expected_keys.inspect << "\n" if !extra_expected_keys.empty?
59
- o << "Target hash contains keys that expected hash does not: " << extra_target_keys.inspect << "\n" if !extra_target_keys.empty?
60
-
61
- expected.delete_if do |key, value|
62
- contains_hash = true if value.is_a?(Hash)
63
- contains_array = true if value.is_a?(Array)
64
- target[key] == value
65
- end
66
-
67
- expected.keys.sort { |a,b| a.to_s <=> b.to_s }.each do |key|
68
- o << "Expected the key #{key.inspect} to be #{expected[key].inspect}, but was #{target[key].inspect}\n"
69
- end
70
-
71
- o << "\n"
72
-
73
- if contains_hash || contains_array
74
- o << diff_as_object(target, expected)
75
- else
76
- o
77
- end
78
- end
79
-
80
- protected
81
- def format
82
- @options.diff_format
83
- end
84
-
85
- def context_lines
86
- @options.context_lines
87
- end
88
- end
89
-
90
- end
91
- end
92
- end
93
- end
@@ -1,12 +0,0 @@
1
- begin
2
- require 'diff/lcs'
3
- rescue LoadError
4
- begin
5
- require 'rubygems' unless ENV['NO_RUBYGEMS']
6
- require 'diff/lcs'
7
- rescue LoadError
8
- raise "You must gem install diff-lcs to use diffing"
9
- end
10
- end
11
-
12
- require 'diff/lcs/hunk'
@@ -1,32 +0,0 @@
1
- require "drb/drb"
2
-
3
- module Spec
4
- module Runner
5
- # Facade to run specs by connecting to a DRB server
6
- class DrbCommandLine
7
-
8
- def self.port(options)
9
- (options.drb_port || ENV["RSPEC_DRB"] || 8989).to_i
10
- end
11
-
12
- # Runs specs on a DRB server. Note that this API is similar to that of
13
- # CommandLine - making it possible for clients to use both interchangeably.
14
- def self.run(options)
15
- begin
16
- begin; \
17
- DRb.start_service("druby://localhost:0"); \
18
- rescue SocketError, Errno::EADDRNOTAVAIL; \
19
- DRb.start_service("druby://:0"); \
20
- end
21
- spec_server = DRbObject.new_with_uri("druby://127.0.0.1:#{port(options)}")
22
- spec_server.run(options.argv, options.error_stream, options.output_stream)
23
- true
24
- rescue DRb::DRbConnError
25
- options.error_stream.puts "No server is running"
26
- false
27
- end
28
- end
29
-
30
- end
31
- end
32
- end
@@ -1,58 +0,0 @@
1
- module Spec
2
- module Runner
3
- class ExampleGroupRunner
4
- def initialize(options)
5
- @options = options
6
- end
7
-
8
- def load_files(files)
9
- $KCODE = 'u' if RUBY_VERSION.to_f < 1.9
10
- # It's important that loading files (or choosing not to) stays the
11
- # responsibility of the ExampleGroupRunner. Some implementations (like)
12
- # the one using DRb may choose *not* to load files, but instead tell
13
- # someone else to do it over the wire.
14
- files.each do |file|
15
- load file
16
- end
17
- end
18
-
19
- def run
20
- prepare
21
- success = true
22
- example_groups.each do |example_group|
23
- success = success & example_group.run(@options)
24
- end
25
- finish
26
- success
27
- end
28
-
29
- protected
30
-
31
- def prepare
32
- reporter.start(number_of_examples)
33
- example_groups.reverse! if reverse
34
- end
35
-
36
- def finish
37
- reporter.end
38
- reporter.dump
39
- end
40
-
41
- def reporter
42
- @options.reporter
43
- end
44
-
45
- def reverse
46
- @options.reverse
47
- end
48
-
49
- def example_groups
50
- @options.example_groups
51
- end
52
-
53
- def number_of_examples
54
- @options.number_of_examples
55
- end
56
- end
57
- end
58
- end
@@ -1,9 +0,0 @@
1
- module Kernel
2
- unless respond_to?(:debugger)
3
- # Start a debugging session if ruby-debug is loaded with the -u/--debugger option
4
- def debugger(steps=1)
5
- # If not then just comment and proceed
6
- $stderr.puts "debugger statement ignored, use -u or --debugger option on rspec to enable debugging"
7
- end
8
- end
9
- end
@@ -1,139 +0,0 @@
1
- module Spec
2
- module Runner
3
- module Formatter
4
- # Formatter base-class, which implements all required methods as no-ops, with the exception
5
- class BaseFormatter
6
- # Formatters are initialized with <tt>options</tt> and <tt>output</tt>
7
- # arguments. RSpec's built-in formatters already expect this, and any
8
- # custom formatters should as well.
9
- #
10
- # ==== Parameters
11
- # options::
12
- # A struct containing boolean values for colour, autospec,
13
- # and dry_run
14
- # output::
15
- # Used by RSpec's built-in formatters to determine where to
16
- # write the output. Default is <tt>STDOUT</tt>, otherwise a
17
- # filename is expected.
18
- #
19
- # === Example
20
- # If you invoke the <tt>spec</tt> command with:
21
- #
22
- # --format progress:progress_report.txt
23
- #
24
- # ... the value of <tt>output</tt> will be progress_report.txt. If you
25
- # don't identify an output destination, the default is STDOUT.
26
- def initialize(options, output)
27
- end
28
-
29
- # This method is invoked before any examples are run, right after
30
- # they have all been collected. This can be useful for special
31
- # formatters that need to provide progress on feedback (graphical ones)
32
- #
33
- # This method will only be invoked once, and the next one to be invoked
34
- # is #example_group_started
35
- #
36
- # ==== Parameters
37
- # example_count:: the total number of examples to be run
38
- def start(example_count)
39
- end
40
-
41
- # This method is invoked at the beginning of the execution of each
42
- # example_group. The next method to be invoked after this is
43
- # #example_started
44
- #
45
- # ==== Parameters
46
- # example_group_proxy:: instance of Spec::Example::ExampleGroupProxy
47
- def example_group_started(example_group_proxy)
48
- end
49
-
50
- # Deprecated - use example_group_started instead
51
- def add_example_group(example_group_proxy)
52
- Spec.deprecate("BaseFormatter#add_example_group", "BaseFormatter#example_group_started")
53
- example_group_started(example_group_proxy)
54
- end
55
-
56
- # This method is invoked when an +example+ starts. The next method to be
57
- # invoked after this is #example_passed, #example_failed, or
58
- # #example_pending
59
- #
60
- # ==== Parameters
61
- # example_proxy:: instance of Spec::Example::ExampleProxy
62
- def example_started(example_proxy)
63
- end
64
-
65
- # This method is invoked when an +example+ passes.
66
- # +example_proxy+ is the same instance of Spec::Example::ExampleProxy
67
- # that was passed to example_started
68
- #
69
- # ==== Parameters
70
- # example_proxy:: instance of Spec::Example::ExampleProxy
71
- def example_passed(example_proxy)
72
- end
73
-
74
- # This method is invoked when an +example+ fails, i.e. an exception occurred
75
- # inside it (such as a failed should or other exception).
76
- #
77
- # ==== Parameters
78
- # example_proxy::
79
- # The same instance of Spec::Example::ExampleProxy that was passed
80
- # to <tt>example_started</tt>
81
- #
82
- # counter:: the sequential number of this failure
83
- #
84
- # failure:: instance of Spec::Runner::Reporter::Failure
85
- def example_failed(example_proxy, counter, failure)
86
- end
87
-
88
- # This method is invoked when an example is not yet implemented (i.e. has not
89
- # been provided a block), or when an ExamplePendingError is raised.
90
- # +message+ is the message from the ExamplePendingError, if it exists, or the
91
- # default value of "Not Yet Implemented". +deprecated_pending_location+ is
92
- # deprecated - use example_proxy.location instead
93
- #
94
- # ==== Parameters
95
- # example_proxy:: instance of Spec::Example::ExampleProxy
96
- # message::
97
- # the message passed to the pending message, or an internal
98
- # default
99
- #
100
- def example_pending(example_proxy, message, deprecated_pending_location=nil)
101
- end
102
-
103
- # This method is invoked after all of the examples have executed. The next method
104
- # to be invoked after this one is #dump_failure (once for each failed example)
105
- def start_dump
106
- end
107
-
108
- # Dumps detailed information about an example failure.
109
- # This method is invoked for each failed example after all examples have run. +counter+ is the sequence number
110
- # of the associated example. +failure+ is a Failure object, which contains detailed
111
- # information about the failure.
112
- #
113
- # ==== Parameters
114
- # counter:: the sequential number of this failure
115
- # failure:: instance of Spec::Runner::Reporter::Failure
116
- def dump_failure(counter, failure)
117
- end
118
-
119
- # This method is invoked after the dumping of examples and failures.
120
- #
121
- # ==== Parameters
122
- # duration:: the total time for the entire run
123
- # example_count:: the number of examples run
124
- # failure_count:: the number of examples that failed
125
- # pending_count:: the number of examples that are pending
126
- def dump_summary(duration, example_count, failure_count, pending_count)
127
- end
128
-
129
- # This gets invoked after the summary
130
- def dump_pending
131
- end
132
-
133
- # This method is invoked at the very end. Allows the formatter to clean up, like closing open streams.
134
- def close
135
- end
136
- end
137
- end
138
- end
139
- end