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,27 +0,0 @@
1
- module Spec
2
- module Example
3
- module ArgsAndOptions
4
- def args_and_options(*args) # :nodoc:
5
- options = Hash === args.last ? args.pop : {}
6
- return args, options
7
- end
8
-
9
- def add_options(args, options={}) # :nodoc:
10
- args << {} unless Hash === args.last
11
- args.extend WithOptions
12
- args.options.merge!(options)
13
- args.options
14
- end
15
-
16
- def set_location(options, location) # :nodoc:
17
- options[:location] ||= location
18
- end
19
-
20
- module WithOptions # :nodoc:
21
- def options
22
- last
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,93 +0,0 @@
1
- module Spec
2
- module Example
3
- module BeforeAndAfterHooks
4
- class << self
5
- def before_suite_parts # :nodoc:
6
- @before_suite_parts ||= []
7
- end
8
-
9
- def after_suite_parts # :nodoc:
10
- @after_suite_parts ||= []
11
- end
12
- end
13
-
14
- # Registers a block to be executed before examples. <tt>scope</tt> can be
15
- # <tt>:each</tt> (default), <tt>:all</tt>, or <tt>:suite</tt>. When
16
- # <tt>:each</tt>, the block is executed before each example. When
17
- # <tt>:all</tt>, the block is executed only once before any examples are
18
- # run.
19
- def append_before(scope = :each, &block)
20
- before_parts(scope) << block
21
- end
22
- alias_method :before, :append_before
23
-
24
- # Registers a block to be executed before each example.
25
- # This method prepends +block+ to existing before blocks.
26
- #
27
- # See <tt>append_before</tt> for scoping semantics.
28
- def prepend_before(scope = :each, &block)
29
- before_parts(scope).unshift(block)
30
- end
31
-
32
- # Registers a block to be executed after each example.
33
- # This method prepends +block+ to existing after blocks.
34
- #
35
- # See <tt>append_before</tt> for scoping semantics.
36
- def prepend_after(scope = :each, &block)
37
- after_parts(scope).unshift(block)
38
- end
39
- alias_method :after, :prepend_after
40
-
41
- # Registers a block to be executed after each example.
42
- # This method appends +block+ to existing after blocks.
43
- #
44
- # See <tt>append_before</tt> for scoping semantics.
45
- def append_after(scope = :each, &block)
46
- after_parts(scope) << block
47
- end
48
-
49
- def before_each_parts # :nodoc:
50
- @before_each_parts ||= []
51
- end
52
-
53
- def after_each_parts # :nodoc:
54
- @after_each_parts ||= []
55
- end
56
-
57
- def before_all_parts # :nodoc:
58
- @before_all_parts ||= []
59
- end
60
-
61
- def after_all_parts # :nodoc:
62
- @after_all_parts ||= []
63
- end
64
-
65
- def before_suite_parts # :nodoc:
66
- BeforeAndAfterHooks.before_suite_parts
67
- end
68
-
69
- def after_suite_parts # :nodoc:
70
- BeforeAndAfterHooks.after_suite_parts
71
- end
72
-
73
- private
74
-
75
- def before_parts(scope)
76
- case scope
77
- when :each; before_each_parts
78
- when :all; before_all_parts
79
- when :suite; before_suite_parts
80
- end
81
- end
82
-
83
- def after_parts(scope)
84
- case scope
85
- when :each; after_each_parts
86
- when :all; after_all_parts
87
- when :suite; after_suite_parts
88
- end
89
- end
90
-
91
- end
92
- end
93
- end
@@ -1,25 +0,0 @@
1
- module Spec
2
- module Example
3
- class ExamplePendingError < StandardError; end
4
-
5
- class NotYetImplementedError < ExamplePendingError
6
- MESSAGE = "Not Yet Implemented"
7
- def initialize
8
- super(MESSAGE)
9
- end
10
- end
11
-
12
- class PendingExampleFixedError < StandardError; end
13
-
14
- class NoDescriptionError < ArgumentError
15
- class << self
16
- def message(kind, location)
17
- "No description supplied for #{kind} declared on #{location}"
18
- end
19
- end
20
- def initialize(kind, location)
21
- super(self.class.message(kind, location))
22
- end
23
- end
24
- end
25
- end
@@ -1,10 +0,0 @@
1
- module Spec
2
- module Example
3
- # Base class for customized example groups. Use this if you
4
- # want to make a custom example group.
5
- class ExampleGroup
6
- extend Spec::Example::ExampleGroupMethods
7
- include Spec::Example::ExampleMethods
8
- end
9
- end
10
- end
@@ -1,82 +0,0 @@
1
- module Spec
2
- module Example
3
-
4
- class ExampleGroupFactory
5
- module ClassMethods
6
- include Spec::Example::ArgsAndOptions
7
-
8
- def reset
9
- @example_group_types = nil
10
- default(ExampleGroup)
11
- end
12
-
13
- def example_group_creation_listeners
14
- @example_group_creation_listeners ||= []
15
- end
16
-
17
- def register_example_group(klass)
18
- example_group_creation_listeners.each do |listener|
19
- listener.register_example_group(klass)
20
- end
21
- end
22
-
23
- def create_shared_example_group(*args, &example_group_block) # :nodoc:
24
- ::Spec::Example::SharedExampleGroup.register(*args, &example_group_block)
25
- end
26
-
27
- def create_example_group(*args, &block)
28
- raise ArgumentError if args.empty? || block.nil?
29
- add_options(args)
30
- superclass = determine_superclass(args.last)
31
- superclass.describe(*args, &block)
32
- end
33
-
34
- # Registers an example group class +klass+ with the symbol +type+. For
35
- # example:
36
- #
37
- # Spec::Example::ExampleGroupFactory.register(:farm, FarmExampleGroup)
38
- #
39
- # With that you can append a hash with :type => :farm to the describe
40
- # method and it will load an instance of FarmExampleGroup.
41
- #
42
- # describe Pig, :type => :farm do
43
- # ...
44
- #
45
- # If you don't use the hash explicitly, <tt>describe</tt> will
46
- # implicitly use an instance of FarmExampleGroup for any file loaded
47
- # from the <tt>./spec/farm</tt> directory.
48
- def register(key, example_group_class)
49
- @example_group_types[key.to_sym] = example_group_class
50
- end
51
-
52
- # Sets the default ExampleGroup class
53
- def default(example_group_class)
54
- Spec.__send__ :remove_const, :ExampleGroup if Spec.const_defined?(:ExampleGroup)
55
- Spec.const_set(:ExampleGroup, example_group_class)
56
- old = @example_group_types
57
- @example_group_types = Hash.new(example_group_class)
58
- @example_group_types.merge!(old) if old
59
- end
60
-
61
- def [](key)
62
- @example_group_types[key]
63
- end
64
-
65
- protected
66
-
67
- def determine_superclass(opts)
68
- if type = opts[:type]
69
- self[type]
70
- elsif opts[:location] =~ /spec(\\|\/)(#{@example_group_types.keys.sort_by{|k| k.to_s.length}.reverse.join('|')})/
71
- self[$2 == '' ? nil : $2.to_sym]
72
- else
73
- self[nil]
74
- end
75
- end
76
-
77
- end
78
- extend ClassMethods
79
- self.reset
80
- end
81
- end
82
- end
@@ -1,53 +0,0 @@
1
- module Spec
2
- module Example
3
- class ExampleGroupHierarchy < Array
4
- def initialize(example_group_class)
5
- push example_group_class
6
- if example_group_class.respond_to?(:superclass) && example_group_class.superclass.respond_to?(:example_group_hierarchy)
7
- unshift example_group_class.superclass.example_group_hierarchy
8
- flatten!
9
- end
10
- end
11
-
12
- def run_before_all(example)
13
- example.eval_each_fail_fast(before_all_parts)
14
- end
15
-
16
- def run_before_each(example)
17
- example.eval_each_fail_fast(before_each_parts)
18
- end
19
-
20
- def run_after_each(example)
21
- example.eval_each_fail_slow(after_each_parts)
22
- end
23
-
24
- def run_after_all(example)
25
- example.eval_each_fail_slow(after_all_parts)
26
- end
27
-
28
- def before_all_parts
29
- @before_all_parts ||= collect {|klass| klass.before_all_parts}.flatten
30
- end
31
-
32
- def before_each_parts
33
- @before_each_parts ||= collect {|klass| klass.before_each_parts}.flatten
34
- end
35
-
36
- def after_each_parts
37
- @after_each_parts ||= reverse.collect {|klass| klass.after_each_parts}.flatten
38
- end
39
-
40
- def after_all_parts
41
- @after_all_parts ||= reverse.collect {|klass| klass.after_all_parts}.flatten
42
- end
43
-
44
- def nested_descriptions
45
- @nested_descriptions ||= collect {|eg| nested_description_from(eg) == "" ? nil : nested_description_from(eg) }.compact
46
- end
47
-
48
- def nested_description_from(example_group)
49
- example_group.description_args.join
50
- end
51
- end
52
- end
53
- end
@@ -1,287 +0,0 @@
1
- module Spec
2
- module Example
3
-
4
- module ExampleGroupMethods
5
- class << self
6
- attr_accessor :matcher_class
7
-
8
- def build_description_from(*args)
9
- text = args.inject("") do |description, arg|
10
- description << " " unless (description == "" || arg.to_s =~ /^(\s|\.|#)/)
11
- description << arg.to_s
12
- end
13
- text == "" ? nil : text
14
- end
15
- end
16
-
17
- include Spec::Example::BeforeAndAfterHooks
18
- include Spec::Example::Subject::ExampleGroupMethods
19
- include Spec::Example::PredicateMatchers
20
- include Spec::Example::ArgsAndOptions
21
-
22
- attr_reader :location
23
-
24
- def options # :nodoc:
25
- @options ||= {}
26
- end
27
-
28
- def inherited(klass) # :nodoc:
29
- super
30
- ExampleGroupFactory.register_example_group(klass)
31
- end
32
-
33
- # Makes the describe/it syntax available from a class. For example:
34
- #
35
- # class StackSpec < Spec::ExampleGroup
36
- # describe Stack, "with no elements"
37
- #
38
- # before
39
- # @stack = Stack.new
40
- # end
41
- #
42
- # it "should raise on pop" do
43
- # lambda{ @stack.pop }.should raise_error
44
- # end
45
- # end
46
- #
47
- def describe(*args, &example_group_block)
48
- raise Spec::Example::NoDescriptionError.new("example group", caller(0)[1]) if args.empty?
49
- if example_group_block
50
- options = add_options(args)
51
- set_location(options, caller(0)[1])
52
- if options[:shared]
53
- ExampleGroupFactory.create_shared_example_group(*args, &example_group_block)
54
- else
55
- subclass(*args, &example_group_block)
56
- end
57
- else
58
- set_description(*args)
59
- end
60
- end
61
- alias :context :describe
62
-
63
- # Use this to pull in examples from shared example groups.
64
- def it_should_behave_like(*shared_example_groups)
65
- shared_example_groups.each do |group|
66
- include_shared_example_group(group)
67
- end
68
- end
69
-
70
- # Creates an instance of the current example group class and adds it to
71
- # a collection of examples of the current example group.
72
- def example(description=nil, options={}, backtrace=nil, &implementation)
73
- example_proxy = ExampleProxy.new(description, options, backtrace || caller(0)[1])
74
- example_proxies << example_proxy
75
- example_implementations[example_proxy] = implementation || pending_implementation
76
- example_proxy
77
- end
78
-
79
- def pending_implementation
80
- lambda {|*args| raise(Spec::Example::NotYetImplementedError) }
81
- end
82
-
83
- alias_method :it, :example
84
- alias_method :specify, :example
85
-
86
- # Use this to temporarily disable an example.
87
- def xexample(description=nil, opts={}, &block)
88
- Kernel.warn("Example disabled: #{description}")
89
- end
90
-
91
- alias_method :xit, :xexample
92
- alias_method :xspecify, :xexample
93
-
94
- def run(run_options)
95
- examples = examples_to_run(run_options)
96
- notify(run_options.reporter) unless examples.empty?
97
- return true if examples.empty?
98
- return dry_run(examples, run_options) if run_options.dry_run?
99
-
100
- define_methods_from_predicate_matchers
101
-
102
- success, before_all_instance_variables = run_before_all(run_options)
103
- success, after_all_instance_variables = run_examples(success, before_all_instance_variables, examples, run_options)
104
- success = run_after_all(success, after_all_instance_variables, run_options)
105
- end
106
-
107
- def set_description(*args)
108
- @description_args, @options = args_and_options(*args)
109
- @backtrace = caller(1)
110
- @location = File.expand_path(options[:location]) if options[:location]
111
- self
112
- end
113
-
114
- def notify(reporter) # :nodoc:
115
- reporter.example_group_started(ExampleGroupProxy.new(self))
116
- end
117
-
118
- def description
119
- @description ||= ExampleGroupMethods.build_description_from(*description_parts) || to_s
120
- end
121
-
122
- def described_type
123
- @described_type ||= description_parts.reverse.find {|part| part.is_a?(Module)}
124
- end
125
-
126
- def described_class
127
- @described_class ||= Class === described_type ? described_type : nil
128
- end
129
-
130
- def description_args
131
- @description_args ||= []
132
- end
133
-
134
- def description_parts #:nodoc:
135
- @description_parts ||= example_group_hierarchy.inject([]) do |parts, example_group_class|
136
- [parts << example_group_class.description_args].flatten
137
- end
138
- end
139
-
140
- def example_proxies # :nodoc:
141
- @example_proxies ||= []
142
- end
143
-
144
- def example_implementations # :nodoc:
145
- @example_implementations ||= {}
146
- end
147
-
148
- def examples(run_options=nil) #:nodoc:
149
- (run_options && run_options.reverse) ? example_proxies.reverse : example_proxies
150
- end
151
-
152
- def number_of_examples #:nodoc:
153
- example_proxies.length
154
- end
155
-
156
- def example_group_hierarchy
157
- @example_group_hierarchy ||= ExampleGroupHierarchy.new(self)
158
- end
159
-
160
- def nested_descriptions
161
- example_group_hierarchy.nested_descriptions
162
- end
163
-
164
- def include_constants_in(mod)
165
- include mod if (Spec::Ruby.version.to_f >= 1.9) & (Module === mod) & !(Class === mod)
166
- end
167
-
168
- def let(name, &block)
169
- define_method name do
170
- @assignments ||= {}
171
- @assignments[name] ||= instance_eval(&block)
172
- end
173
- end
174
-
175
- def let!(name, &block)
176
- let(name, &block)
177
- before { __send__(name) }
178
- end
179
-
180
- private
181
-
182
- def subclass(*args, &example_group_block)
183
- @class_count ||= 0
184
- @class_count += 1
185
- klass = const_set("Subclass_#{@class_count}", Class.new(self))
186
- klass.set_description(*args)
187
- klass.include_constants_in(args.last[:scope])
188
- klass.module_eval(&example_group_block)
189
- klass
190
- end
191
-
192
- def dry_run(examples, run_options)
193
- examples.each do |example|
194
- run_options.reporter.example_started(example)
195
- run_options.reporter.example_finished(example)
196
- end
197
- end
198
-
199
- def run_before_all(run_options)
200
- return [true,{}] if example_group_hierarchy.before_all_parts.empty?
201
- example_proxy = ExampleProxy.new("before(:all)")
202
- before_all = new(example_proxy)
203
- begin
204
- example_group_hierarchy.run_before_all(before_all)
205
- return [true, before_all.instance_variable_hash]
206
- rescue Exception => e
207
- run_options.reporter.example_failed(example_proxy, e)
208
- return [false, before_all.instance_variable_hash]
209
- end
210
- end
211
-
212
- def run_examples(success, instance_variables, examples, run_options)
213
- return [success, instance_variables] unless success
214
-
215
- after_all_instance_variables = instance_variables
216
-
217
- examples.each do |example|
218
- example_group_instance = new(example, &example_implementations[example])
219
- success &= example_group_instance.execute(run_options, instance_variables)
220
- after_all_instance_variables = example_group_instance.instance_variable_hash
221
- end
222
-
223
- return [success, after_all_instance_variables]
224
- end
225
-
226
- def run_after_all(success, instance_variables, run_options)
227
- return success if example_group_hierarchy.after_all_parts.empty?
228
- example_proxy = ExampleProxy.new("after(:all)")
229
- after_all = new(example_proxy)
230
- after_all.set_instance_variables_from_hash(instance_variables)
231
- example_group_hierarchy.run_after_all(after_all)
232
- success
233
- rescue Exception => e
234
- run_options.reporter.example_failed(example_proxy, e)
235
- false
236
- end
237
-
238
- def examples_to_run(run_options)
239
- return example_proxies unless examples_were_specified?(run_options)
240
- if run_options.line_number_requested?
241
- if location =~ /:#{run_options.example_line}:?/
242
- example_proxies
243
- else
244
- example_proxies.select {|proxy| proxy.location =~ /:#{run_options.example_line}:?/}
245
- end
246
- else
247
- example_proxies.reject do |proxy|
248
- matcher = ExampleGroupMethods.matcher_class.
249
- new(description.to_s, proxy.description)
250
- !matcher.matches?(run_options.examples)
251
- end
252
- end
253
- end
254
-
255
- def examples_were_specified?(run_options)
256
- !run_options.examples.empty?
257
- end
258
-
259
- def method_added(name) # :nodoc:
260
- example(name.to_s, {}, caller(0)[1]) {__send__ name.to_s} if example_method?(name.to_s)
261
- end
262
-
263
- def example_method?(method_name)
264
- should_method?(method_name)
265
- end
266
-
267
- def should_method?(method_name)
268
- !(method_name =~ /^should(_not)?$/) &&
269
- method_name =~ /^should/ &&
270
- instance_method(method_name).arity < 1
271
- end
272
-
273
- def include_shared_example_group(shared_example_group)
274
- case shared_example_group
275
- when SharedExampleGroup
276
- include shared_example_group
277
- else
278
- unless example_group = SharedExampleGroup.find(shared_example_group)
279
- raise RuntimeError.new("Shared Example Group '#{shared_example_group}' can not be found")
280
- end
281
- include(example_group)
282
- end
283
- end
284
- end
285
-
286
- end
287
- end