rspec 1.3.0 → 2.0.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 (391) hide show
  1. data/.document +1 -6
  2. data/.gitignore +7 -0
  3. data/Gemfile +6 -0
  4. data/License.txt +1 -1
  5. data/README.markdown +30 -0
  6. data/Rakefile +10 -143
  7. data/lib/rspec/version.rb +5 -0
  8. data/lib/rspec.rb +4 -0
  9. data/rspec.gemspec +29 -0
  10. metadata +69 -462
  11. data/History.rdoc +0 -1529
  12. data/Manifest.txt +0 -384
  13. data/README.rdoc +0 -54
  14. data/Ruby1.9.rdoc +0 -31
  15. data/TODO.txt +0 -17
  16. data/Upgrade.rdoc +0 -260
  17. data/bin/autospec +0 -4
  18. data/bin/spec +0 -5
  19. data/cucumber.yml +0 -5
  20. data/examples/failing/README.txt +0 -11
  21. data/examples/failing/diffing_spec.rb +0 -36
  22. data/examples/failing/failing_implicit_docstrings_example.rb +0 -17
  23. data/examples/failing/failure_in_after.rb +0 -10
  24. data/examples/failing/failure_in_before.rb +0 -10
  25. data/examples/failing/mocking_example.rb +0 -38
  26. data/examples/failing/mocking_with_flexmock.rb +0 -26
  27. data/examples/failing/mocking_with_mocha.rb +0 -25
  28. data/examples/failing/mocking_with_rr.rb +0 -27
  29. data/examples/failing/partial_mock_example.rb +0 -18
  30. data/examples/failing/pending_example.rb +0 -7
  31. data/examples/failing/predicate_example.rb +0 -32
  32. data/examples/failing/raising_example.rb +0 -47
  33. data/examples/failing/syntax_error_example.rb +0 -7
  34. data/examples/failing/team_spec.rb +0 -41
  35. data/examples/failing/timeout_behaviour.rb +0 -5
  36. data/examples/passing/custom_formatter.rb +0 -11
  37. data/examples/passing/custom_matchers.rb +0 -54
  38. data/examples/passing/dynamic_spec.rb +0 -7
  39. data/examples/passing/file_accessor.rb +0 -18
  40. data/examples/passing/file_accessor_spec.rb +0 -37
  41. data/examples/passing/filtered_formatter.rb +0 -17
  42. data/examples/passing/filtered_formatter_example.rb +0 -31
  43. data/examples/passing/greeter_spec.rb +0 -30
  44. data/examples/passing/helper_method_example.rb +0 -12
  45. data/examples/passing/implicit_docstrings_example.rb +0 -16
  46. data/examples/passing/io_processor.rb +0 -8
  47. data/examples/passing/io_processor_spec.rb +0 -20
  48. data/examples/passing/mocking_example.rb +0 -25
  49. data/examples/passing/multi_threaded_example_group_runner.rb +0 -26
  50. data/examples/passing/nested_classes_example.rb +0 -35
  51. data/examples/passing/options_example.rb +0 -29
  52. data/examples/passing/options_formatter.rb +0 -20
  53. data/examples/passing/partial_mock_example.rb +0 -27
  54. data/examples/passing/pending_example.rb +0 -18
  55. data/examples/passing/predicate_example.rb +0 -25
  56. data/examples/passing/shared_example_group_example.rb +0 -79
  57. data/examples/passing/shared_stack_examples.rb +0 -36
  58. data/examples/passing/simple_matcher_example.rb +0 -29
  59. data/examples/passing/stack.rb +0 -36
  60. data/examples/passing/stack_spec.rb +0 -63
  61. data/examples/passing/stack_spec_with_nested_example_groups.rb +0 -66
  62. data/examples/passing/stubbing_example.rb +0 -67
  63. data/examples/passing/yielding_example.rb +0 -31
  64. data/examples/ruby1.9.compatibility/access_to_constants_spec.rb +0 -85
  65. data/features/before_and_after_blocks/before_and_after_blocks.feature +0 -167
  66. data/features/command_line/line_number_option.feature +0 -56
  67. data/features/command_line/line_number_option_with_example_with_no_name.feature +0 -22
  68. data/features/example_groups/define_example_attribute.feature +0 -41
  69. data/features/example_groups/example_group_with_should_methods.feature +0 -29
  70. data/features/example_groups/implicit_docstrings.feature +0 -59
  71. data/features/example_groups/nested_groups.feature +0 -32
  72. data/features/expectations/customized_message.feature +0 -54
  73. data/features/expectations/expect_change.feature +0 -65
  74. data/features/expectations/expect_error.feature +0 -44
  75. data/features/extensions/custom_example_group.feature +0 -19
  76. data/features/formatters/custom_formatter.feature +0 -30
  77. data/features/formatters/nested_formatter.feature +0 -32
  78. data/features/interop/cucumber_stubs_dont_leak.feature +0 -11
  79. data/features/interop/examples_and_tests_together.feature +0 -84
  80. data/features/interop/rspec_output.feature +0 -25
  81. data/features/interop/test_but_not_test_unit.feature +0 -26
  82. data/features/interop/test_case_with_should_methods.feature +0 -46
  83. data/features/load_paths/add_lib_to_load_path.feature +0 -20
  84. data/features/load_paths/add_spec_to_load_path.feature +0 -20
  85. data/features/matchers/define_diffable_matcher.feature +0 -26
  86. data/features/matchers/define_matcher.feature +0 -179
  87. data/features/matchers/define_matcher_outside_rspec.feature +0 -38
  88. data/features/matchers/define_matcher_with_fluent_interface.feature +0 -48
  89. data/features/matchers/define_wrapped_matcher.feature +0 -56
  90. data/features/matchers/match_unless_raises.feature +0 -60
  91. data/features/matchers/match_unless_raises_unexpected_error.feature +0 -39
  92. data/features/mock_framework_integration/use_flexmock.feature +0 -27
  93. data/features/mock_framework_integration/use_mocha.feature +0 -27
  94. data/features/mock_framework_integration/use_rr.feature +0 -27
  95. data/features/mocks/block_local_expectations.feature +0 -62
  96. data/features/mocks/mix_stubs_and_mocks.feature +0 -22
  97. data/features/mocks/stub_implementation.feature +0 -26
  98. data/features/pending/pending_examples.feature +0 -81
  99. data/features/runner/specify_line_number.feature +0 -32
  100. data/features/spec_helper/spec_helper.feature +0 -25
  101. data/features/step_definitions/running_rspec_steps.rb +0 -52
  102. data/features/step_definitions/stubbing_steps.rb +0 -16
  103. data/features/subject/explicit_subject.feature +0 -31
  104. data/features/subject/implicit_subject.feature +0 -43
  105. data/features/support/env.rb +0 -83
  106. data/features/support/matchers/smart_match.rb +0 -31
  107. data/geminstaller.yml +0 -28
  108. data/init.rb +0 -9
  109. data/lib/autotest/discover.rb +0 -3
  110. data/lib/autotest/rspec.rb +0 -54
  111. data/lib/spec/adapters/mock_frameworks/flexmock.rb +0 -24
  112. data/lib/spec/adapters/mock_frameworks/mocha.rb +0 -25
  113. data/lib/spec/adapters/mock_frameworks/rr.rb +0 -22
  114. data/lib/spec/adapters/mock_frameworks/rspec.rb +0 -21
  115. data/lib/spec/autorun.rb +0 -3
  116. data/lib/spec/deprecation.rb +0 -40
  117. data/lib/spec/dsl/main.rb +0 -92
  118. data/lib/spec/dsl.rb +0 -1
  119. data/lib/spec/example/args_and_options.rb +0 -27
  120. data/lib/spec/example/before_and_after_hooks.rb +0 -93
  121. data/lib/spec/example/errors.rb +0 -25
  122. data/lib/spec/example/example_group.rb +0 -10
  123. data/lib/spec/example/example_group_factory.rb +0 -82
  124. data/lib/spec/example/example_group_hierarchy.rb +0 -53
  125. data/lib/spec/example/example_group_methods.rb +0 -282
  126. data/lib/spec/example/example_group_proxy.rb +0 -61
  127. data/lib/spec/example/example_matcher.rb +0 -43
  128. data/lib/spec/example/example_methods.rb +0 -152
  129. data/lib/spec/example/example_proxy.rb +0 -41
  130. data/lib/spec/example/module_reopening_fix.rb +0 -43
  131. data/lib/spec/example/pending.rb +0 -18
  132. data/lib/spec/example/predicate_matchers.rb +0 -46
  133. data/lib/spec/example/shared_example_group.rb +0 -59
  134. data/lib/spec/example/subject.rb +0 -108
  135. data/lib/spec/example.rb +0 -164
  136. data/lib/spec/expectations/errors.rb +0 -12
  137. data/lib/spec/expectations/extensions/kernel.rb +0 -52
  138. data/lib/spec/expectations/extensions.rb +0 -1
  139. data/lib/spec/expectations/fail_with.rb +0 -45
  140. data/lib/spec/expectations/handler.rb +0 -50
  141. data/lib/spec/expectations.rb +0 -35
  142. data/lib/spec/extensions/instance_exec.rb +0 -31
  143. data/lib/spec/interop/test/unit/autorunner.rb +0 -6
  144. data/lib/spec/interop/test/unit/testcase.rb +0 -56
  145. data/lib/spec/interop/test/unit/testresult.rb +0 -6
  146. data/lib/spec/interop/test/unit/testsuite_adapter.rb +0 -34
  147. data/lib/spec/interop/test/unit/ui/console/testrunner.rb +0 -61
  148. data/lib/spec/interop/test.rb +0 -44
  149. data/lib/spec/matchers/be.rb +0 -249
  150. data/lib/spec/matchers/be_close.rb +0 -32
  151. data/lib/spec/matchers/be_instance_of.rb +0 -26
  152. data/lib/spec/matchers/be_kind_of.rb +0 -26
  153. data/lib/spec/matchers/change.rb +0 -151
  154. data/lib/spec/matchers/compatibility.rb +0 -14
  155. data/lib/spec/matchers/dsl.rb +0 -20
  156. data/lib/spec/matchers/eql.rb +0 -42
  157. data/lib/spec/matchers/equal.rb +0 -53
  158. data/lib/spec/matchers/errors.rb +0 -5
  159. data/lib/spec/matchers/exist.rb +0 -16
  160. data/lib/spec/matchers/generated_descriptions.rb +0 -36
  161. data/lib/spec/matchers/has.rb +0 -35
  162. data/lib/spec/matchers/have.rb +0 -152
  163. data/lib/spec/matchers/include.rb +0 -44
  164. data/lib/spec/matchers/match.rb +0 -21
  165. data/lib/spec/matchers/match_array.rb +0 -71
  166. data/lib/spec/matchers/matcher.rb +0 -132
  167. data/lib/spec/matchers/method_missing.rb +0 -9
  168. data/lib/spec/matchers/operator_matcher.rb +0 -78
  169. data/lib/spec/matchers/pretty.rb +0 -37
  170. data/lib/spec/matchers/raise_exception.rb +0 -131
  171. data/lib/spec/matchers/respond_to.rb +0 -71
  172. data/lib/spec/matchers/satisfy.rb +0 -47
  173. data/lib/spec/matchers/simple_matcher.rb +0 -133
  174. data/lib/spec/matchers/throw_symbol.rb +0 -100
  175. data/lib/spec/matchers/wrap_expectation.rb +0 -55
  176. data/lib/spec/matchers.rb +0 -214
  177. data/lib/spec/mocks/argument_expectation.rb +0 -51
  178. data/lib/spec/mocks/argument_matchers.rb +0 -237
  179. data/lib/spec/mocks/error_generator.rb +0 -92
  180. data/lib/spec/mocks/errors.rb +0 -10
  181. data/lib/spec/mocks/example_methods.rb +0 -69
  182. data/lib/spec/mocks/extensions/object.rb +0 -3
  183. data/lib/spec/mocks/extensions.rb +0 -1
  184. data/lib/spec/mocks/framework.rb +0 -15
  185. data/lib/spec/mocks/message_expectation.rb +0 -344
  186. data/lib/spec/mocks/methods.rb +0 -94
  187. data/lib/spec/mocks/mock.rb +0 -71
  188. data/lib/spec/mocks/order_group.rb +0 -29
  189. data/lib/spec/mocks/proxy.rb +0 -266
  190. data/lib/spec/mocks/space.rb +0 -28
  191. data/lib/spec/mocks.rb +0 -200
  192. data/lib/spec/rake/spectask.rb +0 -230
  193. data/lib/spec/rake/verify_rcov.rb +0 -52
  194. data/lib/spec/ruby.rb +0 -9
  195. data/lib/spec/runner/backtrace_tweaker.rb +0 -77
  196. data/lib/spec/runner/class_and_arguments_parser.rb +0 -14
  197. data/lib/spec/runner/command_line.rb +0 -15
  198. data/lib/spec/runner/configuration.rb +0 -194
  199. data/lib/spec/runner/differs/default.rb +0 -93
  200. data/lib/spec/runner/differs/load-diff-lcs.rb +0 -12
  201. data/lib/spec/runner/drb_command_line.rb +0 -32
  202. data/lib/spec/runner/example_group_runner.rb +0 -58
  203. data/lib/spec/runner/extensions/kernel.rb +0 -9
  204. data/lib/spec/runner/formatter/base_formatter.rb +0 -139
  205. data/lib/spec/runner/formatter/base_text_formatter.rb +0 -142
  206. data/lib/spec/runner/formatter/failing_example_groups_formatter.rb +0 -25
  207. data/lib/spec/runner/formatter/failing_examples_formatter.rb +0 -20
  208. data/lib/spec/runner/formatter/html_formatter.rb +0 -338
  209. data/lib/spec/runner/formatter/nested_text_formatter.rb +0 -50
  210. data/lib/spec/runner/formatter/no_op_method_missing.rb +0 -21
  211. data/lib/spec/runner/formatter/profile_formatter.rb +0 -47
  212. data/lib/spec/runner/formatter/progress_bar_formatter.rb +0 -33
  213. data/lib/spec/runner/formatter/silent_formatter.rb +0 -10
  214. data/lib/spec/runner/formatter/snippet_extractor.rb +0 -52
  215. data/lib/spec/runner/formatter/specdoc_formatter.rb +0 -33
  216. data/lib/spec/runner/formatter/text_mate_formatter.rb +0 -16
  217. data/lib/spec/runner/heckle_runner.rb +0 -72
  218. data/lib/spec/runner/heckle_runner_unsupported.rb +0 -10
  219. data/lib/spec/runner/line_number_query.rb +0 -78
  220. data/lib/spec/runner/option_parser.rb +0 -225
  221. data/lib/spec/runner/options.rb +0 -405
  222. data/lib/spec/runner/reporter.rb +0 -171
  223. data/lib/spec/runner.rb +0 -66
  224. data/lib/spec/stubs/cucumber.rb +0 -5
  225. data/lib/spec/test/unit.rb +0 -10
  226. data/lib/spec/version.rb +0 -14
  227. data/lib/spec.rb +0 -8
  228. data/resources/helpers/cmdline.rb +0 -8
  229. data/resources/rake/examples.rake +0 -7
  230. data/resources/rake/examples_with_rcov.rake +0 -9
  231. data/resources/rake/failing_examples_with_html.rake +0 -9
  232. data/resources/rake/verify_rcov.rake +0 -7
  233. data/spec/README.jruby +0 -15
  234. data/spec/autotest/autotest_helper.rb +0 -8
  235. data/spec/autotest/autotest_matchers.rb +0 -38
  236. data/spec/autotest/discover_spec.rb +0 -8
  237. data/spec/autotest/failed_results_re_spec.rb +0 -31
  238. data/spec/autotest/rspec_spec.rb +0 -126
  239. data/spec/ruby_forker.rb +0 -13
  240. data/spec/spec/dsl/main_spec.rb +0 -95
  241. data/spec/spec/example/example_group_class_definition_spec.rb +0 -51
  242. data/spec/spec/example/example_group_factory_spec.rb +0 -180
  243. data/spec/spec/example/example_group_methods_spec.rb +0 -759
  244. data/spec/spec/example/example_group_proxy_spec.rb +0 -107
  245. data/spec/spec/example/example_group_spec.rb +0 -643
  246. data/spec/spec/example/example_matcher_spec.rb +0 -86
  247. data/spec/spec/example/example_methods_spec.rb +0 -162
  248. data/spec/spec/example/example_proxy_spec.rb +0 -57
  249. data/spec/spec/example/helper_method_spec.rb +0 -24
  250. data/spec/spec/example/nested_example_group_spec.rb +0 -71
  251. data/spec/spec/example/pending_module_spec.rb +0 -58
  252. data/spec/spec/example/predicate_matcher_spec.rb +0 -41
  253. data/spec/spec/example/shared_example_group_spec.rb +0 -257
  254. data/spec/spec/example/subclassing_example_group_spec.rb +0 -25
  255. data/spec/spec/example/subject_spec.rb +0 -103
  256. data/spec/spec/expectations/differs/default_spec.rb +0 -194
  257. data/spec/spec/expectations/extensions/kernel_spec.rb +0 -45
  258. data/spec/spec/expectations/fail_with_spec.rb +0 -96
  259. data/spec/spec/expectations/handler_spec.rb +0 -206
  260. data/spec/spec/expectations/wrap_expectation_spec.rb +0 -30
  261. data/spec/spec/interop/test/unit/resources/spec_that_fails.rb +0 -10
  262. data/spec/spec/interop/test/unit/resources/spec_that_passes.rb +0 -10
  263. data/spec/spec/interop/test/unit/resources/spec_with_errors.rb +0 -10
  264. data/spec/spec/interop/test/unit/resources/spec_with_options_hash.rb +0 -13
  265. data/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +0 -10
  266. data/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +0 -10
  267. data/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +0 -10
  268. data/spec/spec/interop/test/unit/resources/test_case_with_various_names.rb +0 -22
  269. data/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +0 -38
  270. data/spec/spec/interop/test/unit/spec_spec.rb +0 -48
  271. data/spec/spec/interop/test/unit/test_unit_spec_helper.rb +0 -18
  272. data/spec/spec/interop/test/unit/testcase_spec.rb +0 -50
  273. data/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +0 -9
  274. data/spec/spec/matchers/be_close_spec.rb +0 -50
  275. data/spec/spec/matchers/be_instance_of_spec.rb +0 -36
  276. data/spec/spec/matchers/be_kind_of_spec.rb +0 -33
  277. data/spec/spec/matchers/be_spec.rb +0 -460
  278. data/spec/spec/matchers/change_spec.rb +0 -349
  279. data/spec/spec/matchers/compatibility_spec.rb +0 -28
  280. data/spec/spec/matchers/description_generation_spec.rb +0 -160
  281. data/spec/spec/matchers/dsl_spec.rb +0 -34
  282. data/spec/spec/matchers/eql_spec.rb +0 -33
  283. data/spec/spec/matchers/equal_spec.rb +0 -57
  284. data/spec/spec/matchers/exist_spec.rb +0 -65
  285. data/spec/spec/matchers/has_spec.rb +0 -190
  286. data/spec/spec/matchers/have_spec.rb +0 -396
  287. data/spec/spec/matchers/include_spec.rb +0 -88
  288. data/spec/spec/matchers/match_array_spec.rb +0 -108
  289. data/spec/spec/matchers/match_spec.rb +0 -57
  290. data/spec/spec/matchers/matcher_spec.rb +0 -289
  291. data/spec/spec/matchers/matchers_spec.rb +0 -2
  292. data/spec/spec/matchers/operator_matcher_spec.rb +0 -191
  293. data/spec/spec/matchers/raise_exception_spec.rb +0 -345
  294. data/spec/spec/matchers/respond_to_spec.rb +0 -116
  295. data/spec/spec/matchers/satisfy_spec.rb +0 -36
  296. data/spec/spec/matchers/simple_matcher_spec.rb +0 -93
  297. data/spec/spec/matchers/throw_symbol_spec.rb +0 -121
  298. data/spec/spec/mocks/and_yield_spec.rb +0 -117
  299. data/spec/spec/mocks/any_number_of_times_spec.rb +0 -36
  300. data/spec/spec/mocks/argument_expectation_spec.rb +0 -23
  301. data/spec/spec/mocks/argument_matchers_spec.rb +0 -19
  302. data/spec/spec/mocks/at_least_spec.rb +0 -97
  303. data/spec/spec/mocks/at_most_spec.rb +0 -93
  304. data/spec/spec/mocks/bug_report_10260_spec.rb +0 -8
  305. data/spec/spec/mocks/bug_report_10263_spec.rb +0 -27
  306. data/spec/spec/mocks/bug_report_11545_spec.rb +0 -32
  307. data/spec/spec/mocks/bug_report_15719_spec.rb +0 -30
  308. data/spec/spec/mocks/bug_report_496_spec.rb +0 -19
  309. data/spec/spec/mocks/bug_report_600_spec.rb +0 -22
  310. data/spec/spec/mocks/bug_report_7611_spec.rb +0 -19
  311. data/spec/spec/mocks/bug_report_7805_spec.rb +0 -22
  312. data/spec/spec/mocks/bug_report_8165_spec.rb +0 -31
  313. data/spec/spec/mocks/bug_report_8302_spec.rb +0 -26
  314. data/spec/spec/mocks/bug_report_830_spec.rb +0 -21
  315. data/spec/spec/mocks/double_spec.rb +0 -12
  316. data/spec/spec/mocks/failing_argument_matchers_spec.rb +0 -95
  317. data/spec/spec/mocks/hash_including_matcher_spec.rb +0 -90
  318. data/spec/spec/mocks/hash_not_including_matcher_spec.rb +0 -67
  319. data/spec/spec/mocks/mock_ordering_spec.rb +0 -94
  320. data/spec/spec/mocks/mock_space_spec.rb +0 -54
  321. data/spec/spec/mocks/mock_spec.rb +0 -594
  322. data/spec/spec/mocks/multiple_return_value_spec.rb +0 -113
  323. data/spec/spec/mocks/nil_expectation_warning_spec.rb +0 -53
  324. data/spec/spec/mocks/null_object_mock_spec.rb +0 -54
  325. data/spec/spec/mocks/once_counts_spec.rb +0 -53
  326. data/spec/spec/mocks/options_hash_spec.rb +0 -35
  327. data/spec/spec/mocks/partial_mock_spec.rb +0 -164
  328. data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +0 -66
  329. data/spec/spec/mocks/passing_argument_matchers_spec.rb +0 -145
  330. data/spec/spec/mocks/precise_counts_spec.rb +0 -52
  331. data/spec/spec/mocks/record_messages_spec.rb +0 -26
  332. data/spec/spec/mocks/stub_chain_spec.rb +0 -42
  333. data/spec/spec/mocks/stub_implementation_spec.rb +0 -31
  334. data/spec/spec/mocks/stub_spec.rb +0 -203
  335. data/spec/spec/mocks/stubbed_message_expectations_spec.rb +0 -26
  336. data/spec/spec/mocks/twice_counts_spec.rb +0 -67
  337. data/spec/spec/mocks/unstub_spec.rb +0 -127
  338. data/spec/spec/package/bin_spec_spec.rb +0 -16
  339. data/spec/spec/rake/spectask_spec.rb +0 -150
  340. data/spec/spec/runner/class_and_argument_parser_spec.rb +0 -23
  341. data/spec/spec/runner/command_line_spec.rb +0 -162
  342. data/spec/spec/runner/configuration_spec.rb +0 -320
  343. data/spec/spec/runner/drb_command_line_spec.rb +0 -146
  344. data/spec/spec/runner/empty_file.txt +0 -0
  345. data/spec/spec/runner/example_group_runner_spec.rb +0 -26
  346. data/spec/spec/runner/examples.txt +0 -2
  347. data/spec/spec/runner/failed.txt +0 -3
  348. data/spec/spec/runner/formatter/base_formatter_spec.rb +0 -30
  349. data/spec/spec/runner/formatter/base_text_formatter_spec.rb +0 -113
  350. data/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +0 -45
  351. data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +0 -33
  352. data/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +0 -377
  353. data/spec/spec/runner/formatter/html_formatted-1.8.6.html +0 -377
  354. data/spec/spec/runner/formatter/html_formatted-1.8.7.html +0 -377
  355. data/spec/spec/runner/formatter/html_formatted-1.9.1.html +0 -377
  356. data/spec/spec/runner/formatter/html_formatter_spec.rb +0 -118
  357. data/spec/spec/runner/formatter/nested_text_formatter_spec.rb +0 -329
  358. data/spec/spec/runner/formatter/profile_formatter_spec.rb +0 -70
  359. data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +0 -149
  360. data/spec/spec/runner/formatter/snippet_extractor_spec.rb +0 -18
  361. data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +0 -159
  362. data/spec/spec/runner/formatter/text_mate_formatted-1.8.6-jruby.html +0 -371
  363. data/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +0 -371
  364. data/spec/spec/runner/formatter/text_mate_formatted-1.8.7.html +0 -371
  365. data/spec/spec/runner/formatter/text_mate_formatted-1.9.1.html +0 -371
  366. data/spec/spec/runner/formatter/text_mate_formatter_spec.rb +0 -106
  367. data/spec/spec/runner/heckle_runner_spec.rb +0 -78
  368. data/spec/spec/runner/heckler_spec.rb +0 -20
  369. data/spec/spec/runner/line_number_query/line_number_query_fixture.rb +0 -70
  370. data/spec/spec/runner/line_number_query_spec.rb +0 -129
  371. data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +0 -51
  372. data/spec/spec/runner/option_parser_spec.rb +0 -551
  373. data/spec/spec/runner/options_spec.rb +0 -554
  374. data/spec/spec/runner/output_one_time_fixture.rb +0 -7
  375. data/spec/spec/runner/output_one_time_fixture_runner.rb +0 -7
  376. data/spec/spec/runner/output_one_time_spec.rb +0 -15
  377. data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +0 -123
  378. data/spec/spec/runner/reporter_spec.rb +0 -244
  379. data/spec/spec/runner/resources/a_bar.rb +0 -0
  380. data/spec/spec/runner/resources/a_foo.rb +0 -0
  381. data/spec/spec/runner/resources/a_spec.rb +0 -1
  382. data/spec/spec/runner/resources/custom_example_group_runner.rb +0 -14
  383. data/spec/spec/runner/resources/utf8_encoded.rb +0 -8
  384. data/spec/spec/runner/spec.opts +0 -2
  385. data/spec/spec/runner/spec_drb.opts +0 -2
  386. data/spec/spec/runner/spec_spaced.opts +0 -2
  387. data/spec/spec/runner_spec.rb +0 -13
  388. data/spec/spec.opts +0 -6
  389. data/spec/spec_helper.rb +0 -112
  390. data/spec/support/macros.rb +0 -29
  391. data/spec/support/spec_classes.rb +0 -133
data/Upgrade.rdoc DELETED
@@ -1,260 +0,0 @@
1
- = Upgrade to 1.3.0
2
-
3
- == What's changed
4
-
5
- === +be_true+ and +be_false+
6
-
7
- These methods now align with Ruby's conditional semantics:
8
-
9
- * +be_false+ passes for +false+ and +nil+
10
- * +be_true+ passes for everything else
11
-
12
- This is a change from the previous behaviour (which wasn't working correctly
13
- anyway), which was supposed to treat +be_true+ as <tt>equal(true)</tt>, and +be_false+ as
14
- <tt>equal(false)</tt>.
15
-
16
- If the actual values +true+ and +false+ are meaningful to your examples, you'll
17
- want to change the to use <tt>equal(true)</tt> and <tt>equal(false)</tt> (or
18
- <tt>==(true)</tt> and <tt>==(false)</tt>).
19
-
20
- === +raise_exception+
21
-
22
- We changed the +raise_error+ matcher to +raise_exception+, and aliased it with
23
- +raise_error+. This maintains backward compatibility, and also gives you the
24
- option of being more precise in specs about what is expected.
25
-
26
- === Matcher DSL
27
-
28
- ==== +match+ rescues from +ExpectationNotMetErrror+ by default
29
-
30
- This allows you to wrap other expectations in the +match+ method. Consider
31
- this matcher:
32
-
33
- Spec::Matchers.define :teach do |subject|
34
- match do |teacher|
35
- teacher.subjects.should include(subject)
36
- end
37
- end
38
-
39
- The block passed to +match+ is called internally by Rspec, and is expected to
40
- return a boolean value. In this case, if <tt>should include(subject)</tt>
41
- fails, it raises an +ExpectationNotMetError+.
42
-
43
- Beginning with rspec-1.3.0, when the match block raises an
44
- +ExpectationNotMetError+, it is captured and the block returns +false+.
45
- Otherwise it returns +true+, so it works like any other matcher.
46
-
47
- ==== match_unless_raises
48
-
49
- The new +match_unless_raises+ method allows you to wrap <tt>Test::Unit</tt>
50
- assertions by capturing +AssertionFailedError+ and returning false, just as the
51
- +match+ method now does with +ExpectationNotMetError+.
52
-
53
- Spec::Matchers.define :teach do |subject|
54
- match_unless_raises Test::Unit::AssertionFailedError do |teacher|
55
- assert teacher.subjects.include?(subject)
56
- end
57
- end
58
-
59
- = Upgrade to rspec-1.2.9
60
-
61
- == What's new
62
-
63
- === spec/spec.opts
64
-
65
- If you have a spec/spec.opts file, the spec command will now use that
66
- automatically as long as you don't include any options on the command line.
67
-
68
- === let()
69
-
70
- Writing specs tends to follow a regular pattern of using local variables,
71
- discovering duplication, and then having to convert to local variables to
72
- instance variables by adding an "@" symbol. The let() method assigns the result
73
- of a lazy eval'd block as the return value of an instance method using the same
74
- name. This way you can go from this:
75
-
76
- describe Subscription do
77
- it "does something" do
78
- subscription = Subscription.create :limit => 1
79
- subscription...
80
- end
81
-
82
- it "does something else" do
83
- subscription = Subscription.create :limit => 1
84
- subscription...
85
- end
86
- end
87
-
88
- to this:
89
-
90
- describe Subscription do
91
- let(:subscription) { Subscription.create :limit => 1 }
92
-
93
- it "does something" do
94
- subscription...
95
- end
96
-
97
- it "does something else" do
98
- subscription...
99
- end
100
- end
101
-
102
- === its()
103
-
104
- If you're in the habit of writing one-liners using implicit subject, this new
105
- its() feature is for you. Here's the basic idea:
106
-
107
- describe Array do
108
- its(:length) { should == 0 }
109
- end
110
-
111
- = Upgrade to rspec-1.2.3-1.2.7
112
-
113
- == What's Changed
114
-
115
- === Matcher DSL
116
-
117
- Use Spec::Matchers.define instead of Spec::Matchers.create (which is now
118
- deprecated).
119
-
120
- === Explicit Predicate Matchers are deprecated
121
-
122
- With the addition of the new Matcher DSL the old, confusing, and
123
- almost-nobody-uses-it explicit predicate matcher functionality's days are now
124
- numbered.
125
-
126
- If you're not familiar with this feature, don't worry about it. If you have anything
127
- that looks like this:
128
-
129
- predicate_matchers[:swim] = :can_swim?
130
-
131
- Or this
132
-
133
- config.predicate_matchers[:swim] = :can_swim?
134
-
135
- Change it to this:
136
-
137
- Spec::Matchers.define :swim do
138
- match do |potential_swimmer|
139
- potential_swimmer.can_swim?
140
- end
141
- end
142
-
143
- == Custom Formatters
144
-
145
- If you have an custom formatter, the <tt>add_example_group</tt> method has
146
- been changed to <tt>example_group_started</tt>, and kept as an alias so your
147
- formatters will still work. Though not yet, <tt>add_example_group</tt> will be
148
- deprecated in a future minor release, and removed in a future major release,
149
- so we recommend you make this change now.
150
-
151
- = Upgrade to rspec-1.2.2
152
-
153
- == What's Changed
154
-
155
- === <tt>require 'rubygems' unless ENV['NO_RUBYGEMS']</tt>
156
-
157
- After minor public outcry and confusion, we restored necessary references to
158
- rubygems in rspec. If you use a different mechanism for managing gems, just
159
- set a <tt>NO_RUBYGEMS</tt> environment variable (to any non-nil value).
160
-
161
- === Proxies and locations
162
-
163
- This is probably only interesting to you if you use custom formatters.
164
-
165
- Formatters now receive Spec::Example::ExampleGroupProxy and
166
- Spec::Example::ExampleGroup objects with cohesive APIs for reporting. See the
167
- RDoc for those classes and Spec::Runner::Formatter::BaseFormatter for more
168
- information.
169
-
170
- == What's new
171
-
172
- === The new matcher DSL works with test/unit (without the rest of rspec)
173
-
174
- We'll be separating this out to its own gem for rspec 2.0, but for now, just install
175
- rspec >= 1.2.1 and add the following to your <tt>test_helper</tt> file:
176
-
177
- require 'spec/expectations'
178
- class Test::Unit::TestCase
179
- include Spec::Matchers
180
- end
181
-
182
- This will add <tt>should()</tt> and <tt>should_not()</tt> to your objects, make all of
183
- rspec's built-in matchers available to your tests, INCLUDING rspec's DSL for
184
- creating matchers (see below, under Upgrade to rspec-1.2.0)
185
-
186
- === debugger
187
-
188
- If you have ruby-debug installed, you can set a breakpoint by adding <tt>debugger()</tt>
189
- in your code:
190
-
191
- # some code .....
192
- debugger
193
- # some more code ....
194
-
195
- ... and using the <tt>--debugger</tt> or <tt>-u</tt> command line option.
196
-
197
- spec path/to/file.rb --debugger
198
-
199
- = Upgrade to rspec-1.2.0
200
-
201
- == What's Changed
202
-
203
- === WARNINGS
204
-
205
- * If you use the ruby command to run specs instead of the spec command, you'll
206
- need to require 'spec/autorun' or they won't run. This won't affect you if
207
- you use the spec command or the Spec::Rake::SpecTask that ships with RSpec.
208
-
209
- * require 'spec/test/unit' to invoke test/unit interop if you're using
210
- RSpec's core (this is handled implicitly with spec-rails)
211
-
212
- * setup and teardown are gone - use before and after instead
213
-
214
- * you can still use setup and teardown if you're using
215
- Test::Unit::TestCase as the base ExampleGroup class (which is implicit
216
- in rspec-rails)
217
-
218
- * The matcher protocol has been improved. The old protocol is still supported,
219
- but we added support for two new methods that speak a bit more clearly:
220
-
221
- failure_message => failure_message_for_should
222
- negative_failure_message => failure_message_for_should_not
223
-
224
- * All references to rubygems have been removed from within rspec's code.
225
-
226
- * See http://gist.github.com/54177 for rationale and suggestions on
227
- alternative approaches to loading rubygems
228
-
229
- == What's New
230
-
231
- === Ruby 1.9
232
-
233
- RSpec now works with Ruby 1.9.1. See http://wiki.github.com/dchelimsky/rspec/ruby-191
234
- for useful information.
235
-
236
- === Improved heckle integration
237
-
238
- RSpec works with heckle again! Gotta use heckle >= 1.4.2 for this to work
239
- though, and it only works with ruby-1.8.6 and 1.8.7 (heckle doesn't support
240
- 1.9.1 yet).
241
-
242
- [sudo] gem install heckle --version ">=1.4.2"
243
- spec spec/game/mastermind.rb --heckle Game::Mastermind
244
-
245
- === New Matcher DSL
246
-
247
- We've added a new DSL for generating custom matchers very simply and cleanly.
248
- We'll still support the simple_matcher method, so never fear if you're using
249
- that, but we recommend that you start developing your new matchers with this
250
- new syntax.
251
-
252
- Spec::Matchers.create :be_a_multiple_of do |smaller|
253
- match do |bigger|
254
- bigger % smaller == 0
255
- end
256
- end
257
-
258
- 9.should be_a_multiple_of(3)
259
-
260
- See <tt>features/matchers/define_matcher.feature</tt> for more examples
data/bin/autospec DELETED
@@ -1,4 +0,0 @@
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 DELETED
@@ -1,5 +0,0 @@
1
- #!/usr/bin/env ruby
2
- rspec_dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib'))
3
- $LOAD_PATH.unshift(rspec_dir) unless $LOAD_PATH.include?(rspec_dir)
4
- require 'spec/autorun'
5
- exit ::Spec::Runner::CommandLine.run
data/cucumber.yml DELETED
@@ -1,5 +0,0 @@
1
- default: --require features features -t ~@wip
2
- pending: --require features features-pending
3
- no_heckle: --require features features --exclude heckle
4
- focus: --require features features -t focus
5
- wip: --require features features -t @wip
@@ -1,11 +0,0 @@
1
- "Why have failing examples?", you might ask.
2
-
3
- They allow us to see failure messages. RSpec wants to provide meaningful and
4
- helpful failure messages. The failures in this directory not only provide you
5
- a way of seeing the failure messages, but they provide RSpec's own specs a way
6
- of describing what they should look like and ensuring they stay correct.
7
-
8
- To see the types of messages you can expect, stand in the root directory and
9
- run:
10
-
11
- bin/spec examples/failing/*.rb
@@ -1,36 +0,0 @@
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
@@ -1,17 +0,0 @@
1
- # Run spec w/ -fs to see the output of this file
2
-
3
- describe "Failing examples with no descriptions" do
4
-
5
- # description is auto-generated as "should equal(5)" based on the last #should
6
- it do
7
- 3.should equal(2)
8
- 5.should equal(5)
9
- end
10
-
11
- it { 3.should be > 5 }
12
-
13
- it { ["a"].should include("b") }
14
-
15
- it { [1,2,3].should_not respond_to(:size) }
16
-
17
- end
@@ -1,10 +0,0 @@
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
@@ -1,10 +0,0 @@
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
@@ -1,38 +0,0 @@
1
- describe "Mocker" do
2
-
3
- it "should be able to call mock()" do
4
- mock = mock("poke me")
5
- mock.should_receive(:poke)
6
- mock.poke
7
- end
8
-
9
- it "should fail when expected message not received" do
10
- mock = mock("poke me")
11
- mock.should_receive(:poke)
12
- end
13
-
14
- it "should fail when messages are received out of order" do
15
- mock = mock("one two three")
16
- mock.should_receive(:one).ordered
17
- mock.should_receive(:two).ordered
18
- mock.should_receive(:three).ordered
19
- mock.one
20
- mock.three
21
- mock.two
22
- end
23
-
24
- it "should get yelled at when sending unexpected messages" do
25
- mock = mock("don't talk to me")
26
- mock.should_not_receive(:any_message_at_all)
27
- mock.any_message_at_all
28
- end
29
-
30
- it "has a bug we need to fix" do
31
- pending "here is the bug" do
32
- # Actually, no. It's fixed. This will fail because it passes :-)
33
- mock = mock("Bug")
34
- mock.should_receive(:hello)
35
- mock.hello
36
- end
37
- end
38
- end
@@ -1,26 +0,0 @@
1
- # stub frameworks like to gum up Object, so this is deliberately
2
- # set NOT to run so that you don't accidentally run it when you
3
- # run this dir.
4
-
5
- # To run it, stand in this directory and say:
6
- #
7
- # RUN_FLEXMOCK_EXAMPLE=true ruby ../bin/spec mocking_with_flexmock.rb
8
-
9
- if ENV['RUN_FLEXMOCK_EXAMPLE']
10
- Spec::Runner.configure do |config|
11
- config.mock_with :flexmock
12
- end
13
-
14
- describe "Flexmocks" do
15
- it "should fail when the expected message is received with wrong arguments" do
16
- m = flexmock("now flex!")
17
- m.should_receive(:msg).with("arg").once
18
- m.msg("other arg")
19
- end
20
-
21
- it "should fail when the expected message is not received at all" do
22
- m = flexmock("now flex!")
23
- m.should_receive(:msg).with("arg").once
24
- end
25
- end
26
- end
@@ -1,25 +0,0 @@
1
- # stub frameworks like to gum up Object, so this is deliberately
2
- # set NOT to run so that you don't accidentally run it when you
3
- # run this dir.
4
-
5
- # To run it, stand in this directory and say:
6
- #
7
- # RUN_MOCHA_EXAMPLE=true ruby ../bin/spec mocking_with_mocha.rb
8
-
9
- if ENV['RUN_MOCHA_EXAMPLE']
10
- Spec::Runner.configure do |config|
11
- config.mock_with :mocha
12
- end
13
- describe "Mocha framework" do
14
- it "should should be made available by saying config.mock_with :mocha" do
15
- m = mock()
16
- m.expects(:msg).with("arg")
17
- m.msg
18
- end
19
- it "should should be made available by saying config.mock_with :mocha" do
20
- o = Object.new
21
- o.expects(:msg).with("arg")
22
- o.msg
23
- end
24
- end
25
- end
@@ -1,27 +0,0 @@
1
- # stub frameworks like to gum up Object, so this is deliberately
2
- # set NOT to run so that you don't accidentally run it when you
3
- # run this dir.
4
-
5
- # To run it, stand in this directory and say:
6
- #
7
- # RUN_RR_EXAMPLE=true ruby ../bin/spec mocking_with_rr.rb
8
-
9
- if ENV['RUN_RR_EXAMPLE']
10
- Spec::Runner.configure do |config|
11
- config.mock_with :rr
12
- end
13
- describe "RR framework" do
14
- it "should should be made available by saying config.mock_with :rr" do
15
- o = Object.new
16
- mock(o).msg("arg")
17
- o.msg
18
- end
19
- it "should should be made available by saying config.mock_with :rr" do
20
- o = Object.new
21
- mock(o) do |m|
22
- m.msg("arg")
23
- end
24
- o.msg
25
- end
26
- end
27
- end
@@ -1,18 +0,0 @@
1
- class MockableClass
2
- def self.find id
3
- return :original_return
4
- end
5
- end
6
-
7
- describe "A partial mock" do
8
-
9
- it "should work at the class level (but fail here due to the type mismatch)" do
10
- MockableClass.should_receive(:find).with(1).and_return {:stub_return}
11
- MockableClass.find("1").should equal(:stub_return)
12
- end
13
-
14
- it "should revert to the original after each spec" do
15
- MockableClass.find(1).should equal(:original_return)
16
- end
17
-
18
- end
@@ -1,7 +0,0 @@
1
- describe "pending example (which is fixed)" do
2
- it %Q|reports "FIXED ... Expected ... to fail. No Error was raised."| do
3
- pending("for some reason") do
4
- # success
5
- end
6
- end
7
- end
@@ -1,32 +0,0 @@
1
- class BddFramework
2
- def intuitive?
3
- true
4
- end
5
-
6
- def adopted_quickly?
7
- #this will cause failures because it reallly SHOULD be adopted quickly
8
- false
9
- end
10
- end
11
-
12
- describe "BDD framework" do
13
-
14
- before(:each) do
15
- @bdd_framework = BddFramework.new
16
- end
17
-
18
- it "should be adopted quickly" do
19
- #this will fail because it reallly SHOULD be adopted quickly
20
- @bdd_framework.should be_adopted_quickly
21
- end
22
-
23
- it "should be intuitive" do
24
- @bdd_framework.should be_intuitive
25
- end
26
-
27
- it "should not respond to test" do
28
- #this will fail
29
- @bdd_framework.test
30
- end
31
-
32
- end
@@ -1,47 +0,0 @@
1
- describe "This example" do
2
-
3
- it "should show that a NoMethodError is raised but an Exception was expected" do
4
- proc { ''.nonexistent_method }.should raise_error
5
- end
6
-
7
- it "should pass" do
8
- proc { ''.nonexistent_method }.should raise_error(NoMethodError)
9
- end
10
-
11
- it "should show that a NoMethodError is raised but a SyntaxError was expected" do
12
- proc { ''.nonexistent_method }.should raise_error(SyntaxError)
13
- end
14
-
15
- it "should show that nothing is raised when SyntaxError was expected" do
16
- proc { }.should raise_error(SyntaxError)
17
- end
18
-
19
- it "should show that a NoMethodError is raised but a Exception was expected" do
20
- proc { ''.nonexistent_method }.should_not raise_error
21
- end
22
-
23
- it "should show that a NoMethodError is raised" do
24
- proc { ''.nonexistent_method }.should_not raise_error(NoMethodError)
25
- end
26
-
27
- it "should also pass" do
28
- proc { ''.nonexistent_method }.should_not raise_error(SyntaxError)
29
- end
30
-
31
- it "should show that a NoMethodError is raised when nothing expected" do
32
- proc { ''.nonexistent_method }.should_not raise_error(Exception)
33
- end
34
-
35
- it "should show that the wrong message was received" do
36
- proc { raise StandardError.new("what is an enterprise?") }.should raise_error(StandardError, "not this")
37
- end
38
-
39
- it "should show that the unexpected error/message was thrown" do
40
- proc { raise StandardError.new("abc") }.should_not raise_error(StandardError, "abc")
41
- end
42
-
43
- it "should pass too" do
44
- proc { raise StandardError.new("abc") }.should_not raise_error(StandardError, "xyz")
45
- end
46
-
47
- end
@@ -1,7 +0,0 @@
1
- describe "when passing a block to a matcher" do
2
- it "you should use {} instead of do/end" do
3
- Object.new.should satisfy do
4
- "this block is being passed to #should instead of #satisfy - use {} instead"
5
- end
6
- end
7
- end
@@ -1,41 +0,0 @@
1
- class Team
2
- attr_reader :players
3
- def initialize
4
- @players = Players.new
5
- end
6
- end
7
-
8
- class Players
9
- def initialize
10
- @players = []
11
- end
12
- def size
13
- @players.size
14
- end
15
- def include? player
16
- raise "player must be a string" unless player.is_a?(String)
17
- @players.include? player
18
- end
19
- end
20
-
21
- describe "A new team" do
22
-
23
- before(:each) do
24
- @team = Team.new
25
- end
26
-
27
- it "should have 3 players (failing example)" do
28
- @team.should have(3).players
29
- end
30
-
31
- it "should include some player (failing example)" do
32
- @team.players.should include("Some Player")
33
- end
34
-
35
- it "should include 5 (failing example)" do
36
- @team.players.should include(5)
37
- end
38
-
39
- it "should have no players"
40
-
41
- end
@@ -1,5 +0,0 @@
1
- describe "Something really slow" do
2
- it "should be failed by RSpec when it takes longer than --timeout" do
3
- sleep(2)
4
- end
5
- end
@@ -1,11 +0,0 @@
1
- require 'spec/runner/formatter/progress_bar_formatter'
2
-
3
- # Example of a formatter with custom bactrace printing. Run me with:
4
- # ruby bin/spec examples/failing -r examples/passing/custom_formatter.rb -f CustomFormatter
5
- class CustomFormatter < Spec::Runner::Formatter::ProgressBarFormatter
6
- def backtrace_line(line)
7
- line.gsub(/([^:]*\.rb):(\d*)/) do
8
- "<a href=\"file://#{File.expand_path($1)}\">#{$1}:#{$2}</a> "
9
- end
10
- end
11
- end