rspec 0.0.10 → 0.1.0

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 (395) hide show
  1. data/CHANGES +8 -0
  2. data/README +20 -0
  3. data/Rakefile.rb +122 -0
  4. data/lib/rspec.rb +9 -0
  5. data/lib/spec.rb +4 -29
  6. data/lib/spec/context.rb +61 -0
  7. data/lib/spec/{mocks/errors.rb → exceptions.rb} +5 -4
  8. data/lib/spec/expectations.rb +61 -50
  9. data/lib/spec/mock.rb +104 -0
  10. data/lib/spec/text_runner.rb +84 -0
  11. metadata +48 -452
  12. data/.autotest +0 -3
  13. data/.gitignore +0 -7
  14. data/History.txt +0 -1104
  15. data/MIT-LICENSE +0 -20
  16. data/Manifest.txt +0 -387
  17. data/README.txt +0 -36
  18. data/Rakefile +0 -88
  19. data/TODO +0 -1
  20. data/bin/autospec +0 -3
  21. data/bin/spec +0 -4
  22. data/bin/spec_translator +0 -8
  23. data/examples/pure/autogenerated_docstrings_example.rb +0 -19
  24. data/examples/pure/before_and_after_example.rb +0 -40
  25. data/examples/pure/behave_as_example.rb +0 -45
  26. data/examples/pure/custom_expectation_matchers.rb +0 -54
  27. data/examples/pure/custom_formatter.rb +0 -12
  28. data/examples/pure/dynamic_spec.rb +0 -9
  29. data/examples/pure/file_accessor.rb +0 -19
  30. data/examples/pure/file_accessor_spec.rb +0 -38
  31. data/examples/pure/greeter_spec.rb +0 -31
  32. data/examples/pure/helper_method_example.rb +0 -14
  33. data/examples/pure/io_processor.rb +0 -8
  34. data/examples/pure/io_processor_spec.rb +0 -21
  35. data/examples/pure/legacy_spec.rb +0 -11
  36. data/examples/pure/mocking_example.rb +0 -27
  37. data/examples/pure/multi_threaded_behaviour_runner.rb +0 -28
  38. data/examples/pure/nested_classes_example.rb +0 -36
  39. data/examples/pure/partial_mock_example.rb +0 -29
  40. data/examples/pure/pending_example.rb +0 -20
  41. data/examples/pure/predicate_example.rb +0 -27
  42. data/examples/pure/priority.txt +0 -1
  43. data/examples/pure/shared_example_group_example.rb +0 -81
  44. data/examples/pure/shared_stack_examples.rb +0 -38
  45. data/examples/pure/spec_helper.rb +0 -3
  46. data/examples/pure/stack.rb +0 -36
  47. data/examples/pure/stack_spec.rb +0 -63
  48. data/examples/pure/stack_spec_with_nested_example_groups.rb +0 -67
  49. data/examples/pure/stubbing_example.rb +0 -69
  50. data/examples/stories/adder.rb +0 -13
  51. data/examples/stories/addition +0 -34
  52. data/examples/stories/addition.rb +0 -9
  53. data/examples/stories/calculator.rb +0 -65
  54. data/examples/stories/game-of-life/.loadpath +0 -5
  55. data/examples/stories/game-of-life/README.txt +0 -21
  56. data/examples/stories/game-of-life/behaviour/everything.rb +0 -6
  57. data/examples/stories/game-of-life/behaviour/examples/examples.rb +0 -3
  58. data/examples/stories/game-of-life/behaviour/examples/game_behaviour.rb +0 -35
  59. data/examples/stories/game-of-life/behaviour/examples/grid_behaviour.rb +0 -66
  60. data/examples/stories/game-of-life/behaviour/stories/CellsWithLessThanTwoNeighboursDie.story +0 -21
  61. data/examples/stories/game-of-life/behaviour/stories/CellsWithMoreThanThreeNeighboursDie.story +0 -21
  62. data/examples/stories/game-of-life/behaviour/stories/EmptySpacesWithThreeNeighboursCreateACell.story +0 -42
  63. data/examples/stories/game-of-life/behaviour/stories/ICanCreateACell.story +0 -42
  64. data/examples/stories/game-of-life/behaviour/stories/ICanKillACell.story +0 -17
  65. data/examples/stories/game-of-life/behaviour/stories/TheGridWraps.story +0 -53
  66. data/examples/stories/game-of-life/behaviour/stories/create_a_cell.rb +0 -52
  67. data/examples/stories/game-of-life/behaviour/stories/helper.rb +0 -6
  68. data/examples/stories/game-of-life/behaviour/stories/kill_a_cell.rb +0 -26
  69. data/examples/stories/game-of-life/behaviour/stories/steps.rb +0 -5
  70. data/examples/stories/game-of-life/behaviour/stories/stories.rb +0 -3
  71. data/examples/stories/game-of-life/behaviour/stories/stories.txt +0 -22
  72. data/examples/stories/game-of-life/life.rb +0 -3
  73. data/examples/stories/game-of-life/life/game.rb +0 -23
  74. data/examples/stories/game-of-life/life/grid.rb +0 -43
  75. data/examples/stories/helper.rb +0 -9
  76. data/examples/stories/steps/addition_steps.rb +0 -18
  77. data/failing_examples/README.txt +0 -7
  78. data/failing_examples/diffing_spec.rb +0 -36
  79. data/failing_examples/failing_autogenerated_docstrings_example.rb +0 -19
  80. data/failing_examples/failure_in_setup.rb +0 -10
  81. data/failing_examples/failure_in_teardown.rb +0 -10
  82. data/failing_examples/mocking_example.rb +0 -40
  83. data/failing_examples/mocking_with_flexmock.rb +0 -26
  84. data/failing_examples/mocking_with_mocha.rb +0 -25
  85. data/failing_examples/mocking_with_rr.rb +0 -27
  86. data/failing_examples/partial_mock_example.rb +0 -20
  87. data/failing_examples/predicate_example.rb +0 -29
  88. data/failing_examples/raising_example.rb +0 -47
  89. data/failing_examples/spec_helper.rb +0 -3
  90. data/failing_examples/syntax_error_example.rb +0 -7
  91. data/failing_examples/team_spec.rb +0 -44
  92. data/failing_examples/timeout_behaviour.rb +0 -7
  93. data/init.rb +0 -9
  94. data/lib/autotest/discover.rb +0 -3
  95. data/lib/autotest/rspec.rb +0 -72
  96. data/lib/spec/adapters.rb +0 -1
  97. data/lib/spec/adapters/ruby_engine.rb +0 -26
  98. data/lib/spec/adapters/ruby_engine/mri.rb +0 -8
  99. data/lib/spec/adapters/ruby_engine/rubinius.rb +0 -8
  100. data/lib/spec/example.rb +0 -12
  101. data/lib/spec/example/configuration.rb +0 -158
  102. data/lib/spec/example/errors.rb +0 -9
  103. data/lib/spec/example/example_group.rb +0 -17
  104. data/lib/spec/example/example_group_factory.rb +0 -64
  105. data/lib/spec/example/example_group_methods.rb +0 -440
  106. data/lib/spec/example/example_matcher.rb +0 -44
  107. data/lib/spec/example/example_methods.rb +0 -112
  108. data/lib/spec/example/module_inclusion_warnings.rb +0 -38
  109. data/lib/spec/example/module_reopening_fix.rb +0 -21
  110. data/lib/spec/example/pending.rb +0 -18
  111. data/lib/spec/example/shared_example_group.rb +0 -58
  112. data/lib/spec/expectations/differs/default.rb +0 -66
  113. data/lib/spec/expectations/errors.rb +0 -12
  114. data/lib/spec/expectations/extensions.rb +0 -2
  115. data/lib/spec/expectations/extensions/object.rb +0 -63
  116. data/lib/spec/expectations/extensions/string_and_symbol.rb +0 -17
  117. data/lib/spec/expectations/handler.rb +0 -62
  118. data/lib/spec/extensions.rb +0 -4
  119. data/lib/spec/extensions/class.rb +0 -24
  120. data/lib/spec/extensions/main.rb +0 -102
  121. data/lib/spec/extensions/metaclass.rb +0 -7
  122. data/lib/spec/extensions/object.rb +0 -6
  123. data/lib/spec/interop/test.rb +0 -12
  124. data/lib/spec/interop/test/unit/autorunner.rb +0 -6
  125. data/lib/spec/interop/test/unit/testcase.rb +0 -61
  126. data/lib/spec/interop/test/unit/testresult.rb +0 -6
  127. data/lib/spec/interop/test/unit/testsuite_adapter.rb +0 -34
  128. data/lib/spec/interop/test/unit/ui/console/testrunner.rb +0 -61
  129. data/lib/spec/matchers.rb +0 -156
  130. data/lib/spec/matchers/be.rb +0 -224
  131. data/lib/spec/matchers/be_close.rb +0 -37
  132. data/lib/spec/matchers/change.rb +0 -148
  133. data/lib/spec/matchers/eql.rb +0 -43
  134. data/lib/spec/matchers/equal.rb +0 -43
  135. data/lib/spec/matchers/exist.rb +0 -17
  136. data/lib/spec/matchers/has.rb +0 -34
  137. data/lib/spec/matchers/have.rb +0 -149
  138. data/lib/spec/matchers/include.rb +0 -70
  139. data/lib/spec/matchers/match.rb +0 -41
  140. data/lib/spec/matchers/operator_matcher.rb +0 -73
  141. data/lib/spec/matchers/raise_error.rb +0 -132
  142. data/lib/spec/matchers/respond_to.rb +0 -45
  143. data/lib/spec/matchers/satisfy.rb +0 -47
  144. data/lib/spec/matchers/simple_matcher.rb +0 -132
  145. data/lib/spec/matchers/throw_symbol.rb +0 -74
  146. data/lib/spec/mocks.rb +0 -211
  147. data/lib/spec/mocks/argument_constraint_matchers.rb +0 -31
  148. data/lib/spec/mocks/argument_expectation.rb +0 -216
  149. data/lib/spec/mocks/error_generator.rb +0 -84
  150. data/lib/spec/mocks/extensions.rb +0 -1
  151. data/lib/spec/mocks/extensions/object.rb +0 -3
  152. data/lib/spec/mocks/framework.rb +0 -15
  153. data/lib/spec/mocks/message_expectation.rb +0 -290
  154. data/lib/spec/mocks/methods.rb +0 -39
  155. data/lib/spec/mocks/mock.rb +0 -56
  156. data/lib/spec/mocks/order_group.rb +0 -29
  157. data/lib/spec/mocks/proxy.rb +0 -184
  158. data/lib/spec/mocks/space.rb +0 -28
  159. data/lib/spec/mocks/spec_methods.rb +0 -38
  160. data/lib/spec/rake/spectask.rb +0 -227
  161. data/lib/spec/rake/verify_rcov.rb +0 -52
  162. data/lib/spec/runner.rb +0 -201
  163. data/lib/spec/runner/backtrace_tweaker.rb +0 -57
  164. data/lib/spec/runner/class_and_arguments_parser.rb +0 -16
  165. data/lib/spec/runner/command_line.rb +0 -28
  166. data/lib/spec/runner/drb_command_line.rb +0 -20
  167. data/lib/spec/runner/example_group_runner.rb +0 -59
  168. data/lib/spec/runner/formatter/base_formatter.rb +0 -77
  169. data/lib/spec/runner/formatter/base_text_formatter.rb +0 -130
  170. data/lib/spec/runner/formatter/failing_example_groups_formatter.rb +0 -27
  171. data/lib/spec/runner/formatter/failing_examples_formatter.rb +0 -20
  172. data/lib/spec/runner/formatter/html_formatter.rb +0 -337
  173. data/lib/spec/runner/formatter/nested_text_formatter.rb +0 -65
  174. data/lib/spec/runner/formatter/profile_formatter.rb +0 -51
  175. data/lib/spec/runner/formatter/progress_bar_formatter.rb +0 -34
  176. data/lib/spec/runner/formatter/snippet_extractor.rb +0 -52
  177. data/lib/spec/runner/formatter/specdoc_formatter.rb +0 -39
  178. data/lib/spec/runner/formatter/story/html_formatter.rb +0 -161
  179. data/lib/spec/runner/formatter/story/plain_text_formatter.rb +0 -188
  180. data/lib/spec/runner/formatter/text_mate_formatter.rb +0 -16
  181. data/lib/spec/runner/heckle_runner.rb +0 -72
  182. data/lib/spec/runner/heckle_runner_unsupported.rb +0 -10
  183. data/lib/spec/runner/option_parser.rb +0 -203
  184. data/lib/spec/runner/options.rb +0 -309
  185. data/lib/spec/runner/reporter.rb +0 -147
  186. data/lib/spec/runner/spec_parser.rb +0 -71
  187. data/lib/spec/story.rb +0 -10
  188. data/lib/spec/story/extensions.rb +0 -3
  189. data/lib/spec/story/extensions/main.rb +0 -86
  190. data/lib/spec/story/extensions/regexp.rb +0 -9
  191. data/lib/spec/story/extensions/string.rb +0 -9
  192. data/lib/spec/story/given_scenario.rb +0 -14
  193. data/lib/spec/story/runner.rb +0 -60
  194. data/lib/spec/story/runner/plain_text_story_runner.rb +0 -48
  195. data/lib/spec/story/runner/scenario_collector.rb +0 -18
  196. data/lib/spec/story/runner/scenario_runner.rb +0 -54
  197. data/lib/spec/story/runner/story_mediator.rb +0 -137
  198. data/lib/spec/story/runner/story_parser.rb +0 -247
  199. data/lib/spec/story/runner/story_runner.rb +0 -70
  200. data/lib/spec/story/scenario.rb +0 -14
  201. data/lib/spec/story/step.rb +0 -70
  202. data/lib/spec/story/step_group.rb +0 -89
  203. data/lib/spec/story/step_mother.rb +0 -37
  204. data/lib/spec/story/story.rb +0 -39
  205. data/lib/spec/story/world.rb +0 -128
  206. data/lib/spec/translator.rb +0 -114
  207. data/lib/spec/version.rb +0 -13
  208. data/plugins/mock_frameworks/flexmock.rb +0 -23
  209. data/plugins/mock_frameworks/mocha.rb +0 -19
  210. data/plugins/mock_frameworks/rr.rb +0 -21
  211. data/plugins/mock_frameworks/rspec.rb +0 -20
  212. data/rake_tasks/examples.rake +0 -7
  213. data/rake_tasks/examples_with_rcov.rake +0 -9
  214. data/rake_tasks/failing_examples_with_html.rake +0 -9
  215. data/rake_tasks/verify_rcov.rake +0 -7
  216. data/spec/README.jruby +0 -15
  217. data/spec/autotest/discover_spec.rb +0 -19
  218. data/spec/autotest/rspec_spec.rb +0 -206
  219. data/spec/autotest_helper.rb +0 -6
  220. data/spec/autotest_matchers.rb +0 -47
  221. data/spec/rspec_suite.rb +0 -7
  222. data/spec/ruby_forker.rb +0 -13
  223. data/spec/spec.opts +0 -6
  224. data/spec/spec/adapters/ruby_engine_spec.rb +0 -16
  225. data/spec/spec/example/configuration_spec.rb +0 -282
  226. data/spec/spec/example/example_group/described_module_spec.rb +0 -20
  227. data/spec/spec/example/example_group/warning_messages_spec.rb +0 -76
  228. data/spec/spec/example/example_group_class_definition_spec.rb +0 -48
  229. data/spec/spec/example/example_group_factory_spec.rb +0 -144
  230. data/spec/spec/example/example_group_methods_spec.rb +0 -572
  231. data/spec/spec/example/example_group_spec.rb +0 -723
  232. data/spec/spec/example/example_matcher_spec.rb +0 -96
  233. data/spec/spec/example/example_methods_spec.rb +0 -126
  234. data/spec/spec/example/example_runner_spec.rb +0 -194
  235. data/spec/spec/example/example_spec.rb +0 -53
  236. data/spec/spec/example/nested_example_group_spec.rb +0 -71
  237. data/spec/spec/example/pending_module_spec.rb +0 -42
  238. data/spec/spec/example/predicate_matcher_spec.rb +0 -21
  239. data/spec/spec/example/shared_example_group_spec.rb +0 -265
  240. data/spec/spec/example/subclassing_example_group_spec.rb +0 -25
  241. data/spec/spec/expectations/differs/default_spec.rb +0 -127
  242. data/spec/spec/expectations/extensions/object_spec.rb +0 -107
  243. data/spec/spec/expectations/fail_with_spec.rb +0 -71
  244. data/spec/spec/extensions/main_spec.rb +0 -76
  245. data/spec/spec/interop/test/unit/resources/spec_that_fails.rb +0 -10
  246. data/spec/spec/interop/test/unit/resources/spec_that_passes.rb +0 -10
  247. data/spec/spec/interop/test/unit/resources/spec_with_errors.rb +0 -10
  248. data/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +0 -10
  249. data/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +0 -10
  250. data/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +0 -10
  251. data/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +0 -38
  252. data/spec/spec/interop/test/unit/spec_spec.rb +0 -45
  253. data/spec/spec/interop/test/unit/test_unit_spec_helper.rb +0 -14
  254. data/spec/spec/interop/test/unit/testcase_spec.rb +0 -45
  255. data/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +0 -9
  256. data/spec/spec/matchers/be_close_spec.rb +0 -39
  257. data/spec/spec/matchers/be_spec.rb +0 -248
  258. data/spec/spec/matchers/change_spec.rb +0 -317
  259. data/spec/spec/matchers/description_generation_spec.rb +0 -153
  260. data/spec/spec/matchers/eql_spec.rb +0 -28
  261. data/spec/spec/matchers/equal_spec.rb +0 -28
  262. data/spec/spec/matchers/exist_spec.rb +0 -57
  263. data/spec/spec/matchers/handler_spec.rb +0 -150
  264. data/spec/spec/matchers/has_spec.rb +0 -53
  265. data/spec/spec/matchers/have_spec.rb +0 -293
  266. data/spec/spec/matchers/include_spec.rb +0 -45
  267. data/spec/spec/matchers/match_spec.rb +0 -37
  268. data/spec/spec/matchers/matcher_methods_spec.rb +0 -78
  269. data/spec/spec/matchers/mock_constraint_matchers_spec.rb +0 -24
  270. data/spec/spec/matchers/operator_matcher_spec.rb +0 -168
  271. data/spec/spec/matchers/raise_error_spec.rb +0 -315
  272. data/spec/spec/matchers/respond_to_spec.rb +0 -54
  273. data/spec/spec/matchers/satisfy_spec.rb +0 -36
  274. data/spec/spec/matchers/simple_matcher_spec.rb +0 -93
  275. data/spec/spec/matchers/throw_symbol_spec.rb +0 -54
  276. data/spec/spec/mocks/any_number_of_times_spec.rb +0 -29
  277. data/spec/spec/mocks/argument_expectation_spec.rb +0 -23
  278. data/spec/spec/mocks/at_least_spec.rb +0 -97
  279. data/spec/spec/mocks/at_most_spec.rb +0 -93
  280. data/spec/spec/mocks/bug_report_10260_spec.rb +0 -8
  281. data/spec/spec/mocks/bug_report_10263_spec.rb +0 -24
  282. data/spec/spec/mocks/bug_report_11545_spec.rb +0 -33
  283. data/spec/spec/mocks/bug_report_15719_spec.rb +0 -30
  284. data/spec/spec/mocks/bug_report_7611_spec.rb +0 -19
  285. data/spec/spec/mocks/bug_report_7805_spec.rb +0 -22
  286. data/spec/spec/mocks/bug_report_8165_spec.rb +0 -31
  287. data/spec/spec/mocks/bug_report_8302_spec.rb +0 -26
  288. data/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +0 -130
  289. data/spec/spec/mocks/hash_including_matcher_spec.rb +0 -32
  290. data/spec/spec/mocks/mock_ordering_spec.rb +0 -84
  291. data/spec/spec/mocks/mock_space_spec.rb +0 -54
  292. data/spec/spec/mocks/mock_spec.rb +0 -494
  293. data/spec/spec/mocks/multiple_return_value_spec.rb +0 -113
  294. data/spec/spec/mocks/null_object_mock_spec.rb +0 -40
  295. data/spec/spec/mocks/once_counts_spec.rb +0 -53
  296. data/spec/spec/mocks/options_hash_spec.rb +0 -45
  297. data/spec/spec/mocks/partial_mock_spec.rb +0 -142
  298. data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +0 -66
  299. data/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +0 -175
  300. data/spec/spec/mocks/precise_counts_spec.rb +0 -52
  301. data/spec/spec/mocks/record_messages_spec.rb +0 -26
  302. data/spec/spec/mocks/stub_spec.rb +0 -181
  303. data/spec/spec/mocks/twice_counts_spec.rb +0 -67
  304. data/spec/spec/package/bin_spec_spec.rb +0 -14
  305. data/spec/spec/runner/class_and_argument_parser_spec.rb +0 -23
  306. data/spec/spec/runner/command_line_spec.rb +0 -147
  307. data/spec/spec/runner/drb_command_line_spec.rb +0 -92
  308. data/spec/spec/runner/empty_file.txt +0 -0
  309. data/spec/spec/runner/examples.txt +0 -2
  310. data/spec/spec/runner/execution_context_spec.rb +0 -37
  311. data/spec/spec/runner/failed.txt +0 -3
  312. data/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +0 -45
  313. data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +0 -33
  314. data/spec/spec/runner/formatter/html_formatted-1.8.4.html +0 -365
  315. data/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +0 -387
  316. data/spec/spec/runner/formatter/html_formatted-1.8.5.html +0 -371
  317. data/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +0 -381
  318. data/spec/spec/runner/formatter/html_formatted-1.8.6.html +0 -370
  319. data/spec/spec/runner/formatter/html_formatter_spec.rb +0 -63
  320. data/spec/spec/runner/formatter/nested_text_formatter_spec.rb +0 -333
  321. data/spec/spec/runner/formatter/profile_formatter_spec.rb +0 -65
  322. data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +0 -137
  323. data/spec/spec/runner/formatter/snippet_extractor_spec.rb +0 -18
  324. data/spec/spec/runner/formatter/spec_mate_formatter_spec.rb +0 -103
  325. data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +0 -158
  326. data/spec/spec/runner/formatter/story/html_formatter_spec.rb +0 -87
  327. data/spec/spec/runner/formatter/story/plain_text_formatter_spec.rb +0 -548
  328. data/spec/spec/runner/formatter/text_mate_formatted-1.8.4.html +0 -365
  329. data/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +0 -370
  330. data/spec/spec/runner/heckle_runner_spec.rb +0 -78
  331. data/spec/spec/runner/heckler_spec.rb +0 -13
  332. data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +0 -45
  333. data/spec/spec/runner/option_parser_spec.rb +0 -394
  334. data/spec/spec/runner/options_spec.rb +0 -450
  335. data/spec/spec/runner/output_one_time_fixture.rb +0 -7
  336. data/spec/spec/runner/output_one_time_fixture_runner.rb +0 -8
  337. data/spec/spec/runner/output_one_time_spec.rb +0 -16
  338. data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +0 -56
  339. data/spec/spec/runner/reporter_spec.rb +0 -192
  340. data/spec/spec/runner/resources/a_bar.rb +0 -0
  341. data/spec/spec/runner/resources/a_foo.rb +0 -0
  342. data/spec/spec/runner/resources/a_spec.rb +0 -1
  343. data/spec/spec/runner/spec.opts +0 -2
  344. data/spec/spec/runner/spec_drb.opts +0 -1
  345. data/spec/spec/runner/spec_parser/spec_parser_fixture.rb +0 -70
  346. data/spec/spec/runner/spec_parser_spec.rb +0 -85
  347. data/spec/spec/runner/spec_spaced.opts +0 -2
  348. data/spec/spec/runner_spec.rb +0 -11
  349. data/spec/spec/spec_classes.rb +0 -133
  350. data/spec/spec/story/builders.rb +0 -46
  351. data/spec/spec/story/extensions/main_spec.rb +0 -161
  352. data/spec/spec/story/extensions_spec.rb +0 -14
  353. data/spec/spec/story/given_scenario_spec.rb +0 -27
  354. data/spec/spec/story/runner/plain_text_story_runner_spec.rb +0 -93
  355. data/spec/spec/story/runner/scenario_collector_spec.rb +0 -27
  356. data/spec/spec/story/runner/scenario_runner_spec.rb +0 -214
  357. data/spec/spec/story/runner/story_mediator_spec.rb +0 -143
  358. data/spec/spec/story/runner/story_parser_spec.rb +0 -401
  359. data/spec/spec/story/runner/story_runner_spec.rb +0 -294
  360. data/spec/spec/story/runner_spec.rb +0 -93
  361. data/spec/spec/story/scenario_spec.rb +0 -20
  362. data/spec/spec/story/step_group_spec.rb +0 -157
  363. data/spec/spec/story/step_mother_spec.rb +0 -72
  364. data/spec/spec/story/step_spec.rb +0 -250
  365. data/spec/spec/story/story_helper.rb +0 -2
  366. data/spec/spec/story/story_spec.rb +0 -86
  367. data/spec/spec/story/world_spec.rb +0 -423
  368. data/spec/spec/translator_spec.rb +0 -265
  369. data/spec/spec_helper.rb +0 -103
  370. data/stories/all.rb +0 -5
  371. data/stories/example_groups/autogenerated_docstrings +0 -45
  372. data/stories/example_groups/example_group_with_should_methods +0 -17
  373. data/stories/example_groups/nested_groups +0 -17
  374. data/stories/example_groups/output +0 -25
  375. data/stories/example_groups/stories.rb +0 -7
  376. data/stories/helper.rb +0 -6
  377. data/stories/interop/examples_and_tests_together +0 -30
  378. data/stories/interop/stories.rb +0 -7
  379. data/stories/interop/test_case_with_should_methods +0 -17
  380. data/stories/mock_framework_integration/stories.rb +0 -7
  381. data/stories/mock_framework_integration/use_flexmock.story +0 -9
  382. data/stories/pending_stories/README +0 -3
  383. data/stories/resources/helpers/cmdline.rb +0 -9
  384. data/stories/resources/helpers/story_helper.rb +0 -16
  385. data/stories/resources/matchers/smart_match.rb +0 -37
  386. data/stories/resources/spec/example_group_with_should_methods.rb +0 -12
  387. data/stories/resources/spec/simple_spec.rb +0 -8
  388. data/stories/resources/spec/spec_with_flexmock.rb +0 -18
  389. data/stories/resources/steps/running_rspec.rb +0 -50
  390. data/stories/resources/stories/failing_story.rb +0 -15
  391. data/stories/resources/test/spec_and_test_together.rb +0 -57
  392. data/stories/resources/test/test_case_with_should_methods.rb +0 -30
  393. data/stories/stories/multiline_steps.story +0 -23
  394. data/stories/stories/steps/multiline_steps.rb +0 -13
  395. data/stories/stories/stories.rb +0 -6
@@ -1,9 +0,0 @@
1
- module Spec
2
- module Example
3
- class ExamplePendingError < StandardError
4
- end
5
-
6
- class PendingExampleFixedError < StandardError
7
- end
8
- end
9
- end
@@ -1,17 +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
-
9
- def initialize(defined_description, &implementation)
10
- @_defined_description = defined_description
11
- @_implementation = implementation
12
- end
13
- end
14
- end
15
- end
16
-
17
- Spec::ExampleGroup = Spec::Example::ExampleGroup
@@ -1,64 +0,0 @@
1
- module Spec
2
- module Example
3
- class ExampleGroupFactory
4
- class << self
5
- def reset
6
- @example_group_types = nil
7
- default(ExampleGroup)
8
- end
9
-
10
- # Registers an example group class +klass+ with the symbol +type+. For
11
- # example:
12
- #
13
- # Spec::Example::ExampleGroupFactory.register(:farm, FarmExampleGroup)
14
- #
15
- # With that you can append a hash with :type => :farm to the describe
16
- # method and it will load an instance of FarmExampleGroup.
17
- #
18
- # describe Pig, :type => :farm do
19
- # ...
20
- #
21
- # If you don't use the hash explicitly, <tt>describe</tt> will
22
- # implicitly use an instance of FarmExampleGroup for any file loaded
23
- # from the <tt>./spec/farm</tt> directory.
24
- def register(key, example_group_class)
25
- @example_group_types[key] = example_group_class
26
- end
27
-
28
- # Sets the default ExampleGroup class
29
- def default(example_group_class)
30
- old = @example_group_types
31
- @example_group_types = Hash.new(example_group_class)
32
- @example_group_types.merge!(old) if old
33
- end
34
-
35
- def get(key=nil)
36
- if @example_group_types.values.include?(key)
37
- key
38
- else
39
- @example_group_types[key]
40
- end
41
- end
42
-
43
- def create_example_group(*args, &block)
44
- opts = Hash === args.last ? args.last : {}
45
- superclass = determine_superclass(opts)
46
- superclass.describe(*args, &block)
47
- end
48
-
49
- protected
50
-
51
- def determine_superclass(opts)
52
- key = if opts[:type]
53
- opts[:type]
54
- elsif opts[:spec_path] =~ /spec(\\|\/)(#{@example_group_types.keys.join('|')})/
55
- $2 == '' ? nil : $2.to_sym
56
- end
57
- get(key)
58
- end
59
-
60
- end
61
- self.reset
62
- end
63
- end
64
- end
@@ -1,440 +0,0 @@
1
- module Spec
2
- module Example
3
-
4
- module ExampleGroupMethods
5
- class << self
6
- attr_accessor :matcher_class
7
-
8
- def description_text(*args)
9
- args.inject("") do |result, arg|
10
- result << " " unless (result == "" || arg.to_s =~ /^(\s|\.|#)/)
11
- result << arg.to_s
12
- end
13
- end
14
- end
15
-
16
- attr_reader :description_text, :description_args, :description_options, :spec_path, :registration_binding_block
17
-
18
- def inherited(klass)
19
- super
20
- klass.register {}
21
- Spec::Runner.register_at_exit_hook
22
- end
23
-
24
- # Makes the describe/it syntax available from a class. For example:
25
- #
26
- # class StackSpec < Spec::ExampleGroup
27
- # describe Stack, "with no elements"
28
- #
29
- # before
30
- # @stack = Stack.new
31
- # end
32
- #
33
- # it "should raise on pop" do
34
- # lambda{ @stack.pop }.should raise_error
35
- # end
36
- # end
37
- #
38
- def describe(*args, &example_group_block)
39
- args << {} unless Hash === args.last
40
- if example_group_block
41
- params = args.last
42
- params[:spec_path] = eval("caller(0)[1]", example_group_block) unless params[:spec_path]
43
- if params[:shared]
44
- SharedExampleGroup.new(*args, &example_group_block)
45
- else
46
- self.subclass("Subclass") do
47
- describe(*args)
48
- module_eval(&example_group_block)
49
- end
50
- end
51
- else
52
- set_description(*args)
53
- before_eval
54
- self
55
- end
56
- end
57
- alias :context :describe
58
-
59
- # Use this to pull in examples from shared example groups.
60
- # See Spec::Runner for information about shared example groups.
61
- def it_should_behave_like(shared_example_group)
62
- case shared_example_group
63
- when SharedExampleGroup
64
- include shared_example_group
65
- else
66
- example_group = SharedExampleGroup.find_shared_example_group(shared_example_group)
67
- unless example_group
68
- raise RuntimeError.new("Shared Example Group '#{shared_example_group}' can not be found")
69
- end
70
- include(example_group)
71
- end
72
- end
73
-
74
- # :call-seq:
75
- # predicate_matchers[matcher_name] = method_on_object
76
- # predicate_matchers[matcher_name] = [method1_on_object, method2_on_object]
77
- #
78
- # Dynamically generates a custom matcher that will match
79
- # a predicate on your class. RSpec provides a couple of these
80
- # out of the box:
81
- #
82
- # exist (or state expectations)
83
- # File.should exist("path/to/file")
84
- #
85
- # an_instance_of (for mock argument constraints)
86
- # mock.should_receive(:message).with(an_instance_of(String))
87
- #
88
- # == Examples
89
- #
90
- # class Fish
91
- # def can_swim?
92
- # true
93
- # end
94
- # end
95
- #
96
- # describe Fish do
97
- # predicate_matchers[:swim] = :can_swim?
98
- # it "should swim" do
99
- # Fish.new.should swim
100
- # end
101
- # end
102
- def predicate_matchers
103
- @predicate_matchers ||= {:an_instance_of => :is_a?}
104
- end
105
-
106
- # Creates an instance of Spec::Example::Example and adds
107
- # it to a collection of examples of the current example group.
108
- def it(description=nil, &implementation)
109
- e = new(description, &implementation)
110
- example_objects << e
111
- e
112
- end
113
-
114
- alias_method :specify, :it
115
-
116
- # Use this to temporarily disable an example.
117
- def xit(description=nil, opts={}, &block)
118
- Kernel.warn("Example disabled: #{description}")
119
- end
120
- alias_method :xspecify, :xit
121
-
122
- def run
123
- examples = examples_to_run
124
- reporter.add_example_group(self) unless examples_to_run.empty?
125
- return true if examples.empty?
126
- return dry_run(examples) if dry_run?
127
-
128
- plugin_mock_framework
129
- define_methods_from_predicate_matchers
130
-
131
- success, before_all_instance_variables = run_before_all
132
- success, after_all_instance_variables = execute_examples(success, before_all_instance_variables, examples)
133
- success = run_after_all(success, after_all_instance_variables)
134
- end
135
-
136
- def description
137
- result = ExampleGroupMethods.description_text(*description_parts)
138
- if result.nil? || result == ""
139
- return to_s
140
- else
141
- result
142
- end
143
- end
144
-
145
- def described_type
146
- description_parts.find {|part| part.is_a?(Module)}
147
- end
148
-
149
- def description_parts #:nodoc:
150
- parts = []
151
- execute_in_class_hierarchy do |example_group|
152
- parts << example_group.description_args
153
- end
154
- parts.flatten.compact
155
- end
156
-
157
- def set_description(*args)
158
- args, options = args_and_options(*args)
159
- @description_args = args
160
- @description_options = options
161
- @description_text = ExampleGroupMethods.description_text(*args)
162
- @spec_path = File.expand_path(options[:spec_path]) if options[:spec_path]
163
- if described_type.class == Module
164
- @described_module = described_type
165
- end
166
- self
167
- end
168
-
169
- attr_reader :described_module
170
-
171
- def examples #:nodoc:
172
- examples = example_objects.dup
173
- add_method_examples(examples)
174
- rspec_options.reverse ? examples.reverse : examples
175
- end
176
-
177
- def number_of_examples #:nodoc:
178
- examples.length
179
- end
180
-
181
- # Registers a block to be executed before each example.
182
- # This method prepends +block+ to existing before blocks.
183
- def prepend_before(*args, &block)
184
- scope, options = scope_and_options(*args)
185
- parts = before_parts_from_scope(scope)
186
- parts.unshift(block)
187
- end
188
-
189
- # Registers a block to be executed before each example.
190
- # This method appends +block+ to existing before blocks.
191
- def append_before(*args, &block)
192
- scope, options = scope_and_options(*args)
193
- parts = before_parts_from_scope(scope)
194
- parts << block
195
- end
196
- alias_method :before, :append_before
197
-
198
- # Registers a block to be executed after each example.
199
- # This method prepends +block+ to existing after blocks.
200
- def prepend_after(*args, &block)
201
- scope, options = scope_and_options(*args)
202
- parts = after_parts_from_scope(scope)
203
- parts.unshift(block)
204
- end
205
- alias_method :after, :prepend_after
206
-
207
- # Registers a block to be executed after each example.
208
- # This method appends +block+ to existing after blocks.
209
- def append_after(*args, &block)
210
- scope, options = scope_and_options(*args)
211
- parts = after_parts_from_scope(scope)
212
- parts << block
213
- end
214
-
215
- def remove_after(scope, &block)
216
- after_each_parts.delete(block)
217
- end
218
-
219
- # Deprecated. Use before(:each)
220
- def setup(&block)
221
- before(:each, &block)
222
- end
223
-
224
- # Deprecated. Use after(:each)
225
- def teardown(&block)
226
- after(:each, &block)
227
- end
228
-
229
- def before_all_parts # :nodoc:
230
- @before_all_parts ||= []
231
- end
232
-
233
- def after_all_parts # :nodoc:
234
- @after_all_parts ||= []
235
- end
236
-
237
- def before_each_parts # :nodoc:
238
- @before_each_parts ||= []
239
- end
240
-
241
- def after_each_parts # :nodoc:
242
- @after_each_parts ||= []
243
- end
244
-
245
- # Only used from RSpec's own examples
246
- def reset # :nodoc:
247
- @before_all_parts = nil
248
- @after_all_parts = nil
249
- @before_each_parts = nil
250
- @after_each_parts = nil
251
- end
252
-
253
- def register(&registration_binding_block)
254
- @registration_binding_block = registration_binding_block
255
- rspec_options.add_example_group self
256
- end
257
-
258
- def unregister #:nodoc:
259
- rspec_options.remove_example_group self
260
- end
261
-
262
- def registration_backtrace
263
- eval("caller", registration_binding_block)
264
- end
265
-
266
- def run_before_each(example)
267
- execute_in_class_hierarchy do |example_group|
268
- example.eval_each_fail_fast(example_group.before_each_parts)
269
- end
270
- end
271
-
272
- def run_after_each(example)
273
- execute_in_class_hierarchy(:superclass_first) do |example_group|
274
- example.eval_each_fail_slow(example_group.after_each_parts)
275
- end
276
- end
277
-
278
- private
279
- def dry_run(examples)
280
- examples.each do |example|
281
- rspec_options.reporter.example_started(example)
282
- rspec_options.reporter.example_finished(example)
283
- end
284
- return true
285
- end
286
-
287
- def run_before_all
288
- before_all = new("before(:all)")
289
- begin
290
- execute_in_class_hierarchy do |example_group|
291
- before_all.eval_each_fail_fast(example_group.before_all_parts)
292
- end
293
- return [true, before_all.instance_variable_hash]
294
- rescue Exception => e
295
- reporter.failure(before_all, e)
296
- return [false, before_all.instance_variable_hash]
297
- end
298
- end
299
-
300
- def execute_examples(success, instance_variables, examples)
301
- return [success, instance_variables] unless success
302
-
303
- after_all_instance_variables = instance_variables
304
- examples.each do |example_group_instance|
305
- success &= example_group_instance.execute(rspec_options, instance_variables)
306
- after_all_instance_variables = example_group_instance.instance_variable_hash
307
- end
308
- return [success, after_all_instance_variables]
309
- end
310
-
311
- def run_after_all(success, instance_variables)
312
- after_all = new("after(:all)")
313
- after_all.set_instance_variables_from_hash(instance_variables)
314
- execute_in_class_hierarchy(:superclass_first) do |example_group|
315
- after_all.eval_each_fail_slow(example_group.after_all_parts)
316
- end
317
- return success
318
- rescue Exception => e
319
- reporter.failure(after_all, e)
320
- return false
321
- end
322
-
323
- def examples_to_run
324
- all_examples = examples
325
- return all_examples unless specified_examples?
326
- all_examples.reject do |example|
327
- matcher = ExampleGroupMethods.matcher_class.
328
- new(description.to_s, example.description)
329
- !matcher.matches?(specified_examples)
330
- end
331
- end
332
-
333
- def specified_examples?
334
- specified_examples && !specified_examples.empty?
335
- end
336
-
337
- def specified_examples
338
- rspec_options.examples
339
- end
340
-
341
- def reporter
342
- rspec_options.reporter
343
- end
344
-
345
- def dry_run?
346
- rspec_options.dry_run
347
- end
348
-
349
- def example_objects
350
- @example_objects ||= []
351
- end
352
-
353
- def execute_in_class_hierarchy(superclass_last=false)
354
- classes = []
355
- current_class = self
356
- while is_example_group?(current_class)
357
- superclass_last ? classes << current_class : classes.unshift(current_class)
358
- current_class = current_class.superclass
359
- end
360
- superclass_last ? classes << ExampleMethods : classes.unshift(ExampleMethods)
361
-
362
- classes.each do |example_group|
363
- yield example_group
364
- end
365
- end
366
-
367
- def is_example_group?(klass)
368
- Module === klass && klass.kind_of?(ExampleGroupMethods)
369
- end
370
-
371
- def plugin_mock_framework
372
- case mock_framework = Spec::Runner.configuration.mock_framework
373
- when Module
374
- include mock_framework
375
- else
376
- require Spec::Runner.configuration.mock_framework
377
- include Spec::Plugins::MockFramework
378
- end
379
- end
380
-
381
- def define_methods_from_predicate_matchers # :nodoc:
382
- all_predicate_matchers = predicate_matchers.merge(
383
- Spec::Runner.configuration.predicate_matchers
384
- )
385
- all_predicate_matchers.each_pair do |matcher_method, method_on_object|
386
- define_method matcher_method do |*args|
387
- eval("be_#{method_on_object.to_s.gsub('?','')}(*args)")
388
- end
389
- end
390
- end
391
-
392
- def scope_and_options(*args)
393
- args, options = args_and_options(*args)
394
- scope = (args[0] || :each), options
395
- end
396
-
397
- def before_parts_from_scope(scope)
398
- case scope
399
- when :each; before_each_parts
400
- when :all; before_all_parts
401
- when :suite; rspec_options.before_suite_parts
402
- end
403
- end
404
-
405
- def after_parts_from_scope(scope)
406
- case scope
407
- when :each; after_each_parts
408
- when :all; after_all_parts
409
- when :suite; rspec_options.after_suite_parts
410
- end
411
- end
412
-
413
- def before_eval
414
- end
415
-
416
- def add_method_examples(examples)
417
- instance_methods.sort.each do |method_name|
418
- if example_method?(method_name)
419
- examples << new(method_name) do
420
- __send__(method_name)
421
- end
422
- end
423
- end
424
- end
425
-
426
- def example_method?(method_name)
427
- should_method?(method_name)
428
- end
429
-
430
- def should_method?(method_name)
431
- !(method_name =~ /^should(_not)?$/) &&
432
- method_name =~ /^should/ && (
433
- instance_method(method_name).arity == 0 ||
434
- instance_method(method_name).arity == -1
435
- )
436
- end
437
- end
438
-
439
- end
440
- end