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,65 +0,0 @@
1
- require 'spec/runner/formatter/base_text_formatter'
2
-
3
- module Spec
4
- module Runner
5
- module Formatter
6
- class NestedTextFormatter < BaseTextFormatter
7
- attr_reader :previous_nested_example_groups
8
- def initialize(options, where)
9
- super
10
- @previous_nested_example_groups = []
11
- end
12
-
13
- def add_example_group(example_group)
14
- super
15
-
16
- current_nested_example_groups = described_example_group_chain
17
- current_nested_example_groups.each_with_index do |nested_example_group, i|
18
- unless nested_example_group == previous_nested_example_groups[i]
19
- output.puts "#{' ' * i}#{nested_example_group.description_args}"
20
- end
21
- end
22
-
23
- @previous_nested_example_groups = described_example_group_chain
24
- end
25
-
26
- def example_failed(example, counter, failure)
27
- message = if failure.expectation_not_met?
28
- "#{current_indentation}#{example.description} (FAILED - #{counter})"
29
- else
30
- "#{current_indentation}#{example.description} (ERROR - #{counter})"
31
- end
32
-
33
- output.puts(failure.expectation_not_met? ? red(message) : magenta(message))
34
- output.flush
35
- end
36
-
37
- def example_passed(example)
38
- message = "#{current_indentation}#{example.description}"
39
- output.puts green(message)
40
- output.flush
41
- end
42
-
43
- def example_pending(example, message)
44
- super
45
- output.puts yellow("#{current_indentation}#{example.description} (PENDING: #{message})")
46
- output.flush
47
- end
48
-
49
- def current_indentation
50
- ' ' * previous_nested_example_groups.length
51
- end
52
-
53
- def described_example_group_chain
54
- example_group_chain = []
55
- example_group.send(:execute_in_class_hierarchy) do |parent_example_group|
56
- if parent_example_group.description_args && !parent_example_group.description_args.empty?
57
- example_group_chain << parent_example_group
58
- end
59
- end
60
- example_group_chain
61
- end
62
- end
63
- end
64
- end
65
- end
@@ -1,51 +0,0 @@
1
- require 'spec/runner/formatter/progress_bar_formatter'
2
-
3
- module Spec
4
- module Runner
5
- module Formatter
6
- class ProfileFormatter < ProgressBarFormatter
7
-
8
- def initialize(options, where)
9
- super
10
- @example_times = []
11
- end
12
-
13
- def start(count)
14
- @output.puts "Profiling enabled."
15
- end
16
-
17
- def example_started(example)
18
- @time = Time.now
19
- end
20
-
21
- def example_passed(example)
22
- super
23
- @example_times << [
24
- example_group.description,
25
- example.description,
26
- Time.now - @time
27
- ]
28
- end
29
-
30
- def start_dump
31
- super
32
- @output.puts "\n\nTop 10 slowest examples:\n"
33
-
34
- @example_times = @example_times.sort_by do |description, example, time|
35
- time
36
- end.reverse
37
-
38
- @example_times[0..9].each do |description, example, time|
39
- @output.print red(sprintf("%.7f", time))
40
- @output.puts " #{description} #{example}"
41
- end
42
- @output.flush
43
- end
44
-
45
- def method_missing(sym, *args)
46
- # ignore
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,34 +0,0 @@
1
- require 'spec/runner/formatter/base_text_formatter'
2
-
3
- module Spec
4
- module Runner
5
- module Formatter
6
- class ProgressBarFormatter < BaseTextFormatter
7
- def example_failed(example, counter, failure)
8
- @output.print colourise('F', failure)
9
- @output.flush
10
- end
11
-
12
- def example_passed(example)
13
- @output.print green('.')
14
- @output.flush
15
- end
16
-
17
- def example_pending(example, message)
18
- super
19
- @output.print yellow('P')
20
- @output.flush
21
- end
22
-
23
- def start_dump
24
- @output.puts
25
- @output.flush
26
- end
27
-
28
- def method_missing(sym, *args)
29
- # ignore
30
- end
31
- end
32
- end
33
- end
34
- end
@@ -1,52 +0,0 @@
1
- module Spec
2
- module Runner
3
- module Formatter
4
- # This class extracts code snippets by looking at the backtrace of the passed error
5
- class SnippetExtractor #:nodoc:
6
- class NullConverter; def convert(code, pre); code; end; end #:nodoc:
7
- begin; require 'rubygems'; require 'syntax/convertors/html'; @@converter = Syntax::Convertors::HTML.for_syntax "ruby"; rescue LoadError => e; @@converter = NullConverter.new; end
8
-
9
- def snippet(error)
10
- raw_code, line = snippet_for(error.backtrace[0])
11
- highlighted = @@converter.convert(raw_code, false)
12
- highlighted << "\n<span class=\"comment\"># gem install syntax to get syntax highlighting</span>" if @@converter.is_a?(NullConverter)
13
- post_process(highlighted, line)
14
- end
15
-
16
- def snippet_for(error_line)
17
- if error_line =~ /(.*):(\d+)/
18
- file = $1
19
- line = $2.to_i
20
- [lines_around(file, line), line]
21
- else
22
- ["# Couldn't get snippet for #{error_line}", 1]
23
- end
24
- end
25
-
26
- def lines_around(file, line)
27
- if File.file?(file)
28
- lines = File.open(file).read.split("\n")
29
- min = [0, line-3].max
30
- max = [line+1, lines.length-1].min
31
- selected_lines = []
32
- selected_lines.join("\n")
33
- lines[min..max].join("\n")
34
- else
35
- "# Couldn't get snippet for #{file}"
36
- end
37
- end
38
-
39
- def post_process(highlighted, offending_line)
40
- new_lines = []
41
- highlighted.split("\n").each_with_index do |line, i|
42
- new_line = "<span class=\"linenum\">#{offending_line+i-2}</span>#{line}"
43
- new_line = "<span class=\"offending\">#{new_line}</span>" if i == 2
44
- new_lines << new_line
45
- end
46
- new_lines.join("\n")
47
- end
48
-
49
- end
50
- end
51
- end
52
- end
@@ -1,39 +0,0 @@
1
- require 'spec/runner/formatter/base_text_formatter'
2
-
3
- module Spec
4
- module Runner
5
- module Formatter
6
- class SpecdocFormatter < BaseTextFormatter
7
- def add_example_group(example_group)
8
- super
9
- output.puts
10
- output.puts example_group.description
11
- output.flush
12
- end
13
-
14
- def example_failed(example, counter, failure)
15
- message = if failure.expectation_not_met?
16
- "- #{example.description} (FAILED - #{counter})"
17
- else
18
- "- #{example.description} (ERROR - #{counter})"
19
- end
20
-
21
- output.puts(failure.expectation_not_met? ? red(message) : magenta(message))
22
- output.flush
23
- end
24
-
25
- def example_passed(example)
26
- message = "- #{example.description}"
27
- output.puts green(message)
28
- output.flush
29
- end
30
-
31
- def example_pending(example, message)
32
- super
33
- output.puts yellow("- #{example.description} (PENDING: #{message})")
34
- output.flush
35
- end
36
- end
37
- end
38
- end
39
- end
@@ -1,161 +0,0 @@
1
- require 'erb'
2
- require 'spec/runner/formatter/base_text_formatter'
3
-
4
- module Spec
5
- module Runner
6
- module Formatter
7
- module Story
8
- class HtmlFormatter < BaseTextFormatter
9
- include ERB::Util
10
-
11
- def initialize(options, where)
12
- super
13
- @previous_type = nil
14
- @scenario_text = ""
15
- @story_text = ""
16
- @scenario_failed = false
17
- @story_failed = false
18
- end
19
-
20
- def run_started(count)
21
- @output.puts <<-EOF
22
- <?xml version="1.0" encoding="UTF-8"?>
23
- <!DOCTYPE html
24
- PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
25
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
26
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
27
- <head>
28
- <title>Stories</title>
29
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
30
- <meta http-equiv="Expires" content="-1" />
31
- <meta http-equiv="Pragma" content="no-cache" />
32
- <script src="javascripts/prototype.js" type="text/javascript"></script>
33
- <script src="javascripts/scriptaculous.js" type="text/javascript"></script>
34
- <script src="javascripts/rspec.js" type="text/javascript"></script>
35
- <link href="stylesheets/rspec.css" rel="stylesheet" type="text/css" />
36
- </head>
37
- <body>
38
- <div id="container">
39
- EOF
40
- end
41
-
42
- def collected_steps(steps)
43
- unless steps.empty?
44
- @output.puts " <ul id=\"stock_steps\" style=\"display: none;\">"
45
- steps.each do |step|
46
- @output.puts " <li>#{step}</li>"
47
- end
48
- @output.puts " </ul>"
49
- end
50
- end
51
-
52
- def run_ended
53
- @output.puts <<-EOF
54
- </div>
55
- </body>
56
- </head>
57
- EOF
58
- end
59
-
60
- def story_started(title, narrative)
61
- @story_failed = false
62
- @story_text = <<-EOF
63
- <dt>Story: #{h title}</dt>
64
- <dd>
65
- <p>
66
- #{h(narrative).split("\n").join("<br />")}
67
- </p>
68
- EOF
69
- end
70
-
71
- def story_ended(title, narrative)
72
- if @story_failed
73
- @output.puts <<-EOF
74
- <dl class="story failed">
75
- EOF
76
- else
77
- @output.puts <<-EOF
78
- <dl class="story passed">
79
- EOF
80
- end
81
- @output.puts <<-EOF
82
- #{@story_text}
83
- </dd>
84
- </dl>
85
- EOF
86
- end
87
-
88
- def scenario_started(story_title, scenario_name)
89
- @scenario_failed = false
90
- @scenario_text = <<-EOF
91
- <dt>Scenario: #{h scenario_name}</dt>
92
- <dd>
93
- <ul class="steps">
94
- EOF
95
- end
96
-
97
- def scenario_ended
98
- if @scenario_failed
99
- @story_text += <<-EOF
100
- <dl class="failed">
101
- EOF
102
- else
103
- @story_text += <<-EOF
104
- <dl class="passed">
105
- EOF
106
- end
107
-
108
- @story_text += <<-EOF
109
- #{@scenario_text}
110
- </ul>
111
- </dd>
112
- </dl>
113
- EOF
114
- end
115
-
116
- def found_scenario(type, description)
117
- end
118
-
119
- def scenario_succeeded(story_title, scenario_name)
120
- scenario_ended
121
- end
122
-
123
- def scenario_pending(story_title, scenario_name, reason)
124
- scenario_ended
125
- end
126
-
127
- def scenario_failed(story_title, scenario_name, err)
128
- @scenario_failed = true
129
- @story_failed = true
130
- scenario_ended
131
- end
132
-
133
- def step_upcoming(type, description, *args)
134
- end
135
-
136
- def step_succeeded(type, description, *args)
137
- print_step('passed', type, description, *args) # TODO: uses succeeded CSS class
138
- end
139
-
140
- def step_pending(type, description, *args)
141
- print_step('pending', type, description, *args)
142
- end
143
-
144
- def step_failed(type, description, *args)
145
- print_step('failed', type, description, *args)
146
- end
147
-
148
- def print_step(klass, type, description, *args)
149
- spans = args.map { |arg| "<span class=\"param\">#{arg}</span>" }
150
- desc_string = description.step_name
151
- arg_regexp = description.arg_regexp
152
- i = -1
153
- inner = type.to_s.capitalize + ' ' + desc_string.gsub(arg_regexp) { |param| spans[i+=1] }
154
- @scenario_text += " <li class=\"#{klass}\">#{inner}</li>\n"
155
-
156
- end
157
- end
158
- end
159
- end
160
- end
161
- end
@@ -1,188 +0,0 @@
1
- require 'spec/runner/formatter/base_text_formatter'
2
-
3
- module Spec
4
- module Runner
5
- module Formatter
6
- module Story
7
- class PlainTextFormatter < BaseTextFormatter
8
- def initialize(options, where)
9
- super
10
- @successful_scenario_count = 0
11
- @pending_scenario_count = 0
12
-
13
- @pre_story_pending_count = 0
14
- @pre_story_successful_count = 0
15
-
16
- @failed_scenarios = []
17
- @pending_steps = []
18
- @previous_type = nil
19
-
20
- @scenario_body_text = ""
21
- @story_body_text = ""
22
-
23
- @scenario_head_text = ""
24
- @story_head_text = ""
25
-
26
- @scenario_failed = false
27
- @story_failed = false
28
- end
29
-
30
- def run_started(count)
31
- @count = count
32
- @output.puts "Running #@count scenarios\n\n"
33
- end
34
-
35
- def story_started(title, narrative)
36
- @pre_story_pending_count = @pending_scenario_count
37
- @pre_story_successful_count = @successful_scenario_count
38
-
39
- @current_story_title = title
40
- @story_failed = false
41
- @story_body_text = ""
42
- @story_head_text = "Story: #{title}\n\n"
43
-
44
- narrative.each_line do |line|
45
- @story_head_text += " "
46
- @story_head_text += line
47
- end
48
- end
49
-
50
- def story_ended(title, narrative)
51
- if @story_failed
52
- @output.print red(@story_head_text)
53
- elsif @pre_story_successful_count == @successful_scenario_count &&
54
- @pending_scenario_count >= @pre_story_pending_count
55
- @output.print yellow(@story_head_text)
56
- else
57
- @output.print green(@story_head_text)
58
- end
59
- @output.print @story_body_text
60
- @output.puts
61
- @output.puts
62
- end
63
-
64
- def scenario_started(story_title, scenario_name)
65
- @current_scenario_name = scenario_name
66
- @scenario_already_failed = false
67
- @scenario_head_text = "\n\n Scenario: #{scenario_name}"
68
- @scenario_body_text = ""
69
- @scenario_ok = true
70
- @scenario_pending = false
71
- @scenario_failed = false
72
- end
73
-
74
- def scenario_succeeded(story_title, scenario_name)
75
- @successful_scenario_count += 1
76
- scenario_ended
77
- end
78
-
79
- def scenario_failed(story_title, scenario_name, err)
80
- @options.backtrace_tweaker.tweak_backtrace(err)
81
- @failed_scenarios << [story_title, scenario_name, err] unless @scenario_already_failed
82
- @scenario_already_failed = true
83
- @story_failed = true
84
- @scenario_failed = true
85
- scenario_ended
86
- end
87
-
88
- def scenario_pending(story_title, scenario_name, msg)
89
- @pending_scenario_count += 1 unless @scenario_already_failed
90
- @scenario_pending = true
91
- @scenario_already_failed = true
92
- scenario_ended
93
- end
94
-
95
- def scenario_ended
96
- if @scenario_failed
97
- @story_body_text += red(@scenario_head_text)
98
- elsif @scenario_pending
99
- @story_body_text += yellow(@scenario_head_text)
100
- else
101
- @story_body_text += green(@scenario_head_text)
102
- end
103
- @story_body_text += @scenario_body_text
104
- end
105
-
106
- def run_ended
107
- @output.puts "#@count scenarios: #@successful_scenario_count succeeded, #{@failed_scenarios.size} failed, #@pending_scenario_count pending"
108
- unless @pending_steps.empty?
109
- @output.puts "\nPending Steps:"
110
- @pending_steps.each_with_index do |pending, i|
111
- story_name, scenario_name, msg = pending
112
- @output.puts "#{i+1}) #{story_name} (#{scenario_name}): #{msg}"
113
- end
114
- end
115
- unless @failed_scenarios.empty?
116
- @output.print "\nFAILURES:"
117
- @failed_scenarios.each_with_index do |failure, i|
118
- title, scenario_name, err = failure
119
- @output.print %[
120
- #{i+1}) #{title} (#{scenario_name}) FAILED
121
- #{err.class}: #{err.message}
122
- #{err.backtrace.join("\n")}
123
- ]
124
- end
125
- end
126
- end
127
-
128
- def step_upcoming(type, description, *args)
129
- end
130
-
131
- def step_succeeded(type, description, *args)
132
- found_step(type, description, false, false, *args)
133
- end
134
-
135
- def step_pending(type, description, *args)
136
- found_step(type, description, false, true, *args)
137
- @pending_steps << [@current_story_title, @current_scenario_name, description]
138
- @scenario_body_text += yellow(" (PENDING)")
139
- @scenario_pending = true
140
- @scenario_ok = false
141
- end
142
-
143
- def step_failed(type, description, *args)
144
- found_step(type, description, true, @scenario_pending, *args)
145
- if @scenario_pending
146
- @scenario_body_text += yellow(" (SKIPPED)")
147
- else
148
- @scenario_body_text += red(@scenario_ok ? " (FAILED)" : " (SKIPPED)")
149
- end
150
- @scenario_ok = false
151
- end
152
-
153
- def collected_steps(steps)
154
- end
155
-
156
- def method_missing(sym, *args, &block) #:nodoc:
157
- # noop - ignore unknown messages
158
- end
159
-
160
- private
161
-
162
- def found_step(type, description, failed, pending, *args)
163
- desc_string = description.step_name
164
- arg_regexp = description.arg_regexp
165
- text = if(type == @previous_type)
166
- "\n And "
167
- else
168
- "\n\n #{type.to_s.capitalize} "
169
- end
170
- i = -1
171
- text << desc_string.gsub(arg_regexp) { |param| args[i+=1] }
172
- if pending
173
- @scenario_body_text += yellow(text)
174
- else
175
- @scenario_body_text += (failed ? red(text) : green(text))
176
- end
177
-
178
- if type == :'given scenario'
179
- @previous_type = :given
180
- else
181
- @previous_type = type
182
- end
183
- end
184
- end
185
- end
186
- end
187
- end
188
- end