rspec 1.3.2 → 2.0.0.a2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.document +4 -6
- data/.gitignore +4 -14
- data/License.txt +1 -1
- data/README.markdown +46 -0
- data/Rakefile +26 -100
- data/lib/rspec.rb +4 -0
- data/lib/rspec/version.rb +14 -0
- data/rspec.gemspec +46 -19
- metadata +72 -673
- data/.autotest +0 -5
- data/Gemfile +0 -20
- data/History.rdoc +0 -1560
- data/README.rdoc +0 -44
- data/Ruby1.9.rdoc +0 -31
- data/TODO.txt +0 -17
- data/Upgrade.rdoc +0 -260
- data/bin/autospec +0 -4
- data/bin/spec +0 -5
- data/cucumber.yml +0 -5
- data/example_spec.rb +0 -4
- data/examples/failing/README.txt +0 -11
- data/examples/failing/diffing_spec.rb +0 -36
- data/examples/failing/failing_implicit_docstrings_example.rb +0 -17
- data/examples/failing/failure_in_after.rb +0 -10
- data/examples/failing/failure_in_before.rb +0 -10
- data/examples/failing/mocking_example.rb +0 -38
- data/examples/failing/mocking_with_flexmock.rb +0 -26
- data/examples/failing/mocking_with_mocha.rb +0 -25
- data/examples/failing/mocking_with_rr.rb +0 -27
- data/examples/failing/partial_mock_example.rb +0 -18
- data/examples/failing/pending_example.rb +0 -7
- data/examples/failing/predicate_example.rb +0 -32
- data/examples/failing/raising_example.rb +0 -47
- data/examples/failing/syntax_error_example.rb +0 -7
- data/examples/failing/team_spec.rb +0 -41
- data/examples/failing/timeout_behaviour.rb +0 -5
- data/examples/passing/custom_formatter.rb +0 -11
- data/examples/passing/custom_matchers.rb +0 -54
- data/examples/passing/dynamic_spec.rb +0 -7
- data/examples/passing/file_accessor.rb +0 -18
- data/examples/passing/file_accessor_spec.rb +0 -37
- data/examples/passing/filtered_formatter.rb +0 -17
- data/examples/passing/filtered_formatter_example.rb +0 -31
- data/examples/passing/greeter_spec.rb +0 -30
- data/examples/passing/helper_method_example.rb +0 -12
- data/examples/passing/implicit_docstrings_example.rb +0 -16
- data/examples/passing/io_processor.rb +0 -8
- data/examples/passing/io_processor_spec.rb +0 -20
- data/examples/passing/mocking_example.rb +0 -25
- data/examples/passing/multi_threaded_example_group_runner.rb +0 -26
- data/examples/passing/nested_classes_example.rb +0 -35
- data/examples/passing/options_example.rb +0 -29
- data/examples/passing/options_formatter.rb +0 -20
- data/examples/passing/partial_mock_example.rb +0 -27
- data/examples/passing/pending_example.rb +0 -18
- data/examples/passing/predicate_example.rb +0 -25
- data/examples/passing/shared_example_group_example.rb +0 -43
- data/examples/passing/shared_stack_examples.rb +0 -36
- data/examples/passing/simple_matcher_example.rb +0 -29
- data/examples/passing/stack.rb +0 -36
- data/examples/passing/stack_spec.rb +0 -63
- data/examples/passing/stack_spec_with_nested_example_groups.rb +0 -66
- data/examples/passing/stubbing_example.rb +0 -67
- data/examples/passing/yielding_example.rb +0 -31
- data/examples/ruby1.9.compatibility/access_to_constants_spec.rb +0 -85
- data/features-pending/cli/conditional_exclusion.feature +0 -39
- data/features-pending/heckle/heckle.feature +0 -56
- data/features/before_and_after_blocks/before_and_after_blocks.feature +0 -167
- data/features/command_line/line_number_option.feature +0 -56
- data/features/command_line/line_number_option_with_example_with_no_name.feature +0 -22
- data/features/example_groups/define_example_attribute.feature +0 -41
- data/features/example_groups/example_group_with_should_methods.feature +0 -29
- data/features/example_groups/implicit_docstrings.feature +0 -59
- data/features/example_groups/nested_groups.feature +0 -32
- data/features/expectations/customized_message.feature +0 -54
- data/features/expectations/expect_change.feature +0 -65
- data/features/expectations/expect_error.feature +0 -44
- data/features/extensions/custom_example_group.feature +0 -19
- data/features/formatters/custom_formatter.feature +0 -30
- data/features/formatters/nested_formatter.feature +0 -32
- data/features/interop/cucumber_stubs_dont_leak.feature +0 -11
- data/features/interop/examples_and_tests_together.feature +0 -84
- data/features/interop/rspec_output.feature +0 -25
- data/features/interop/test_but_not_test_unit.feature +0 -26
- data/features/interop/test_case_with_should_methods.feature +0 -46
- data/features/load_paths/add_lib_to_load_path.feature +0 -20
- data/features/load_paths/add_spec_to_load_path.feature +0 -20
- data/features/matchers/define_diffable_matcher.feature +0 -26
- data/features/matchers/define_matcher.feature +0 -179
- data/features/matchers/define_matcher_outside_rspec.feature +0 -37
- data/features/matchers/define_matcher_with_fluent_interface.feature +0 -48
- data/features/matchers/define_wrapped_matcher.feature +0 -56
- data/features/matchers/match_unless_raises.feature +0 -60
- data/features/matchers/match_unless_raises_unexpected_error.feature +0 -39
- data/features/mock_framework_integration/use_flexmock.feature +0 -27
- data/features/mock_framework_integration/use_mocha.feature +0 -27
- data/features/mock_framework_integration/use_rr.feature +0 -27
- data/features/mocks/block_local_expectations.feature +0 -62
- data/features/mocks/mix_stubs_and_mocks.feature +0 -22
- data/features/mocks/stub_implementation.feature +0 -26
- data/features/pending/pending_examples.feature +0 -81
- data/features/runner/specify_line_number.feature +0 -32
- data/features/spec_helper/spec_helper.feature +0 -25
- data/features/step_definitions/running_rspec_steps.rb +0 -52
- data/features/step_definitions/stubbing_steps.rb +0 -16
- data/features/subject/explicit_subject.feature +0 -31
- data/features/subject/implicit_subject.feature +0 -43
- data/features/support/env.rb +0 -83
- data/features/support/matchers/smart_match.rb +0 -31
- data/init.rb +0 -9
- data/lib/autotest/discover.rb +0 -3
- data/lib/autotest/rspec.rb +0 -54
- data/lib/spec.rb +0 -8
- data/lib/spec/adapters/mock_frameworks/flexmock.rb +0 -24
- data/lib/spec/adapters/mock_frameworks/mocha.rb +0 -25
- data/lib/spec/adapters/mock_frameworks/rr.rb +0 -22
- data/lib/spec/adapters/mock_frameworks/rspec.rb +0 -21
- data/lib/spec/autorun.rb +0 -3
- data/lib/spec/deprecation.rb +0 -41
- data/lib/spec/dsl.rb +0 -1
- data/lib/spec/dsl/main.rb +0 -93
- data/lib/spec/example.rb +0 -164
- data/lib/spec/example/args_and_options.rb +0 -27
- data/lib/spec/example/before_and_after_hooks.rb +0 -93
- data/lib/spec/example/errors.rb +0 -25
- data/lib/spec/example/example_group.rb +0 -10
- data/lib/spec/example/example_group_factory.rb +0 -82
- data/lib/spec/example/example_group_hierarchy.rb +0 -53
- data/lib/spec/example/example_group_methods.rb +0 -287
- data/lib/spec/example/example_group_proxy.rb +0 -61
- data/lib/spec/example/example_matcher.rb +0 -43
- data/lib/spec/example/example_methods.rb +0 -152
- data/lib/spec/example/example_proxy.rb +0 -41
- data/lib/spec/example/module_reopening_fix.rb +0 -43
- data/lib/spec/example/pending.rb +0 -18
- data/lib/spec/example/predicate_matchers.rb +0 -46
- data/lib/spec/example/shared_example_group.rb +0 -59
- data/lib/spec/example/subject.rb +0 -114
- data/lib/spec/expectations.rb +0 -35
- data/lib/spec/expectations/errors.rb +0 -12
- data/lib/spec/expectations/extensions.rb +0 -1
- data/lib/spec/expectations/extensions/kernel.rb +0 -52
- data/lib/spec/expectations/fail_with.rb +0 -45
- data/lib/spec/expectations/handler.rb +0 -50
- data/lib/spec/extensions/instance_exec.rb +0 -31
- data/lib/spec/interop/test.rb +0 -44
- data/lib/spec/interop/test/unit/autorunner.rb +0 -6
- data/lib/spec/interop/test/unit/testcase.rb +0 -56
- data/lib/spec/interop/test/unit/testresult.rb +0 -6
- data/lib/spec/interop/test/unit/testsuite_adapter.rb +0 -36
- data/lib/spec/interop/test/unit/ui/console/testrunner.rb +0 -61
- data/lib/spec/matchers.rb +0 -214
- data/lib/spec/matchers/be.rb +0 -249
- data/lib/spec/matchers/be_close.rb +0 -32
- data/lib/spec/matchers/be_instance_of.rb +0 -26
- data/lib/spec/matchers/be_kind_of.rb +0 -26
- data/lib/spec/matchers/change.rb +0 -151
- data/lib/spec/matchers/compatibility.rb +0 -14
- data/lib/spec/matchers/dsl.rb +0 -20
- data/lib/spec/matchers/eql.rb +0 -42
- data/lib/spec/matchers/equal.rb +0 -53
- data/lib/spec/matchers/errors.rb +0 -5
- data/lib/spec/matchers/exist.rb +0 -16
- data/lib/spec/matchers/generated_descriptions.rb +0 -36
- data/lib/spec/matchers/has.rb +0 -35
- data/lib/spec/matchers/have.rb +0 -152
- data/lib/spec/matchers/include.rb +0 -44
- data/lib/spec/matchers/match.rb +0 -21
- data/lib/spec/matchers/match_array.rb +0 -71
- data/lib/spec/matchers/matcher.rb +0 -132
- data/lib/spec/matchers/method_missing.rb +0 -9
- data/lib/spec/matchers/operator_matcher.rb +0 -83
- data/lib/spec/matchers/pretty.rb +0 -37
- data/lib/spec/matchers/raise_exception.rb +0 -131
- data/lib/spec/matchers/respond_to.rb +0 -71
- data/lib/spec/matchers/satisfy.rb +0 -47
- data/lib/spec/matchers/simple_matcher.rb +0 -134
- data/lib/spec/matchers/throw_symbol.rb +0 -100
- data/lib/spec/matchers/wrap_expectation.rb +0 -55
- data/lib/spec/mocks.rb +0 -200
- data/lib/spec/mocks/argument_expectation.rb +0 -51
- data/lib/spec/mocks/argument_matchers.rb +0 -237
- data/lib/spec/mocks/error_generator.rb +0 -92
- data/lib/spec/mocks/errors.rb +0 -10
- data/lib/spec/mocks/example_methods.rb +0 -69
- data/lib/spec/mocks/extensions.rb +0 -1
- data/lib/spec/mocks/extensions/object.rb +0 -3
- data/lib/spec/mocks/framework.rb +0 -15
- data/lib/spec/mocks/message_expectation.rb +0 -344
- data/lib/spec/mocks/methods.rb +0 -94
- data/lib/spec/mocks/mock.rb +0 -71
- data/lib/spec/mocks/order_group.rb +0 -29
- data/lib/spec/mocks/proxy.rb +0 -254
- data/lib/spec/mocks/space.rb +0 -28
- data/lib/spec/rake/spectask.rb +0 -230
- data/lib/spec/rake/verify_rcov.rb +0 -52
- data/lib/spec/ruby.rb +0 -9
- data/lib/spec/runner.rb +0 -66
- data/lib/spec/runner/backtrace_tweaker.rb +0 -78
- data/lib/spec/runner/class_and_arguments_parser.rb +0 -14
- data/lib/spec/runner/command_line.rb +0 -15
- data/lib/spec/runner/configuration.rb +0 -202
- data/lib/spec/runner/differs/default.rb +0 -93
- data/lib/spec/runner/differs/load-diff-lcs.rb +0 -12
- data/lib/spec/runner/drb_command_line.rb +0 -32
- data/lib/spec/runner/example_group_runner.rb +0 -58
- data/lib/spec/runner/extensions/kernel.rb +0 -9
- data/lib/spec/runner/formatter/base_formatter.rb +0 -139
- data/lib/spec/runner/formatter/base_text_formatter.rb +0 -142
- data/lib/spec/runner/formatter/failing_example_groups_formatter.rb +0 -25
- data/lib/spec/runner/formatter/failing_examples_formatter.rb +0 -20
- data/lib/spec/runner/formatter/html_formatter.rb +0 -338
- data/lib/spec/runner/formatter/nested_text_formatter.rb +0 -50
- data/lib/spec/runner/formatter/no_op_method_missing.rb +0 -21
- data/lib/spec/runner/formatter/profile_formatter.rb +0 -47
- data/lib/spec/runner/formatter/progress_bar_formatter.rb +0 -33
- data/lib/spec/runner/formatter/silent_formatter.rb +0 -10
- data/lib/spec/runner/formatter/snippet_extractor.rb +0 -52
- data/lib/spec/runner/formatter/specdoc_formatter.rb +0 -33
- data/lib/spec/runner/formatter/text_mate_formatter.rb +0 -16
- data/lib/spec/runner/heckle_runner.rb +0 -77
- data/lib/spec/runner/heckle_runner_unsupported.rb +0 -10
- data/lib/spec/runner/line_number_query.rb +0 -78
- data/lib/spec/runner/option_parser.rb +0 -225
- data/lib/spec/runner/options.rb +0 -406
- data/lib/spec/runner/reporter.rb +0 -171
- data/lib/spec/stubs/cucumber.rb +0 -5
- data/lib/spec/test/unit.rb +0 -10
- data/lib/spec/version.rb +0 -14
- data/resources/helpers/cmdline.rb +0 -8
- data/resources/rake/examples.rake +0 -7
- data/resources/rake/examples_with_rcov.rake +0 -9
- data/resources/rake/failing_examples_with_html.rake +0 -9
- data/resources/rake/verify_rcov.rake +0 -7
- data/spec/README.jruby +0 -15
- data/spec/autotest/autotest_helper.rb +0 -8
- data/spec/autotest/autotest_matchers.rb +0 -38
- data/spec/autotest/discover_spec.rb +0 -8
- data/spec/autotest/failed_results_re_spec.rb +0 -31
- data/spec/autotest/rspec_spec.rb +0 -126
- data/spec/ruby_forker.rb +0 -13
- data/spec/spec.opts +0 -6
- data/spec/spec/dsl/main_spec.rb +0 -103
- data/spec/spec/example/example_group_class_definition_spec.rb +0 -51
- data/spec/spec/example/example_group_factory_spec.rb +0 -180
- data/spec/spec/example/example_group_methods_spec.rb +0 -778
- data/spec/spec/example/example_group_proxy_spec.rb +0 -107
- data/spec/spec/example/example_group_spec.rb +0 -632
- data/spec/spec/example/example_matcher_spec.rb +0 -85
- data/spec/spec/example/example_methods_spec.rb +0 -162
- data/spec/spec/example/example_proxy_spec.rb +0 -57
- data/spec/spec/example/helper_method_spec.rb +0 -24
- data/spec/spec/example/nested_example_group_spec.rb +0 -71
- data/spec/spec/example/pending_module_spec.rb +0 -58
- data/spec/spec/example/predicate_matcher_spec.rb +0 -41
- data/spec/spec/example/shared_example_group_spec.rb +0 -257
- data/spec/spec/example/subclassing_example_group_spec.rb +0 -25
- data/spec/spec/example/subject_spec.rb +0 -110
- data/spec/spec/expectations/differs/default_spec.rb +0 -194
- data/spec/spec/expectations/extensions/kernel_spec.rb +0 -45
- data/spec/spec/expectations/fail_with_spec.rb +0 -96
- data/spec/spec/expectations/handler_spec.rb +0 -206
- data/spec/spec/expectations/wrap_expectation_spec.rb +0 -31
- data/spec/spec/interop/test/unit/resources/spec_that_fails.rb +0 -10
- data/spec/spec/interop/test/unit/resources/spec_that_passes.rb +0 -10
- data/spec/spec/interop/test/unit/resources/spec_with_errors.rb +0 -10
- data/spec/spec/interop/test/unit/resources/spec_with_options_hash.rb +0 -13
- data/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +0 -10
- data/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +0 -10
- data/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +0 -10
- data/spec/spec/interop/test/unit/resources/test_case_with_various_names.rb +0 -22
- data/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +0 -38
- data/spec/spec/interop/test/unit/spec_spec.rb +0 -48
- data/spec/spec/interop/test/unit/test_unit_spec_helper.rb +0 -18
- data/spec/spec/interop/test/unit/testcase_spec.rb +0 -50
- data/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +0 -9
- data/spec/spec/matchers/be_close_spec.rb +0 -50
- data/spec/spec/matchers/be_instance_of_spec.rb +0 -36
- data/spec/spec/matchers/be_kind_of_spec.rb +0 -33
- data/spec/spec/matchers/be_spec.rb +0 -460
- data/spec/spec/matchers/change_spec.rb +0 -349
- data/spec/spec/matchers/compatibility_spec.rb +0 -28
- data/spec/spec/matchers/description_generation_spec.rb +0 -160
- data/spec/spec/matchers/dsl_spec.rb +0 -34
- data/spec/spec/matchers/eql_spec.rb +0 -33
- data/spec/spec/matchers/equal_spec.rb +0 -57
- data/spec/spec/matchers/exist_spec.rb +0 -65
- data/spec/spec/matchers/has_spec.rb +0 -190
- data/spec/spec/matchers/have_spec.rb +0 -381
- data/spec/spec/matchers/include_spec.rb +0 -88
- data/spec/spec/matchers/match_array_spec.rb +0 -115
- data/spec/spec/matchers/match_spec.rb +0 -57
- data/spec/spec/matchers/matcher_spec.rb +0 -289
- data/spec/spec/matchers/matchers_spec.rb +0 -2
- data/spec/spec/matchers/operator_matcher_spec.rb +0 -191
- data/spec/spec/matchers/pretty_spec.rb +0 -22
- data/spec/spec/matchers/raise_exception_spec.rb +0 -345
- data/spec/spec/matchers/respond_to_spec.rb +0 -116
- data/spec/spec/matchers/satisfy_spec.rb +0 -36
- data/spec/spec/matchers/simple_matcher_spec.rb +0 -100
- data/spec/spec/matchers/throw_symbol_spec.rb +0 -121
- data/spec/spec/mocks/and_yield_spec.rb +0 -117
- data/spec/spec/mocks/any_number_of_times_spec.rb +0 -36
- data/spec/spec/mocks/argument_expectation_spec.rb +0 -23
- data/spec/spec/mocks/argument_matchers_spec.rb +0 -19
- data/spec/spec/mocks/at_least_spec.rb +0 -97
- data/spec/spec/mocks/at_most_spec.rb +0 -93
- data/spec/spec/mocks/bug_report_10260_spec.rb +0 -8
- data/spec/spec/mocks/bug_report_10263_spec.rb +0 -27
- data/spec/spec/mocks/bug_report_1049_spec.rb +0 -30
- data/spec/spec/mocks/bug_report_11545_spec.rb +0 -32
- data/spec/spec/mocks/bug_report_15719_spec.rb +0 -30
- data/spec/spec/mocks/bug_report_496_spec.rb +0 -17
- data/spec/spec/mocks/bug_report_600_spec.rb +0 -22
- data/spec/spec/mocks/bug_report_7611_spec.rb +0 -19
- data/spec/spec/mocks/bug_report_7805_spec.rb +0 -22
- data/spec/spec/mocks/bug_report_8165_spec.rb +0 -31
- data/spec/spec/mocks/bug_report_8302_spec.rb +0 -26
- data/spec/spec/mocks/bug_report_830_spec.rb +0 -21
- data/spec/spec/mocks/bug_report_957_spec.rb +0 -22
- data/spec/spec/mocks/double_spec.rb +0 -12
- data/spec/spec/mocks/failing_argument_matchers_spec.rb +0 -95
- data/spec/spec/mocks/hash_including_matcher_spec.rb +0 -90
- data/spec/spec/mocks/hash_not_including_matcher_spec.rb +0 -67
- data/spec/spec/mocks/mock_ordering_spec.rb +0 -94
- data/spec/spec/mocks/mock_space_spec.rb +0 -54
- data/spec/spec/mocks/mock_spec.rb +0 -601
- data/spec/spec/mocks/multiple_return_value_spec.rb +0 -113
- data/spec/spec/mocks/nil_expectation_warning_spec.rb +0 -53
- data/spec/spec/mocks/null_object_mock_spec.rb +0 -54
- data/spec/spec/mocks/once_counts_spec.rb +0 -53
- data/spec/spec/mocks/options_hash_spec.rb +0 -35
- data/spec/spec/mocks/partial_mock_spec.rb +0 -164
- data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +0 -66
- data/spec/spec/mocks/passing_argument_matchers_spec.rb +0 -145
- data/spec/spec/mocks/precise_counts_spec.rb +0 -52
- data/spec/spec/mocks/record_messages_spec.rb +0 -26
- data/spec/spec/mocks/stub_chain_spec.rb +0 -42
- data/spec/spec/mocks/stub_implementation_spec.rb +0 -31
- data/spec/spec/mocks/stub_spec.rb +0 -203
- data/spec/spec/mocks/stubbed_message_expectations_spec.rb +0 -26
- data/spec/spec/mocks/twice_counts_spec.rb +0 -67
- data/spec/spec/mocks/unstub_spec.rb +0 -127
- data/spec/spec/package/bin_spec_spec.rb +0 -16
- data/spec/spec/rake/spectask_spec.rb +0 -150
- data/spec/spec/runner/class_and_argument_parser_spec.rb +0 -23
- data/spec/spec/runner/command_line_spec.rb +0 -162
- data/spec/spec/runner/configuration_spec.rb +0 -320
- data/spec/spec/runner/drb_command_line_spec.rb +0 -146
- data/spec/spec/runner/empty_file.txt +0 -0
- data/spec/spec/runner/example_group_runner_spec.rb +0 -26
- data/spec/spec/runner/examples.txt +0 -2
- data/spec/spec/runner/failed.txt +0 -3
- data/spec/spec/runner/formatter/base_formatter_spec.rb +0 -30
- data/spec/spec/runner/formatter/base_text_formatter_spec.rb +0 -113
- data/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +0 -45
- data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +0 -33
- data/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +0 -377
- data/spec/spec/runner/formatter/html_formatted-1.8.6.html +0 -377
- data/spec/spec/runner/formatter/html_formatted-1.8.7.html +0 -377
- data/spec/spec/runner/formatter/html_formatted-1.9.1.html +0 -377
- data/spec/spec/runner/formatter/html_formatted-1.9.2.html +0 -377
- data/spec/spec/runner/formatter/html_formatter_spec.rb +0 -118
- data/spec/spec/runner/formatter/nested_text_formatter_spec.rb +0 -329
- data/spec/spec/runner/formatter/profile_formatter_spec.rb +0 -70
- data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +0 -149
- data/spec/spec/runner/formatter/snippet_extractor_spec.rb +0 -18
- data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +0 -159
- data/spec/spec/runner/formatter/text_mate_formatted-1.8.6-jruby.html +0 -371
- data/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +0 -371
- data/spec/spec/runner/formatter/text_mate_formatted-1.8.7.html +0 -371
- data/spec/spec/runner/formatter/text_mate_formatted-1.9.1.html +0 -371
- data/spec/spec/runner/formatter/text_mate_formatted-1.9.2.html +0 -371
- data/spec/spec/runner/formatter/text_mate_formatter_spec.rb +0 -106
- data/spec/spec/runner/heckle_runner_spec.rb +0 -78
- data/spec/spec/runner/heckler_spec.rb +0 -20
- data/spec/spec/runner/line_number_query/line_number_query_fixture.rb +0 -70
- data/spec/spec/runner/line_number_query_spec.rb +0 -129
- data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +0 -51
- data/spec/spec/runner/option_parser_spec.rb +0 -551
- data/spec/spec/runner/options_spec.rb +0 -554
- data/spec/spec/runner/output_one_time_fixture.rb +0 -7
- data/spec/spec/runner/output_one_time_fixture_runner.rb +0 -7
- data/spec/spec/runner/output_one_time_spec.rb +0 -15
- data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +0 -123
- data/spec/spec/runner/reporter_spec.rb +0 -244
- data/spec/spec/runner/resources/a_bar.rb +0 -0
- data/spec/spec/runner/resources/a_foo.rb +0 -0
- data/spec/spec/runner/resources/a_spec.rb +0 -1
- data/spec/spec/runner/resources/custom_example_group_runner.rb +0 -14
- data/spec/spec/runner/resources/utf8_encoded.rb +0 -8
- data/spec/spec/runner/spec.opts +0 -2
- data/spec/spec/runner/spec_drb.opts +0 -2
- data/spec/spec/runner/spec_spaced.opts +0 -2
- data/spec/spec/runner_spec.rb +0 -13
- data/spec/spec_helper.rb +0 -113
- data/spec/support/macros.rb +0 -29
- data/spec/support/spec_classes.rb +0 -133
@@ -1,88 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe "should include(expected)" do
|
4
|
-
it "should pass if target includes expected" do
|
5
|
-
[1,2,3].should include(3)
|
6
|
-
"abc".should include("a")
|
7
|
-
end
|
8
|
-
|
9
|
-
it 'should pass if target is a Hash and has the expected as a key' do
|
10
|
-
{:key => 'value'}.should include(:key)
|
11
|
-
end
|
12
|
-
|
13
|
-
it "should fail if target does not include expected" do
|
14
|
-
lambda {
|
15
|
-
[1,2,3].should include(4)
|
16
|
-
}.should fail_with("expected [1, 2, 3] to include 4")
|
17
|
-
lambda {
|
18
|
-
"abc".should include("d")
|
19
|
-
}.should fail_with("expected \"abc\" to include \"d\"")
|
20
|
-
lambda {
|
21
|
-
{:key => 'value'}.should include(:other)
|
22
|
-
}.should fail_with(%Q|expected {:key=>"value"} to include :other|)
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
describe "should include(with, multiple, args)" do
|
27
|
-
it "should pass if target includes all items" do
|
28
|
-
[1,2,3].should include(1,2,3)
|
29
|
-
end
|
30
|
-
|
31
|
-
it 'should pass if target is a Hash including all items as keys' do
|
32
|
-
{:key => 'value', :other => 'value'}.should include(:key, :other)
|
33
|
-
end
|
34
|
-
|
35
|
-
it "should fail if target does not include any one of the items" do
|
36
|
-
lambda {
|
37
|
-
[1,2,3].should include(1,2,4)
|
38
|
-
}.should fail_with("expected [1, 2, 3] to include 1, 2, and 4")
|
39
|
-
end
|
40
|
-
|
41
|
-
it 'should pass if target is a Hash missing any item as a key' do
|
42
|
-
lambda {
|
43
|
-
{:key => 'value'}.should include(:key, :other)
|
44
|
-
}.should fail_with(%Q|expected {:key=>"value"} to include :key and :other|)
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
describe "should_not include(expected)" do
|
49
|
-
it "should pass if target does not include expected" do
|
50
|
-
[1,2,3].should_not include(4)
|
51
|
-
"abc".should_not include("d")
|
52
|
-
end
|
53
|
-
|
54
|
-
it 'should pass if target is a Hash and does not have the expected as a key' do
|
55
|
-
{:other => 'value'}.should_not include(:key)
|
56
|
-
end
|
57
|
-
|
58
|
-
it "should fail if target includes expected" do
|
59
|
-
lambda {
|
60
|
-
[1,2,3].should_not include(3)
|
61
|
-
}.should fail_with("expected [1, 2, 3] not to include 3")
|
62
|
-
lambda {
|
63
|
-
"abc".should_not include("c")
|
64
|
-
}.should fail_with("expected \"abc\" not to include \"c\"")
|
65
|
-
lambda {
|
66
|
-
{:key => 'value'}.should_not include(:key)
|
67
|
-
}.should fail_with(%Q|expected {:key=>"value"} not to include :key|)
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
describe "should include(:key => value)" do
|
72
|
-
it "should pass if target is a Hash and includes the key/value pair" do
|
73
|
-
{:key => 'value'}.should include(:key => 'value')
|
74
|
-
end
|
75
|
-
it "should pass if target is a Hash and includes the key/value pair among others" do
|
76
|
-
{:key => 'value', :other => 'different'}.should include(:key => 'value')
|
77
|
-
end
|
78
|
-
it "should fail if target is a Hash and has a different value for key" do
|
79
|
-
lambda {
|
80
|
-
{:key => 'different'}.should include(:key => 'value')
|
81
|
-
}.should fail_with(%Q|expected {:key=>"different"} to include {:key=>"value"}|)
|
82
|
-
end
|
83
|
-
it "should fail if target is a Hash and has a different key" do
|
84
|
-
lambda {
|
85
|
-
{:other => 'value'}.should include(:key => 'value')
|
86
|
-
}.should fail_with(%Q|expected {:other=>"value"} to include {:key=>"value"}|)
|
87
|
-
end
|
88
|
-
end
|
@@ -1,115 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
class UnsortableObject
|
4
|
-
def initialize(id)
|
5
|
-
@id = id
|
6
|
-
end
|
7
|
-
|
8
|
-
def inspect
|
9
|
-
@id.to_s
|
10
|
-
end
|
11
|
-
|
12
|
-
def ==(other)
|
13
|
-
false
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
describe "array.should =~ other_array" do
|
18
|
-
it "should pass if target contains all items" do
|
19
|
-
[1,2,3].should =~ [1,2,3]
|
20
|
-
end
|
21
|
-
|
22
|
-
it "should pass if target contains all items out of order" do
|
23
|
-
[1,3,2].should =~ [1,2,3]
|
24
|
-
end
|
25
|
-
|
26
|
-
it "should fail if target includes extra items" do
|
27
|
-
lambda {
|
28
|
-
[1,2,3,4].should =~ [1,2,3]
|
29
|
-
}.should fail_with(<<-MESSAGE)
|
30
|
-
expected collection contained: [1, 2, 3]
|
31
|
-
actual collection contained: [1, 2, 3, 4]
|
32
|
-
the extra elements were: [4]
|
33
|
-
MESSAGE
|
34
|
-
end
|
35
|
-
|
36
|
-
it "should fail if target is missing items" do
|
37
|
-
lambda {
|
38
|
-
[1,2].should =~ [1,2,3]
|
39
|
-
}.should fail_with(<<-MESSAGE)
|
40
|
-
expected collection contained: [1, 2, 3]
|
41
|
-
actual collection contained: [1, 2]
|
42
|
-
the missing elements were: [3]
|
43
|
-
MESSAGE
|
44
|
-
end
|
45
|
-
|
46
|
-
it "should fail if target is missing items and has extra items" do
|
47
|
-
|
48
|
-
lambda {
|
49
|
-
[1,2,4].should =~ [1,2,3]
|
50
|
-
}.should fail_with(<<-MESSAGE)
|
51
|
-
expected collection contained: [1, 2, 3]
|
52
|
-
actual collection contained: [1, 2, 4]
|
53
|
-
the missing elements were: [3]
|
54
|
-
the extra elements were: [4]
|
55
|
-
MESSAGE
|
56
|
-
end
|
57
|
-
|
58
|
-
it "should sort items in the error message if they all respond to <=>" do
|
59
|
-
lambda {
|
60
|
-
[6,2,1,5].should =~ [4,1,2,3]
|
61
|
-
}.should fail_with(<<-MESSAGE)
|
62
|
-
expected collection contained: [1, 2, 3, 4]
|
63
|
-
actual collection contained: [1, 2, 5, 6]
|
64
|
-
the missing elements were: [3, 4]
|
65
|
-
the extra elements were: [5, 6]
|
66
|
-
MESSAGE
|
67
|
-
end
|
68
|
-
|
69
|
-
it "should not sort items in the error message if they don't all respond to <=>" do
|
70
|
-
with_ruby 1.8 do
|
71
|
-
lambda {
|
72
|
-
[UnsortableObject.new(2), UnsortableObject.new(1)].should =~ [UnsortableObject.new(4), UnsortableObject.new(3)]
|
73
|
-
}.should fail_with(<<-MESSAGE)
|
74
|
-
expected collection contained: [4, 3]
|
75
|
-
actual collection contained: [2, 1]
|
76
|
-
the missing elements were: [4, 3]
|
77
|
-
the extra elements were: [2, 1]
|
78
|
-
MESSAGE
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
it "should accurately report extra elements when there are duplicates" do
|
83
|
-
lambda {
|
84
|
-
[1,1,1,5].should =~ [1,5]
|
85
|
-
}.should fail_with(<<-MESSAGE)
|
86
|
-
expected collection contained: [1, 5]
|
87
|
-
actual collection contained: [1, 1, 1, 5]
|
88
|
-
the extra elements were: [1, 1]
|
89
|
-
MESSAGE
|
90
|
-
end
|
91
|
-
|
92
|
-
it "should accurately report missing elements when there are duplicates" do
|
93
|
-
lambda {
|
94
|
-
[1,5].should =~ [1,1,5]
|
95
|
-
}.should fail_with(<<-MESSAGE)
|
96
|
-
expected collection contained: [1, 1, 5]
|
97
|
-
actual collection contained: [1, 5]
|
98
|
-
the missing elements were: [1]
|
99
|
-
MESSAGE
|
100
|
-
end
|
101
|
-
|
102
|
-
it "should work with subclasses of Array" do
|
103
|
-
class SuperArray < Array; end
|
104
|
-
SuperArray.new([1,2,3]).should =~ SuperArray.new([3,2,1])
|
105
|
-
end
|
106
|
-
|
107
|
-
end
|
108
|
-
|
109
|
-
describe "should_not =~ [:with, :multiple, :args]" do
|
110
|
-
it "should not be supported" do
|
111
|
-
lambda {
|
112
|
-
[1,2,3].should_not =~ [1,2,3]
|
113
|
-
}.should fail_with(/Matcher does not support should_not/)
|
114
|
-
end
|
115
|
-
end
|
@@ -1,57 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe "should match(expected)" do
|
4
|
-
it "should pass when target (String) matches expected (Regexp)" do
|
5
|
-
"string".should match(/tri/)
|
6
|
-
end
|
7
|
-
|
8
|
-
it "should pass when target (String) matches expected (String)" do
|
9
|
-
"string".should match("tri")
|
10
|
-
end
|
11
|
-
|
12
|
-
it "should fail when target (String) does not match expected (Regexp)" do
|
13
|
-
lambda {
|
14
|
-
"string".should match(/rings/)
|
15
|
-
}.should fail
|
16
|
-
end
|
17
|
-
|
18
|
-
it "should fail when target (String) does not match expected (String)" do
|
19
|
-
lambda {
|
20
|
-
"string".should match("rings")
|
21
|
-
}.should fail
|
22
|
-
end
|
23
|
-
|
24
|
-
it "should provide message, expected and actual on failure" do
|
25
|
-
matcher = match(/rings/)
|
26
|
-
matcher.matches?("string")
|
27
|
-
matcher.failure_message_for_should.should == "expected \"string\" to match /rings/"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
describe "should_not match(expected)" do
|
32
|
-
it "should pass when target (String) matches does not match (Regexp)" do
|
33
|
-
"string".should_not match(/rings/)
|
34
|
-
end
|
35
|
-
|
36
|
-
it "should pass when target (String) matches does not match (String)" do
|
37
|
-
"string".should_not match("rings")
|
38
|
-
end
|
39
|
-
|
40
|
-
it "should fail when target (String) matches expected (Regexp)" do
|
41
|
-
lambda {
|
42
|
-
"string".should_not match(/tri/)
|
43
|
-
}.should fail
|
44
|
-
end
|
45
|
-
|
46
|
-
it "should fail when target (String) matches expected (String)" do
|
47
|
-
lambda {
|
48
|
-
"string".should_not match("tri")
|
49
|
-
}.should fail
|
50
|
-
end
|
51
|
-
|
52
|
-
it "should provide message, expected and actual on failure" do
|
53
|
-
matcher = match(/tri/)
|
54
|
-
matcher.matches?("string")
|
55
|
-
matcher.failure_message_for_should_not.should == "expected \"string\" not to match /tri/"
|
56
|
-
end
|
57
|
-
end
|
@@ -1,289 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
class UnexpectedError < StandardError; end
|
4
|
-
|
5
|
-
module Spec
|
6
|
-
module Matchers
|
7
|
-
describe Matcher do
|
8
|
-
context "without overrides" do
|
9
|
-
before(:each) do
|
10
|
-
@matcher = Spec::Matchers::Matcher.new(:be_a_multiple_of, 3) do |multiple|
|
11
|
-
match do |actual|
|
12
|
-
actual % multiple == 0
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
it "provides a default description" do
|
18
|
-
@matcher.description.should == "be a multiple of 3"
|
19
|
-
end
|
20
|
-
|
21
|
-
it "provides a default failure message for #should" do
|
22
|
-
@matcher.matches?(8)
|
23
|
-
@matcher.failure_message_for_should.should == "expected 8 to be a multiple of 3"
|
24
|
-
end
|
25
|
-
|
26
|
-
it "provides a default failure message for #should_not" do
|
27
|
-
@matcher.matches?(9)
|
28
|
-
@matcher.failure_message_for_should_not.should == "expected 9 not to be a multiple of 3"
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
it "is not diffable by default" do
|
33
|
-
matcher = Spec::Matchers::Matcher.new(:name) {}
|
34
|
-
matcher.should_not be_diffable
|
35
|
-
end
|
36
|
-
|
37
|
-
it "is diffable when told to be" do
|
38
|
-
matcher = Spec::Matchers::Matcher.new(:name) { diffable }
|
39
|
-
matcher.should be_diffable
|
40
|
-
end
|
41
|
-
|
42
|
-
it "provides expected" do
|
43
|
-
matcher = Spec::Matchers::Matcher.new(:name, 'expected string') {}
|
44
|
-
matcher.expected.should == ['expected string']
|
45
|
-
end
|
46
|
-
|
47
|
-
it "provides actual" do
|
48
|
-
matcher = Spec::Matchers::Matcher.new(:name, 'expected string') do
|
49
|
-
match {|actual|}
|
50
|
-
end
|
51
|
-
|
52
|
-
matcher.matches?('actual string')
|
53
|
-
|
54
|
-
matcher.actual.should == 'actual string'
|
55
|
-
end
|
56
|
-
|
57
|
-
context "wrapping another expectation (should == ...)" do
|
58
|
-
it "returns true if the wrapped expectation passes" do
|
59
|
-
matcher = Spec::Matchers::Matcher.new(:name, 'value') do |expected|
|
60
|
-
match do |actual|
|
61
|
-
actual.should == expected
|
62
|
-
end
|
63
|
-
end
|
64
|
-
matcher.matches?('value').should be_true
|
65
|
-
end
|
66
|
-
|
67
|
-
it "returns false if the wrapped expectation fails" do
|
68
|
-
matcher = Spec::Matchers::Matcher.new(:name, 'value') do |expected|
|
69
|
-
match do |actual|
|
70
|
-
actual.should == expected
|
71
|
-
end
|
72
|
-
end
|
73
|
-
matcher.matches?('other value').should be_false
|
74
|
-
end
|
75
|
-
end
|
76
|
-
|
77
|
-
context "with overrides" do
|
78
|
-
before(:each) do
|
79
|
-
@matcher = Spec::Matchers::Matcher.new(:be_boolean, true) do |boolean|
|
80
|
-
match do |actual|
|
81
|
-
actual
|
82
|
-
end
|
83
|
-
description do
|
84
|
-
"be the boolean #{boolean}"
|
85
|
-
end
|
86
|
-
failure_message_for_should do |actual|
|
87
|
-
"expected #{actual} to be the boolean #{boolean}"
|
88
|
-
end
|
89
|
-
failure_message_for_should_not do |actual|
|
90
|
-
"expected #{actual} not to be the boolean #{boolean}"
|
91
|
-
end
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
it "does not hide result of match block when true" do
|
96
|
-
@matcher.matches?(true).should be_true
|
97
|
-
end
|
98
|
-
|
99
|
-
it "does not hide result of match block when false" do
|
100
|
-
@matcher.matches?(false).should be_false
|
101
|
-
end
|
102
|
-
|
103
|
-
it "overrides the description" do
|
104
|
-
@matcher.description.should == "be the boolean true"
|
105
|
-
end
|
106
|
-
|
107
|
-
it "overrides the failure message for #should" do
|
108
|
-
@matcher.matches?(false)
|
109
|
-
@matcher.failure_message_for_should.should == "expected false to be the boolean true"
|
110
|
-
end
|
111
|
-
|
112
|
-
it "overrides the failure message for #should_not" do
|
113
|
-
@matcher.matches?(true)
|
114
|
-
@matcher.failure_message_for_should_not.should == "expected true not to be the boolean true"
|
115
|
-
end
|
116
|
-
end
|
117
|
-
|
118
|
-
context "#new" do
|
119
|
-
it "passes matches? arg to match block" do
|
120
|
-
matcher = Spec::Matchers::Matcher.new(:ignore) do
|
121
|
-
match do |actual|
|
122
|
-
actual == 5
|
123
|
-
end
|
124
|
-
end
|
125
|
-
matcher.matches?(5).should be_true
|
126
|
-
end
|
127
|
-
|
128
|
-
it "exposes arg submitted through #new to matcher block" do
|
129
|
-
matcher = Spec::Matchers::Matcher.new(:ignore, 4) do |expected|
|
130
|
-
match do |actual|
|
131
|
-
actual > expected
|
132
|
-
end
|
133
|
-
end
|
134
|
-
matcher.matches?(5).should be_true
|
135
|
-
end
|
136
|
-
end
|
137
|
-
|
138
|
-
context "with no args" do
|
139
|
-
before(:each) do
|
140
|
-
@matcher = Spec::Matchers::Matcher.new(:matcher_name) do
|
141
|
-
match do |actual|
|
142
|
-
actual == 5
|
143
|
-
end
|
144
|
-
end
|
145
|
-
end
|
146
|
-
|
147
|
-
it "matches" do
|
148
|
-
@matcher.matches?(5).should be_true
|
149
|
-
end
|
150
|
-
|
151
|
-
it "describes" do
|
152
|
-
@matcher.description.should == "matcher name"
|
153
|
-
end
|
154
|
-
end
|
155
|
-
|
156
|
-
context "with 1 arg" do
|
157
|
-
before(:each) do
|
158
|
-
@matcher = Spec::Matchers::Matcher.new(:matcher_name, 1) do |expected|
|
159
|
-
match do |actual|
|
160
|
-
actual == 5 && expected == 1
|
161
|
-
end
|
162
|
-
end
|
163
|
-
end
|
164
|
-
|
165
|
-
it "matches" do
|
166
|
-
@matcher.matches?(5).should be_true
|
167
|
-
end
|
168
|
-
|
169
|
-
it "describes" do
|
170
|
-
@matcher.description.should == "matcher name 1"
|
171
|
-
end
|
172
|
-
end
|
173
|
-
|
174
|
-
context "with multiple args" do
|
175
|
-
before(:each) do
|
176
|
-
@matcher = Spec::Matchers::Matcher.new(:matcher_name, 1, 2, 3, 4) do |a,b,c,d|
|
177
|
-
match do |sum|
|
178
|
-
a + b + c + d == sum
|
179
|
-
end
|
180
|
-
end
|
181
|
-
end
|
182
|
-
|
183
|
-
it "matches" do
|
184
|
-
@matcher.matches?(10).should be_true
|
185
|
-
end
|
186
|
-
|
187
|
-
it "describes" do
|
188
|
-
@matcher.description.should == "matcher name 1, 2, 3, and 4"
|
189
|
-
end
|
190
|
-
end
|
191
|
-
|
192
|
-
it "supports helper methods" do
|
193
|
-
matcher = Spec::Matchers::Matcher.new(:be_similar_to, [1,2,3]) do |sample|
|
194
|
-
match do |actual|
|
195
|
-
similar?(sample, actual)
|
196
|
-
end
|
197
|
-
|
198
|
-
def similar?(a, b)
|
199
|
-
a.sort == b.sort
|
200
|
-
end
|
201
|
-
end
|
202
|
-
|
203
|
-
matcher.matches?([2,3,1]).should be_true
|
204
|
-
end
|
205
|
-
|
206
|
-
it "supports fluent interface" do
|
207
|
-
matcher = Spec::Matchers::Matcher.new(:first_word) do
|
208
|
-
def second_word
|
209
|
-
self
|
210
|
-
end
|
211
|
-
end
|
212
|
-
|
213
|
-
matcher.second_word.should == matcher
|
214
|
-
end
|
215
|
-
|
216
|
-
it "treats method missing normally for undeclared methods" do
|
217
|
-
matcher = Spec::Matchers::Matcher.new(:ignore) { }
|
218
|
-
expect { matcher.non_existent_method }.to raise_error(NoMethodError)
|
219
|
-
end
|
220
|
-
|
221
|
-
it "has access to other matchers" do
|
222
|
-
matcher = Spec::Matchers::Matcher.new(:ignore, 3) do |expected|
|
223
|
-
match do |actual|
|
224
|
-
extend Spec::Matchers
|
225
|
-
actual.should eql(5 + expected)
|
226
|
-
end
|
227
|
-
end
|
228
|
-
|
229
|
-
matcher.matches?(8).should be_true
|
230
|
-
end
|
231
|
-
|
232
|
-
describe "#match_unless_raises" do
|
233
|
-
context "with a passing assertion" do
|
234
|
-
let(:mod) do
|
235
|
-
Module.new do
|
236
|
-
def assert_equal(a,b)
|
237
|
-
a == b ? nil : (raise UnexpectedError.new("#{a} does not equal #{b}"))
|
238
|
-
end
|
239
|
-
end
|
240
|
-
end
|
241
|
-
let(:matcher) do
|
242
|
-
m = mod
|
243
|
-
Spec::Matchers::Matcher.new :equal, 4 do |expected|
|
244
|
-
extend m
|
245
|
-
match_unless_raises UnexpectedError do
|
246
|
-
assert_equal expected, actual
|
247
|
-
end
|
248
|
-
end
|
249
|
-
end
|
250
|
-
it "passes as you would expect" do
|
251
|
-
matcher.matches?(4).should be_true
|
252
|
-
end
|
253
|
-
it "fails as you would expect" do
|
254
|
-
matcher.matches?(5).should be_false
|
255
|
-
end
|
256
|
-
end
|
257
|
-
|
258
|
-
context "with an unexpected error" do
|
259
|
-
let(:matcher) do
|
260
|
-
Spec::Matchers::Matcher.new :foo, :bar do |expected|
|
261
|
-
match_unless_raises SyntaxError do |actual|
|
262
|
-
raise "unexpected exception"
|
263
|
-
end
|
264
|
-
end
|
265
|
-
end
|
266
|
-
|
267
|
-
it "raises the error" do
|
268
|
-
expect do
|
269
|
-
matcher.matches?(:bar)
|
270
|
-
end.to raise_error("unexpected exception")
|
271
|
-
end
|
272
|
-
end
|
273
|
-
|
274
|
-
end
|
275
|
-
|
276
|
-
it "can define chainable methods" do
|
277
|
-
matcher = Spec::Matchers::Matcher.new(:name) do
|
278
|
-
chain(:expecting) do |expected_value|
|
279
|
-
@expected_value = expected_value
|
280
|
-
end
|
281
|
-
match { |actual| actual == @expected_value }
|
282
|
-
end
|
283
|
-
|
284
|
-
matcher.expecting('value').matches?('value').should be_true
|
285
|
-
matcher.expecting('value').matches?('other value').should be_false
|
286
|
-
end
|
287
|
-
end
|
288
|
-
end
|
289
|
-
end
|