newbamboo-rspec 1.1.12

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 (324) hide show
  1. data/.autotest +4 -0
  2. data/History.txt +1263 -0
  3. data/License.txt +22 -0
  4. data/Manifest.txt +327 -0
  5. data/README.txt +57 -0
  6. data/Rakefile +104 -0
  7. data/TODO.txt +18 -0
  8. data/bin/autospec +4 -0
  9. data/bin/spec +4 -0
  10. data/examples/failing/README.txt +7 -0
  11. data/examples/failing/diffing_spec.rb +36 -0
  12. data/examples/failing/failing_autogenerated_docstrings_example.rb +19 -0
  13. data/examples/failing/failure_in_after.rb +10 -0
  14. data/examples/failing/failure_in_before.rb +10 -0
  15. data/examples/failing/mocking_example.rb +40 -0
  16. data/examples/failing/mocking_with_flexmock.rb +26 -0
  17. data/examples/failing/mocking_with_mocha.rb +25 -0
  18. data/examples/failing/mocking_with_rr.rb +27 -0
  19. data/examples/failing/partial_mock_example.rb +20 -0
  20. data/examples/failing/predicate_example.rb +34 -0
  21. data/examples/failing/raising_example.rb +47 -0
  22. data/examples/failing/spec_helper.rb +3 -0
  23. data/examples/failing/syntax_error_example.rb +7 -0
  24. data/examples/failing/team_spec.rb +44 -0
  25. data/examples/failing/timeout_behaviour.rb +7 -0
  26. data/examples/passing/autogenerated_docstrings_example.rb +25 -0
  27. data/examples/passing/before_and_after_example.rb +40 -0
  28. data/examples/passing/behave_as_example.rb +45 -0
  29. data/examples/passing/custom_expectation_matchers.rb +54 -0
  30. data/examples/passing/custom_formatter.rb +12 -0
  31. data/examples/passing/dynamic_spec.rb +9 -0
  32. data/examples/passing/file_accessor.rb +19 -0
  33. data/examples/passing/file_accessor_spec.rb +38 -0
  34. data/examples/passing/greeter_spec.rb +31 -0
  35. data/examples/passing/helper_method_example.rb +14 -0
  36. data/examples/passing/io_processor.rb +8 -0
  37. data/examples/passing/io_processor_spec.rb +21 -0
  38. data/examples/passing/legacy_spec.rb +11 -0
  39. data/examples/passing/mocking_example.rb +27 -0
  40. data/examples/passing/multi_threaded_example_group_runner.rb +26 -0
  41. data/examples/passing/nested_classes_example.rb +36 -0
  42. data/examples/passing/partial_mock_example.rb +29 -0
  43. data/examples/passing/pending_example.rb +20 -0
  44. data/examples/passing/predicate_example.rb +27 -0
  45. data/examples/passing/priority.txt +1 -0
  46. data/examples/passing/shared_example_group_example.rb +81 -0
  47. data/examples/passing/shared_stack_examples.rb +36 -0
  48. data/examples/passing/simple_matcher_example.rb +31 -0
  49. data/examples/passing/spec_helper.rb +3 -0
  50. data/examples/passing/stack.rb +36 -0
  51. data/examples/passing/stack_spec.rb +64 -0
  52. data/examples/passing/stack_spec_with_nested_example_groups.rb +67 -0
  53. data/examples/passing/stubbing_example.rb +69 -0
  54. data/examples/passing/yielding_example.rb +33 -0
  55. data/examples/ruby1.9.compatibility/access_to_constants_spec.rb +86 -0
  56. data/features/before_and_after_blocks/before_and_after_blocks.feature +168 -0
  57. data/features/example_groups/autogenerated_docstrings.feature +45 -0
  58. data/features/example_groups/example_group_with_should_methods.feature +17 -0
  59. data/features/example_groups/nested_groups.feature +17 -0
  60. data/features/example_groups/output.feature +20 -0
  61. data/features/interop/examples_and_tests_together.feature +31 -0
  62. data/features/interop/test_but_not_test_unit.feature +14 -0
  63. data/features/interop/test_case_with_should_methods.feature +17 -0
  64. data/features/mock_framework_integration/use_flexmock.feature +27 -0
  65. data/features/step_definitions/running_rspec.rb +54 -0
  66. data/features/support/env.rb +26 -0
  67. data/features/support/helpers/cmdline.rb +9 -0
  68. data/features/support/matchers/smart_match.rb +37 -0
  69. data/init.rb +9 -0
  70. data/lib/adapters/mock_frameworks/flexmock.rb +24 -0
  71. data/lib/adapters/mock_frameworks/mocha.rb +20 -0
  72. data/lib/adapters/mock_frameworks/rr.rb +22 -0
  73. data/lib/adapters/mock_frameworks/rspec.rb +20 -0
  74. data/lib/autotest/discover.rb +3 -0
  75. data/lib/autotest/rspec.rb +47 -0
  76. data/lib/spec/dsl/main.rb +87 -0
  77. data/lib/spec/dsl.rb +1 -0
  78. data/lib/spec/example/before_and_after_hooks.rb +99 -0
  79. data/lib/spec/example/errors.rb +30 -0
  80. data/lib/spec/example/example_group.rb +26 -0
  81. data/lib/spec/example/example_group_factory.rb +98 -0
  82. data/lib/spec/example/example_group_methods.rb +376 -0
  83. data/lib/spec/example/example_matcher.rb +44 -0
  84. data/lib/spec/example/example_methods.rb +137 -0
  85. data/lib/spec/example/module_reopening_fix.rb +21 -0
  86. data/lib/spec/example/pending.rb +18 -0
  87. data/lib/spec/example/shared_example_group.rb +59 -0
  88. data/lib/spec/example.rb +187 -0
  89. data/lib/spec/expectations/differs/default.rb +66 -0
  90. data/lib/spec/expectations/errors.rb +12 -0
  91. data/lib/spec/expectations/extensions/object.rb +63 -0
  92. data/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
  93. data/lib/spec/expectations/extensions.rb +2 -0
  94. data/lib/spec/expectations/handler.rb +32 -0
  95. data/lib/spec/expectations.rb +60 -0
  96. data/lib/spec/interop/test/unit/autorunner.rb +6 -0
  97. data/lib/spec/interop/test/unit/testcase.rb +73 -0
  98. data/lib/spec/interop/test/unit/testresult.rb +6 -0
  99. data/lib/spec/interop/test/unit/testsuite_adapter.rb +34 -0
  100. data/lib/spec/interop/test/unit/ui/console/testrunner.rb +61 -0
  101. data/lib/spec/interop/test.rb +12 -0
  102. data/lib/spec/matchers/be.rb +208 -0
  103. data/lib/spec/matchers/be_close.rb +21 -0
  104. data/lib/spec/matchers/change.rb +148 -0
  105. data/lib/spec/matchers/eql.rb +25 -0
  106. data/lib/spec/matchers/equal.rb +25 -0
  107. data/lib/spec/matchers/errors.rb +5 -0
  108. data/lib/spec/matchers/exist.rb +16 -0
  109. data/lib/spec/matchers/generated_descriptions.rb +48 -0
  110. data/lib/spec/matchers/has.rb +15 -0
  111. data/lib/spec/matchers/have.rb +150 -0
  112. data/lib/spec/matchers/include.rb +80 -0
  113. data/lib/spec/matchers/match.rb +22 -0
  114. data/lib/spec/matchers/match_array.rb +79 -0
  115. data/lib/spec/matchers/method_missing.rb +9 -0
  116. data/lib/spec/matchers/operator_matcher.rb +70 -0
  117. data/lib/spec/matchers/raise_error.rb +128 -0
  118. data/lib/spec/matchers/respond_to.rb +71 -0
  119. data/lib/spec/matchers/satisfy.rb +47 -0
  120. data/lib/spec/matchers/simple_matcher.rb +132 -0
  121. data/lib/spec/matchers/throw_symbol.rb +106 -0
  122. data/lib/spec/matchers/wrap_expectation.rb +55 -0
  123. data/lib/spec/matchers.rb +141 -0
  124. data/lib/spec/mocks/argument_expectation.rb +49 -0
  125. data/lib/spec/mocks/argument_matchers.rb +237 -0
  126. data/lib/spec/mocks/error_generator.rb +82 -0
  127. data/lib/spec/mocks/errors.rb +10 -0
  128. data/lib/spec/mocks/extensions/object.rb +3 -0
  129. data/lib/spec/mocks/extensions.rb +1 -0
  130. data/lib/spec/mocks/framework.rb +15 -0
  131. data/lib/spec/mocks/message_expectation.rb +331 -0
  132. data/lib/spec/mocks/methods.rb +51 -0
  133. data/lib/spec/mocks/mock.rb +55 -0
  134. data/lib/spec/mocks/order_group.rb +29 -0
  135. data/lib/spec/mocks/proxy.rb +230 -0
  136. data/lib/spec/mocks/space.rb +28 -0
  137. data/lib/spec/mocks/spec_methods.rb +55 -0
  138. data/lib/spec/mocks.rb +200 -0
  139. data/lib/spec/rake/spectask.rb +225 -0
  140. data/lib/spec/rake/verify_rcov.rb +52 -0
  141. data/lib/spec/ruby.rb +9 -0
  142. data/lib/spec/runner/backtrace_tweaker.rb +58 -0
  143. data/lib/spec/runner/class_and_arguments_parser.rb +14 -0
  144. data/lib/spec/runner/command_line.rb +35 -0
  145. data/lib/spec/runner/configuration.rb +166 -0
  146. data/lib/spec/runner/drb_command_line.rb +20 -0
  147. data/lib/spec/runner/example_group_runner.rb +70 -0
  148. data/lib/spec/runner/formatter/base_formatter.rb +79 -0
  149. data/lib/spec/runner/formatter/base_text_formatter.rb +127 -0
  150. data/lib/spec/runner/formatter/failing_example_groups_formatter.rb +27 -0
  151. data/lib/spec/runner/formatter/failing_examples_formatter.rb +20 -0
  152. data/lib/spec/runner/formatter/html_formatter.rb +340 -0
  153. data/lib/spec/runner/formatter/nested_text_formatter.rb +65 -0
  154. data/lib/spec/runner/formatter/profile_formatter.rb +51 -0
  155. data/lib/spec/runner/formatter/progress_bar_formatter.rb +34 -0
  156. data/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
  157. data/lib/spec/runner/formatter/specdoc_formatter.rb +39 -0
  158. data/lib/spec/runner/formatter/text_mate_formatter.rb +16 -0
  159. data/lib/spec/runner/heckle_runner.rb +74 -0
  160. data/lib/spec/runner/heckle_runner_unsupported.rb +10 -0
  161. data/lib/spec/runner/option_parser.rb +204 -0
  162. data/lib/spec/runner/options.rb +320 -0
  163. data/lib/spec/runner/reporter.rb +167 -0
  164. data/lib/spec/runner/spec_parser.rb +73 -0
  165. data/lib/spec/runner.rb +88 -0
  166. data/lib/spec/version.rb +15 -0
  167. data/lib/spec.rb +7 -0
  168. data/resources/rake/examples.rake +7 -0
  169. data/resources/rake/examples_with_rcov.rake +9 -0
  170. data/resources/rake/failing_examples_with_html.rake +9 -0
  171. data/resources/rake/verify_rcov.rake +7 -0
  172. data/resources/spec/example_group_with_should_methods.rb +12 -0
  173. data/resources/spec/simple_spec.rb +8 -0
  174. data/resources/test/spec_and_test_together.rb +57 -0
  175. data/resources/test/spec_including_test_but_not_unit.rb +11 -0
  176. data/resources/test/test_case_with_should_methods.rb +30 -0
  177. data/rspec.gemspec +32 -0
  178. data/spec/README.jruby +15 -0
  179. data/spec/autotest/autotest_helper.rb +6 -0
  180. data/spec/autotest/autotest_matchers.rb +47 -0
  181. data/spec/autotest/discover_spec.rb +8 -0
  182. data/spec/autotest/failed_results_re_spec.rb +24 -0
  183. data/spec/autotest/rspec_spec.rb +114 -0
  184. data/spec/rspec_suite.rb +6 -0
  185. data/spec/ruby_forker.rb +13 -0
  186. data/spec/spec/dsl/main_spec.rb +88 -0
  187. data/spec/spec/example/example_group_class_definition_spec.rb +49 -0
  188. data/spec/spec/example/example_group_factory_spec.rb +224 -0
  189. data/spec/spec/example/example_group_methods_spec.rb +653 -0
  190. data/spec/spec/example/example_group_spec.rb +661 -0
  191. data/spec/spec/example/example_matcher_spec.rb +79 -0
  192. data/spec/spec/example/example_methods_spec.rb +204 -0
  193. data/spec/spec/example/helper_method_spec.rb +24 -0
  194. data/spec/spec/example/nested_example_group_spec.rb +71 -0
  195. data/spec/spec/example/pending_module_spec.rb +139 -0
  196. data/spec/spec/example/predicate_matcher_spec.rb +21 -0
  197. data/spec/spec/example/shared_example_group_spec.rb +257 -0
  198. data/spec/spec/example/subclassing_example_group_spec.rb +25 -0
  199. data/spec/spec/expectations/differs/default_spec.rb +127 -0
  200. data/spec/spec/expectations/extensions/object_spec.rb +45 -0
  201. data/spec/spec/expectations/fail_with_spec.rb +71 -0
  202. data/spec/spec/expectations/wrap_expectation_spec.rb +30 -0
  203. data/spec/spec/interop/test/unit/resources/spec_that_fails.rb +10 -0
  204. data/spec/spec/interop/test/unit/resources/spec_that_passes.rb +10 -0
  205. data/spec/spec/interop/test/unit/resources/spec_with_errors.rb +10 -0
  206. data/spec/spec/interop/test/unit/resources/spec_with_options_hash.rb +13 -0
  207. data/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +10 -0
  208. data/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +10 -0
  209. data/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +10 -0
  210. data/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +38 -0
  211. data/spec/spec/interop/test/unit/spec_spec.rb +48 -0
  212. data/spec/spec/interop/test/unit/test_unit_spec_helper.rb +18 -0
  213. data/spec/spec/interop/test/unit/testcase_spec.rb +49 -0
  214. data/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +9 -0
  215. data/spec/spec/matchers/be_close_spec.rb +41 -0
  216. data/spec/spec/matchers/be_spec.rb +303 -0
  217. data/spec/spec/matchers/change_spec.rb +329 -0
  218. data/spec/spec/matchers/description_generation_spec.rb +172 -0
  219. data/spec/spec/matchers/eql_spec.rb +29 -0
  220. data/spec/spec/matchers/equal_spec.rb +29 -0
  221. data/spec/spec/matchers/exist_spec.rb +57 -0
  222. data/spec/spec/matchers/handler_spec.rb +111 -0
  223. data/spec/spec/matchers/has_spec.rb +63 -0
  224. data/spec/spec/matchers/have_spec.rb +399 -0
  225. data/spec/spec/matchers/include_spec.rb +88 -0
  226. data/spec/spec/matchers/match_array_spec.rb +83 -0
  227. data/spec/spec/matchers/match_spec.rb +37 -0
  228. data/spec/spec/matchers/matcher_methods_spec.rb +66 -0
  229. data/spec/spec/matchers/operator_matcher_spec.rb +191 -0
  230. data/spec/spec/matchers/raise_error_spec.rb +333 -0
  231. data/spec/spec/matchers/respond_to_spec.rb +116 -0
  232. data/spec/spec/matchers/satisfy_spec.rb +36 -0
  233. data/spec/spec/matchers/simple_matcher_spec.rb +93 -0
  234. data/spec/spec/matchers/throw_symbol_spec.rb +96 -0
  235. data/spec/spec/mocks/any_number_of_times_spec.rb +36 -0
  236. data/spec/spec/mocks/argument_expectation_spec.rb +23 -0
  237. data/spec/spec/mocks/at_least_spec.rb +97 -0
  238. data/spec/spec/mocks/at_most_spec.rb +93 -0
  239. data/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
  240. data/spec/spec/mocks/bug_report_10263_spec.rb +24 -0
  241. data/spec/spec/mocks/bug_report_11545_spec.rb +32 -0
  242. data/spec/spec/mocks/bug_report_15719_spec.rb +30 -0
  243. data/spec/spec/mocks/bug_report_496.rb +19 -0
  244. data/spec/spec/mocks/bug_report_600_spec.rb +22 -0
  245. data/spec/spec/mocks/bug_report_7611_spec.rb +19 -0
  246. data/spec/spec/mocks/bug_report_7805_spec.rb +22 -0
  247. data/spec/spec/mocks/bug_report_8165_spec.rb +31 -0
  248. data/spec/spec/mocks/bug_report_8302_spec.rb +26 -0
  249. data/spec/spec/mocks/failing_argument_matchers_spec.rb +95 -0
  250. data/spec/spec/mocks/hash_including_matcher_spec.rb +90 -0
  251. data/spec/spec/mocks/hash_not_including_matcher_spec.rb +67 -0
  252. data/spec/spec/mocks/mock_ordering_spec.rb +84 -0
  253. data/spec/spec/mocks/mock_space_spec.rb +54 -0
  254. data/spec/spec/mocks/mock_spec.rb +579 -0
  255. data/spec/spec/mocks/multiple_return_value_spec.rb +113 -0
  256. data/spec/spec/mocks/nil_expectation_warning_spec.rb +53 -0
  257. data/spec/spec/mocks/null_object_mock_spec.rb +54 -0
  258. data/spec/spec/mocks/once_counts_spec.rb +53 -0
  259. data/spec/spec/mocks/options_hash_spec.rb +35 -0
  260. data/spec/spec/mocks/partial_mock_spec.rb +149 -0
  261. data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +66 -0
  262. data/spec/spec/mocks/passing_argument_matchers_spec.rb +145 -0
  263. data/spec/spec/mocks/precise_counts_spec.rb +52 -0
  264. data/spec/spec/mocks/record_messages_spec.rb +26 -0
  265. data/spec/spec/mocks/stub_spec.rb +194 -0
  266. data/spec/spec/mocks/stubbed_message_expectations_spec.rb +14 -0
  267. data/spec/spec/mocks/twice_counts_spec.rb +67 -0
  268. data/spec/spec/package/bin_spec_spec.rb +22 -0
  269. data/spec/spec/runner/class_and_argument_parser_spec.rb +23 -0
  270. data/spec/spec/runner/command_line_spec.rb +141 -0
  271. data/spec/spec/runner/configuration_spec.rb +301 -0
  272. data/spec/spec/runner/drb_command_line_spec.rb +97 -0
  273. data/spec/spec/runner/empty_file.txt +0 -0
  274. data/spec/spec/runner/example_group_runner_spec.rb +33 -0
  275. data/spec/spec/runner/examples.txt +2 -0
  276. data/spec/spec/runner/failed.txt +3 -0
  277. data/spec/spec/runner/formatter/base_formatter_spec.rb +23 -0
  278. data/spec/spec/runner/formatter/base_text_formatter_spec.rb +23 -0
  279. data/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +45 -0
  280. data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +33 -0
  281. data/spec/spec/runner/formatter/html_formatted-1.8.4.html +365 -0
  282. data/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +387 -0
  283. data/spec/spec/runner/formatter/html_formatted-1.8.5.html +371 -0
  284. data/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +381 -0
  285. data/spec/spec/runner/formatter/html_formatted-1.8.6.html +379 -0
  286. data/spec/spec/runner/formatter/html_formatted-1.8.7.html +379 -0
  287. data/spec/spec/runner/formatter/html_formatted-1.9.1.html +379 -0
  288. data/spec/spec/runner/formatter/html_formatter_spec.rb +62 -0
  289. data/spec/spec/runner/formatter/nested_text_formatter_spec.rb +318 -0
  290. data/spec/spec/runner/formatter/profile_formatter_spec.rb +65 -0
  291. data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +145 -0
  292. data/spec/spec/runner/formatter/snippet_extractor_spec.rb +18 -0
  293. data/spec/spec/runner/formatter/spec_mate_formatter_spec.rb +104 -0
  294. data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +159 -0
  295. data/spec/spec/runner/formatter/text_mate_formatted-1.8.4.html +365 -0
  296. data/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +373 -0
  297. data/spec/spec/runner/formatter/text_mate_formatted-1.8.7.html +373 -0
  298. data/spec/spec/runner/formatter/text_mate_formatted-1.9.1.html +373 -0
  299. data/spec/spec/runner/heckle_runner_spec.rb +78 -0
  300. data/spec/spec/runner/heckler_spec.rb +20 -0
  301. data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +45 -0
  302. data/spec/spec/runner/option_parser_spec.rb +396 -0
  303. data/spec/spec/runner/options_spec.rb +469 -0
  304. data/spec/spec/runner/output_one_time_fixture.rb +7 -0
  305. data/spec/spec/runner/output_one_time_fixture_runner.rb +8 -0
  306. data/spec/spec/runner/output_one_time_spec.rb +16 -0
  307. data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +62 -0
  308. data/spec/spec/runner/reporter_spec.rb +238 -0
  309. data/spec/spec/runner/resources/a_bar.rb +0 -0
  310. data/spec/spec/runner/resources/a_foo.rb +0 -0
  311. data/spec/spec/runner/resources/a_spec.rb +1 -0
  312. data/spec/spec/runner/resources/custom_example_group_runner.rb +14 -0
  313. data/spec/spec/runner/resources/utf8_encoded.rb +7 -0
  314. data/spec/spec/runner/spec.opts +2 -0
  315. data/spec/spec/runner/spec_drb.opts +1 -0
  316. data/spec/spec/runner/spec_parser/spec_parser_fixture.rb +70 -0
  317. data/spec/spec/runner/spec_parser_spec.rb +91 -0
  318. data/spec/spec/runner/spec_spaced.opts +2 -0
  319. data/spec/spec/runner_spec.rb +11 -0
  320. data/spec/spec/spec_classes.rb +133 -0
  321. data/spec/spec/spec_spec.rb +21 -0
  322. data/spec/spec.opts +6 -0
  323. data/spec/spec_helper.rb +107 -0
  324. metadata +388 -0
data/License.txt ADDED
@@ -0,0 +1,22 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2005-2008 The RSpec Development Team
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Manifest.txt ADDED
@@ -0,0 +1,327 @@
1
+ .autotest
2
+ History.txt
3
+ License.txt
4
+ Manifest.txt
5
+ README.txt
6
+ Rakefile
7
+ TODO.txt
8
+ bin/autospec
9
+ bin/spec
10
+ cucumber.yml
11
+ examples/failing/README.txt
12
+ examples/failing/diffing_spec.rb
13
+ examples/failing/failing_autogenerated_docstrings_example.rb
14
+ examples/failing/failure_in_after.rb
15
+ examples/failing/failure_in_before.rb
16
+ examples/failing/mocking_example.rb
17
+ examples/failing/mocking_with_flexmock.rb
18
+ examples/failing/mocking_with_mocha.rb
19
+ examples/failing/mocking_with_rr.rb
20
+ examples/failing/partial_mock_example.rb
21
+ examples/failing/predicate_example.rb
22
+ examples/failing/raising_example.rb
23
+ examples/failing/spec_helper.rb
24
+ examples/failing/syntax_error_example.rb
25
+ examples/failing/team_spec.rb
26
+ examples/failing/timeout_behaviour.rb
27
+ examples/passing/autogenerated_docstrings_example.rb
28
+ examples/passing/before_and_after_example.rb
29
+ examples/passing/behave_as_example.rb
30
+ examples/passing/custom_expectation_matchers.rb
31
+ examples/passing/custom_formatter.rb
32
+ examples/passing/dynamic_spec.rb
33
+ examples/passing/file_accessor.rb
34
+ examples/passing/file_accessor_spec.rb
35
+ examples/passing/greeter_spec.rb
36
+ examples/passing/helper_method_example.rb
37
+ examples/passing/io_processor.rb
38
+ examples/passing/io_processor_spec.rb
39
+ examples/passing/legacy_spec.rb
40
+ examples/passing/mocking_example.rb
41
+ examples/passing/multi_threaded_example_group_runner.rb
42
+ examples/passing/nested_classes_example.rb
43
+ examples/passing/partial_mock_example.rb
44
+ examples/passing/pending_example.rb
45
+ examples/passing/predicate_example.rb
46
+ examples/passing/priority.txt
47
+ examples/passing/shared_example_group_example.rb
48
+ examples/passing/shared_stack_examples.rb
49
+ examples/passing/simple_matcher_example.rb
50
+ examples/passing/spec_helper.rb
51
+ examples/passing/stack.rb
52
+ examples/passing/stack_spec.rb
53
+ examples/passing/stack_spec_with_nested_example_groups.rb
54
+ examples/passing/stubbing_example.rb
55
+ examples/passing/yielding_example.rb
56
+ examples/ruby1.9.compatibility/access_to_constants_spec.rb
57
+ features/before_and_after_blocks/before_and_after_blocks.feature
58
+ features/example_groups/autogenerated_docstrings.feature
59
+ features/example_groups/example_group_with_should_methods.feature
60
+ features/example_groups/nested_groups.feature
61
+ features/example_groups/output.feature
62
+ features/interop/examples_and_tests_together.feature
63
+ features/interop/test_but_not_test_unit.feature
64
+ features/interop/test_case_with_should_methods.feature
65
+ features/mock_framework_integration/use_flexmock.feature
66
+ features/mock_framework_integration/use_mocha.feature
67
+ features/mock_framework_integration/use_rr.feature
68
+ features/step_definitions/running_rspec.rb
69
+ features/support/env.rb
70
+ features/support/helpers/cmdline.rb
71
+ features/support/matchers/smart_match.rb
72
+ init.rb
73
+ lib/adapters/mock_frameworks/flexmock.rb
74
+ lib/adapters/mock_frameworks/mocha.rb
75
+ lib/adapters/mock_frameworks/rr.rb
76
+ lib/adapters/mock_frameworks/rspec.rb
77
+ lib/autotest/discover.rb
78
+ lib/autotest/rspec.rb
79
+ lib/spec.rb
80
+ lib/spec/dsl.rb
81
+ lib/spec/dsl/main.rb
82
+ lib/spec/example.rb
83
+ lib/spec/example/before_and_after_hooks.rb
84
+ lib/spec/example/errors.rb
85
+ lib/spec/example/example_group.rb
86
+ lib/spec/example/example_group_factory.rb
87
+ lib/spec/example/example_group_methods.rb
88
+ lib/spec/example/example_matcher.rb
89
+ lib/spec/example/example_methods.rb
90
+ lib/spec/example/module_reopening_fix.rb
91
+ lib/spec/example/pending.rb
92
+ lib/spec/example/shared_example_group.rb
93
+ lib/spec/example/subject.rb
94
+ lib/spec/expectations.rb
95
+ lib/spec/expectations/differs/default.rb
96
+ lib/spec/expectations/errors.rb
97
+ lib/spec/expectations/extensions.rb
98
+ lib/spec/expectations/extensions/object.rb
99
+ lib/spec/expectations/extensions/string_and_symbol.rb
100
+ lib/spec/expectations/handler.rb
101
+ lib/spec/interop/test.rb
102
+ lib/spec/interop/test/unit/autorunner.rb
103
+ lib/spec/interop/test/unit/testcase.rb
104
+ lib/spec/interop/test/unit/testresult.rb
105
+ lib/spec/interop/test/unit/testsuite_adapter.rb
106
+ lib/spec/interop/test/unit/ui/console/testrunner.rb
107
+ lib/spec/matchers.rb
108
+ lib/spec/matchers/be.rb
109
+ lib/spec/matchers/be_close.rb
110
+ lib/spec/matchers/change.rb
111
+ lib/spec/matchers/eql.rb
112
+ lib/spec/matchers/equal.rb
113
+ lib/spec/matchers/errors.rb
114
+ lib/spec/matchers/exist.rb
115
+ lib/spec/matchers/generated_descriptions.rb
116
+ lib/spec/matchers/has.rb
117
+ lib/spec/matchers/have.rb
118
+ lib/spec/matchers/include.rb
119
+ lib/spec/matchers/match.rb
120
+ lib/spec/matchers/match_array.rb
121
+ lib/spec/matchers/method_missing.rb
122
+ lib/spec/matchers/operator_matcher.rb
123
+ lib/spec/matchers/raise_error.rb
124
+ lib/spec/matchers/respond_to.rb
125
+ lib/spec/matchers/satisfy.rb
126
+ lib/spec/matchers/simple_matcher.rb
127
+ lib/spec/matchers/throw_symbol.rb
128
+ lib/spec/matchers/wrap_expectation.rb
129
+ lib/spec/mocks.rb
130
+ lib/spec/mocks/argument_expectation.rb
131
+ lib/spec/mocks/argument_matchers.rb
132
+ lib/spec/mocks/error_generator.rb
133
+ lib/spec/mocks/errors.rb
134
+ lib/spec/mocks/extensions.rb
135
+ lib/spec/mocks/extensions/object.rb
136
+ lib/spec/mocks/framework.rb
137
+ lib/spec/mocks/message_expectation.rb
138
+ lib/spec/mocks/methods.rb
139
+ lib/spec/mocks/mock.rb
140
+ lib/spec/mocks/order_group.rb
141
+ lib/spec/mocks/proxy.rb
142
+ lib/spec/mocks/space.rb
143
+ lib/spec/mocks/spec_methods.rb
144
+ lib/spec/rake/spectask.rb
145
+ lib/spec/rake/verify_rcov.rb
146
+ lib/spec/ruby.rb
147
+ lib/spec/runner.rb
148
+ lib/spec/runner/backtrace_tweaker.rb
149
+ lib/spec/runner/class_and_arguments_parser.rb
150
+ lib/spec/runner/command_line.rb
151
+ lib/spec/runner/configuration.rb
152
+ lib/spec/runner/drb_command_line.rb
153
+ lib/spec/runner/example_group_runner.rb
154
+ lib/spec/runner/formatter/base_formatter.rb
155
+ lib/spec/runner/formatter/base_text_formatter.rb
156
+ lib/spec/runner/formatter/failing_example_groups_formatter.rb
157
+ lib/spec/runner/formatter/failing_examples_formatter.rb
158
+ lib/spec/runner/formatter/html_formatter.rb
159
+ lib/spec/runner/formatter/nested_text_formatter.rb
160
+ lib/spec/runner/formatter/profile_formatter.rb
161
+ lib/spec/runner/formatter/progress_bar_formatter.rb
162
+ lib/spec/runner/formatter/snippet_extractor.rb
163
+ lib/spec/runner/formatter/specdoc_formatter.rb
164
+ lib/spec/runner/formatter/text_mate_formatter.rb
165
+ lib/spec/runner/heckle_runner.rb
166
+ lib/spec/runner/heckle_runner_unsupported.rb
167
+ lib/spec/runner/option_parser.rb
168
+ lib/spec/runner/options.rb
169
+ lib/spec/runner/reporter.rb
170
+ lib/spec/runner/spec_parser.rb
171
+ lib/spec/version.rb
172
+ resources/rake/examples.rake
173
+ resources/rake/examples_with_rcov.rake
174
+ resources/rake/failing_examples_with_html.rake
175
+ resources/rake/verify_rcov.rake
176
+ resources/spec/example_group_with_should_methods.rb
177
+ resources/spec/simple_spec.rb
178
+ resources/test/spec_and_test_together.rb
179
+ resources/test/spec_including_test_but_not_unit.rb
180
+ resources/test/test_case_with_should_methods.rb
181
+ rspec.gemspec
182
+ spec/README.jruby
183
+ spec/autotest/autotest_helper.rb
184
+ spec/autotest/autotest_matchers.rb
185
+ spec/autotest/discover_spec.rb
186
+ spec/autotest/failed_results_re_spec.rb
187
+ spec/autotest/rspec_spec.rb
188
+ spec/rspec_suite.rb
189
+ spec/ruby_forker.rb
190
+ spec/spec.opts
191
+ spec/spec/dsl/main_spec.rb
192
+ spec/spec/example/example_group_class_definition_spec.rb
193
+ spec/spec/example/example_group_factory_spec.rb
194
+ spec/spec/example/example_group_methods_spec.rb
195
+ spec/spec/example/example_group_spec.rb
196
+ spec/spec/example/example_matcher_spec.rb
197
+ spec/spec/example/example_methods_spec.rb
198
+ spec/spec/example/helper_method_spec.rb
199
+ spec/spec/example/nested_example_group_spec.rb
200
+ spec/spec/example/pending_module_spec.rb
201
+ spec/spec/example/predicate_matcher_spec.rb
202
+ spec/spec/example/shared_example_group_spec.rb
203
+ spec/spec/example/subclassing_example_group_spec.rb
204
+ spec/spec/expectations/differs/default_spec.rb
205
+ spec/spec/expectations/extensions/object_spec.rb
206
+ spec/spec/expectations/fail_with_spec.rb
207
+ spec/spec/expectations/wrap_expectation_spec.rb
208
+ spec/spec/interop/test/unit/resources/spec_that_fails.rb
209
+ spec/spec/interop/test/unit/resources/spec_that_passes.rb
210
+ spec/spec/interop/test/unit/resources/spec_with_errors.rb
211
+ spec/spec/interop/test/unit/resources/spec_with_options_hash.rb
212
+ spec/spec/interop/test/unit/resources/test_case_that_fails.rb
213
+ spec/spec/interop/test/unit/resources/test_case_that_passes.rb
214
+ spec/spec/interop/test/unit/resources/test_case_with_errors.rb
215
+ spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb
216
+ spec/spec/interop/test/unit/spec_spec.rb
217
+ spec/spec/interop/test/unit/test_unit_spec_helper.rb
218
+ spec/spec/interop/test/unit/testcase_spec.rb
219
+ spec/spec/interop/test/unit/testsuite_adapter_spec.rb
220
+ spec/spec/matchers/be_close_spec.rb
221
+ spec/spec/matchers/be_spec.rb
222
+ spec/spec/matchers/change_spec.rb
223
+ spec/spec/matchers/description_generation_spec.rb
224
+ spec/spec/matchers/eql_spec.rb
225
+ spec/spec/matchers/equal_spec.rb
226
+ spec/spec/matchers/exist_spec.rb
227
+ spec/spec/matchers/handler_spec.rb
228
+ spec/spec/matchers/has_spec.rb
229
+ spec/spec/matchers/have_spec.rb
230
+ spec/spec/matchers/include_spec.rb
231
+ spec/spec/matchers/match_array_spec.rb
232
+ spec/spec/matchers/match_spec.rb
233
+ spec/spec/matchers/matcher_methods_spec.rb
234
+ spec/spec/matchers/operator_matcher_spec.rb
235
+ spec/spec/matchers/raise_error_spec.rb
236
+ spec/spec/matchers/respond_to_spec.rb
237
+ spec/spec/matchers/satisfy_spec.rb
238
+ spec/spec/matchers/simple_matcher_spec.rb
239
+ spec/spec/matchers/throw_symbol_spec.rb
240
+ spec/spec/mocks/any_number_of_times_spec.rb
241
+ spec/spec/mocks/argument_expectation_spec.rb
242
+ spec/spec/mocks/at_least_spec.rb
243
+ spec/spec/mocks/at_most_spec.rb
244
+ spec/spec/mocks/bug_report_10260_spec.rb
245
+ spec/spec/mocks/bug_report_10263_spec.rb
246
+ spec/spec/mocks/bug_report_11545_spec.rb
247
+ spec/spec/mocks/bug_report_15719_spec.rb
248
+ spec/spec/mocks/bug_report_496.rb
249
+ spec/spec/mocks/bug_report_600_spec.rb
250
+ spec/spec/mocks/bug_report_7611_spec.rb
251
+ spec/spec/mocks/bug_report_7805_spec.rb
252
+ spec/spec/mocks/bug_report_8165_spec.rb
253
+ spec/spec/mocks/bug_report_8302_spec.rb
254
+ spec/spec/mocks/failing_argument_matchers_spec.rb
255
+ spec/spec/mocks/hash_including_matcher_spec.rb
256
+ spec/spec/mocks/hash_not_including_matcher_spec.rb
257
+ spec/spec/mocks/mock_ordering_spec.rb
258
+ spec/spec/mocks/mock_space_spec.rb
259
+ spec/spec/mocks/mock_spec.rb
260
+ spec/spec/mocks/multiple_return_value_spec.rb
261
+ spec/spec/mocks/nil_expectation_warning_spec.rb
262
+ spec/spec/mocks/null_object_mock_spec.rb
263
+ spec/spec/mocks/once_counts_spec.rb
264
+ spec/spec/mocks/options_hash_spec.rb
265
+ spec/spec/mocks/partial_mock_spec.rb
266
+ spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb
267
+ spec/spec/mocks/passing_argument_matchers_spec.rb
268
+ spec/spec/mocks/precise_counts_spec.rb
269
+ spec/spec/mocks/record_messages_spec.rb
270
+ spec/spec/mocks/stub_spec.rb
271
+ spec/spec/mocks/stubbed_message_expectations_spec.rb
272
+ spec/spec/mocks/twice_counts_spec.rb
273
+ spec/spec/package/bin_spec_spec.rb
274
+ spec/spec/runner/class_and_argument_parser_spec.rb
275
+ spec/spec/runner/command_line_spec.rb
276
+ spec/spec/runner/configuration_spec.rb
277
+ spec/spec/runner/drb_command_line_spec.rb
278
+ spec/spec/runner/empty_file.txt
279
+ spec/spec/runner/example_group_runner_spec.rb
280
+ spec/spec/runner/examples.txt
281
+ spec/spec/runner/failed.txt
282
+ spec/spec/runner/formatter/base_formatter_spec.rb
283
+ spec/spec/runner/formatter/base_text_formatter_spec.rb
284
+ spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb
285
+ spec/spec/runner/formatter/failing_examples_formatter_spec.rb
286
+ spec/spec/runner/formatter/html_formatted-1.8.4.html
287
+ spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html
288
+ spec/spec/runner/formatter/html_formatted-1.8.5.html
289
+ spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html
290
+ spec/spec/runner/formatter/html_formatted-1.8.6.html
291
+ spec/spec/runner/formatter/html_formatted-1.8.7.html
292
+ spec/spec/runner/formatter/html_formatted-1.9.1.html
293
+ spec/spec/runner/formatter/html_formatter_spec.rb
294
+ spec/spec/runner/formatter/nested_text_formatter_spec.rb
295
+ spec/spec/runner/formatter/profile_formatter_spec.rb
296
+ spec/spec/runner/formatter/progress_bar_formatter_spec.rb
297
+ spec/spec/runner/formatter/snippet_extractor_spec.rb
298
+ spec/spec/runner/formatter/spec_mate_formatter_spec.rb
299
+ spec/spec/runner/formatter/specdoc_formatter_spec.rb
300
+ spec/spec/runner/formatter/text_mate_formatted-1.8.4.html
301
+ spec/spec/runner/formatter/text_mate_formatted-1.8.6.html
302
+ spec/spec/runner/formatter/text_mate_formatted-1.8.7.html
303
+ spec/spec/runner/formatter/text_mate_formatted-1.9.1.html
304
+ spec/spec/runner/heckle_runner_spec.rb
305
+ spec/spec/runner/heckler_spec.rb
306
+ spec/spec/runner/noisy_backtrace_tweaker_spec.rb
307
+ spec/spec/runner/option_parser_spec.rb
308
+ spec/spec/runner/options_spec.rb
309
+ spec/spec/runner/output_one_time_fixture.rb
310
+ spec/spec/runner/output_one_time_fixture_runner.rb
311
+ spec/spec/runner/output_one_time_spec.rb
312
+ spec/spec/runner/quiet_backtrace_tweaker_spec.rb
313
+ spec/spec/runner/reporter_spec.rb
314
+ spec/spec/runner/resources/a_bar.rb
315
+ spec/spec/runner/resources/a_foo.rb
316
+ spec/spec/runner/resources/a_spec.rb
317
+ spec/spec/runner/resources/custom_example_group_runner.rb
318
+ spec/spec/runner/resources/utf8_encoded.rb
319
+ spec/spec/runner/spec.opts
320
+ spec/spec/runner/spec_drb.opts
321
+ spec/spec/runner/spec_parser/spec_parser_fixture.rb
322
+ spec/spec/runner/spec_parser_spec.rb
323
+ spec/spec/runner/spec_spaced.opts
324
+ spec/spec/runner_spec.rb
325
+ spec/spec/spec_classes.rb
326
+ spec/spec/spec_spec.rb
327
+ spec/spec_helper.rb
data/README.txt ADDED
@@ -0,0 +1,57 @@
1
+ = RSpec
2
+
3
+ * http://rspec.info
4
+ * http://rubyforge.org/projects/rspec
5
+ * http://github.com/dchelimsky/rspec/wikis
6
+ * mailto:rspec-devel@rubyforge.org
7
+
8
+ == DESCRIPTION:
9
+
10
+ RSpec is a Behaviour Driven Development framework for writing executable code
11
+ examples.
12
+
13
+ == FEATURES:
14
+
15
+ * Spec::Example provides a framework for expressing executable code examples
16
+ * Spec::Expectations adds #should and #should_not to every object
17
+ * Spec::Matchers provides Expression Matchers for use with #should and #should_not
18
+ * Spec::Mocks is a full featured mocking/stubbing library
19
+
20
+ == SYNOPSIS:
21
+
22
+ describe Account do
23
+ context "transfering money" do
24
+ it "deposits transfer amount to the other account" do
25
+ source = Account.new(50, :USD)
26
+ target = mock('target account')
27
+ target.should_receive(:deposit).with(Money.new(5, :USD))
28
+ source.transfer(5, :USD).to(target)
29
+ end
30
+
31
+ it "reduces its balance by the transfer amount" do
32
+ source = Account.new(50, :USD)
33
+ target = stub('target account')
34
+ source.transfer(5, :USD).to(target)
35
+ source.balance.should == Money.new(45, :USD)
36
+ end
37
+ end
38
+ end
39
+
40
+ $ spec spec/account_spec.rb --format nested
41
+ Account
42
+ transfering money
43
+ deposits transfer amount to the other account
44
+ reduces its balance by the transfer amount
45
+
46
+ 2 examples, 0 failures
47
+
48
+ == INSTALL:
49
+
50
+ [sudo] gem install rspec
51
+
52
+ or
53
+
54
+ git clone git://github.com/dchelimsky/rspec.git
55
+ cd rspec
56
+ rake gem
57
+ rake install_gem
data/Rakefile ADDED
@@ -0,0 +1,104 @@
1
+ # -*- ruby -*-
2
+
3
+ $:.unshift(File.join(File.dirname(__FILE__), 'lib'))
4
+ require 'rubygems'
5
+ require 'hoe'
6
+ require 'spec/version'
7
+ require 'spec/rake/spectask'
8
+ require 'cucumber/rake/task'
9
+
10
+ class Hoe
11
+ def extra_deps
12
+ @extra_deps.reject! { |x| Array(x).first == 'hoe' }
13
+ @extra_deps
14
+ end
15
+ end
16
+
17
+ Hoe.new('rspec', Spec::VERSION::STRING) do |p|
18
+ p.summary = Spec::VERSION::SUMMARY
19
+ p.url = 'http://wiki.github.com/newbamboo/evented-rspec'
20
+ p.description = "Framework for running all specs inside an EM.run block."
21
+ p.developer('NewBamboo', 'info@newbamboo.co.uk')
22
+ p.extra_dev_deps = [["cucumber",">= 0.1.13"]]
23
+ end
24
+
25
+ ['audit','test','test_deps','default','post_blog'].each do |task|
26
+ Rake.application.instance_variable_get('@tasks').delete(task)
27
+ end
28
+
29
+ # Some of the tasks are in separate files since they are also part of the website documentation
30
+ load File.dirname(__FILE__) + '/resources/rake/examples.rake'
31
+ load File.dirname(__FILE__) + '/resources/rake/examples_with_rcov.rake'
32
+ load File.dirname(__FILE__) + '/resources/rake/failing_examples_with_html.rake'
33
+ load File.dirname(__FILE__) + '/resources/rake/verify_rcov.rake'
34
+
35
+ task :default => [:verify_rcov, :features]
36
+
37
+ desc "Run all specs"
38
+ Spec::Rake::SpecTask.new do |t|
39
+ t.spec_files = FileList['spec/**/*_spec.rb']
40
+ t.spec_opts = ['--options', 'spec/spec.opts']
41
+ end
42
+
43
+ namespace :spec do
44
+ desc "Run all specs with rcov"
45
+ Spec::Rake::SpecTask.new('rcov') do |t|
46
+ t.spec_files = FileList['spec/**/*_spec.rb']
47
+ t.spec_opts = ['--options', 'spec/spec.opts']
48
+ t.rcov = true
49
+ t.rcov_dir = 'coverage'
50
+ t.rcov_opts = ['--exclude', "lib/spec.rb,lib/spec/runner.rb,spec\/spec,bin\/spec,examples,\/Library\/Ruby,\.autotest"]
51
+ end
52
+ end
53
+
54
+ desc "Run Cucumber features"
55
+ Cucumber::Rake::Task.new do; end
56
+
57
+ desc "Run failing examples (see failure output)"
58
+ Spec::Rake::SpecTask.new('failing_examples') do |t|
59
+ t.spec_files = FileList['failing_examples/**/*_spec.rb']
60
+ t.spec_opts = ['--options', 'spec/spec.opts']
61
+ end
62
+
63
+ def egrep(pattern)
64
+ Dir['**/*.rb'].each do |fn|
65
+ count = 0
66
+ open(fn) do |f|
67
+ while line = f.gets
68
+ count += 1
69
+ if line =~ pattern
70
+ puts "#{fn}:#{count}:#{line}"
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
76
+
77
+ desc "Look for TODO and FIXME tags in the code"
78
+ task :todo do
79
+ egrep /(FIXME|TODO|TBD)/
80
+ end
81
+
82
+ desc "verify_committed, verify_rcov, post_news, release"
83
+ task :complete_release => [:verify_committed, :verify_rcov, :post_news, :release]
84
+
85
+ desc "Verifies that there is no uncommitted code"
86
+ task :verify_committed do
87
+ IO.popen('git status') do |io|
88
+ io.each_line do |line|
89
+ raise "\n!!! Do a git commit first !!!\n\n" if line =~ /^#\s*modified:/
90
+ end
91
+ end
92
+ end
93
+
94
+ namespace :update do
95
+ desc "update the manfest"
96
+ task :manifest do
97
+ system %q[touch Manifest.txt; rake check_manifest | grep -v "(in " | patch]
98
+ end
99
+
100
+ desc "update the gemspec"
101
+ task :gemspec do
102
+ system %q[rake debug_gem | grep -v "(in " | grep -v "else" | grep -v "s.add_dependency(%q<hoe" | grep -v "s.add_dependency(%q<cuc" > `basename \\`pwd\\``.gemspec]
103
+ end
104
+ end
data/TODO.txt ADDED
@@ -0,0 +1,18 @@
1
+ == Refactoring
2
+
3
+ Refactoring for 1.2.0
4
+
5
+ * eliminate dependency from Spec::Example to Spec::Runner
6
+ ** global predictate matchers should be stored in run_options
7
+ * eliminate dependency on global options and configuration
8
+ ** the only place they should exist is in the Runner, which should manage them
9
+
10
+ == Future
11
+
12
+ * do SOMETHING with the website
13
+ * extract spec/story to rspec-stories (new gem)
14
+ * rename top level namespace to Rspec and commands to 'rspec' and 'autorspec'
15
+ * continue to support Spec 'spec' and 'autospec' as aliases for a reasonable time
16
+ * separate the underlying framework from the DSL
17
+ * be able to do everything with classes and methods
18
+ * tweak raise_error rdoc to show only one arg
data/bin/autospec ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ ENV['RSPEC'] = 'true' # allows autotest to discover rspec
3
+ ENV['AUTOTEST'] = 'true' # allows autotest to run w/ color on linux
4
+ system (RUBY_PLATFORM =~ /mswin|mingw/ ? 'autotest.bat' : 'autotest'), *ARGV
data/bin/spec ADDED
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ $LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + "/../lib"))
3
+ require 'spec'
4
+ exit ::Spec::Runner::CommandLine.run
@@ -0,0 +1,7 @@
1
+ "Why have failing examples?", you might ask.
2
+
3
+ They allow us to see failure messages. RSpec wants to provide meaningful and helpful failure messages. The failures in this directory not only provide you a way of seeing the failure messages, but they provide RSpec's own specs a way of describing what they should look like and ensuring they stay correct.
4
+
5
+ To see the types of messages you can expect, stand in this directory and run:
6
+
7
+ ../bin/spec ./*.rb
@@ -0,0 +1,36 @@
1
+ describe "Running specs with --diff" do
2
+ it "should print diff of different strings" do
3
+ uk = <<-EOF
4
+ RSpec is a
5
+ behaviour driven development
6
+ framework for Ruby
7
+ EOF
8
+ usa = <<-EOF
9
+ RSpec is a
10
+ behavior driven development
11
+ framework for Ruby
12
+ EOF
13
+ usa.should == uk
14
+ end
15
+
16
+ class Animal
17
+ def initialize(name,species)
18
+ @name,@species = name,species
19
+ end
20
+
21
+ def inspect
22
+ <<-EOA
23
+ <Animal
24
+ name=#{@name},
25
+ species=#{@species}
26
+ >
27
+ EOA
28
+ end
29
+ end
30
+
31
+ it "should print diff of different objects' pretty representation" do
32
+ expected = Animal.new "bob", "giraffe"
33
+ actual = Animal.new "bob", "tortoise"
34
+ expected.should eql(actual)
35
+ end
36
+ end
@@ -0,0 +1,19 @@
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
+
3
+ # Run spec w/ -fs to see the output of this file
4
+
5
+ describe "Failing examples with no descriptions" do
6
+
7
+ # description is auto-generated as "should equal(5)" based on the last #should
8
+ it do
9
+ 3.should equal(2)
10
+ 5.should equal(5)
11
+ end
12
+
13
+ it { 3.should be > 5 }
14
+
15
+ it { ["a"].should include("b") }
16
+
17
+ it { [1,2,3].should_not respond_to(:size) }
18
+
19
+ end
@@ -0,0 +1,10 @@
1
+ describe "This example" do
2
+
3
+ it "should be listed as failing in after" do
4
+ end
5
+
6
+ after(:each) do
7
+ NonExistentClass.new
8
+ end
9
+
10
+ end
@@ -0,0 +1,10 @@
1
+ describe "This example" do
2
+
3
+ before(:each) do
4
+ NonExistentClass.new
5
+ end
6
+
7
+ it "should be listed as failing in each" do
8
+ end
9
+
10
+ end
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
+
3
+ describe "Mocker" do
4
+
5
+ it "should be able to call mock()" do
6
+ mock = mock("poke me")
7
+ mock.should_receive(:poke)
8
+ mock.poke
9
+ end
10
+
11
+ it "should fail when expected message not received" do
12
+ mock = mock("poke me")
13
+ mock.should_receive(:poke)
14
+ end
15
+
16
+ it "should fail when messages are received out of order" do
17
+ mock = mock("one two three")
18
+ mock.should_receive(:one).ordered
19
+ mock.should_receive(:two).ordered
20
+ mock.should_receive(:three).ordered
21
+ mock.one
22
+ mock.three
23
+ mock.two
24
+ end
25
+
26
+ it "should get yelled at when sending unexpected messages" do
27
+ mock = mock("don't talk to me")
28
+ mock.should_not_receive(:any_message_at_all)
29
+ mock.any_message_at_all
30
+ end
31
+
32
+ it "has a bug we need to fix" do
33
+ pending "here is the bug" do
34
+ # Actually, no. It's fixed. This will fail because it passes :-)
35
+ mock = mock("Bug")
36
+ mock.should_receive(:hello)
37
+ mock.hello
38
+ end
39
+ end
40
+ end