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.
- data/.document +1 -6
- data/.gitignore +7 -0
- data/Gemfile +6 -0
- data/License.txt +1 -1
- data/README.markdown +30 -0
- data/Rakefile +10 -143
- data/lib/rspec/version.rb +5 -0
- data/lib/rspec.rb +4 -0
- data/rspec.gemspec +29 -0
- metadata +69 -462
- data/History.rdoc +0 -1529
- data/Manifest.txt +0 -384
- data/README.rdoc +0 -54
- 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/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 -79
- 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/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 -38
- 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/geminstaller.yml +0 -28
- data/init.rb +0 -9
- data/lib/autotest/discover.rb +0 -3
- data/lib/autotest/rspec.rb +0 -54
- 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 -40
- data/lib/spec/dsl/main.rb +0 -92
- data/lib/spec/dsl.rb +0 -1
- 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 -282
- 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 -108
- data/lib/spec/example.rb +0 -164
- data/lib/spec/expectations/errors.rb +0 -12
- data/lib/spec/expectations/extensions/kernel.rb +0 -52
- data/lib/spec/expectations/extensions.rb +0 -1
- data/lib/spec/expectations/fail_with.rb +0 -45
- data/lib/spec/expectations/handler.rb +0 -50
- data/lib/spec/expectations.rb +0 -35
- data/lib/spec/extensions/instance_exec.rb +0 -31
- 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 -34
- data/lib/spec/interop/test/unit/ui/console/testrunner.rb +0 -61
- data/lib/spec/interop/test.rb +0 -44
- 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 -78
- 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 -133
- data/lib/spec/matchers/throw_symbol.rb +0 -100
- data/lib/spec/matchers/wrap_expectation.rb +0 -55
- data/lib/spec/matchers.rb +0 -214
- 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/object.rb +0 -3
- data/lib/spec/mocks/extensions.rb +0 -1
- 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 -266
- data/lib/spec/mocks/space.rb +0 -28
- data/lib/spec/mocks.rb +0 -200
- 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/backtrace_tweaker.rb +0 -77
- 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 -194
- 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 -72
- 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 -405
- data/lib/spec/runner/reporter.rb +0 -171
- data/lib/spec/runner.rb +0 -66
- data/lib/spec/stubs/cucumber.rb +0 -5
- data/lib/spec/test/unit.rb +0 -10
- data/lib/spec/version.rb +0 -14
- data/lib/spec.rb +0 -8
- 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/dsl/main_spec.rb +0 -95
- 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 -759
- data/spec/spec/example/example_group_proxy_spec.rb +0 -107
- data/spec/spec/example/example_group_spec.rb +0 -643
- data/spec/spec/example/example_matcher_spec.rb +0 -86
- 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 -103
- 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 -30
- 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 -396
- data/spec/spec/matchers/include_spec.rb +0 -88
- data/spec/spec/matchers/match_array_spec.rb +0 -108
- 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/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 -93
- 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_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 -19
- 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/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 -594
- 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_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_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.opts +0 -6
- data/spec/spec_helper.rb +0 -112
- data/spec/support/macros.rb +0 -29
- data/spec/support/spec_classes.rb +0 -133
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
require 'rake'
|
|
2
|
-
require 'spec/rake/spectask'
|
|
3
|
-
|
|
4
|
-
desc "Generate HTML report for failing examples"
|
|
5
|
-
Spec::Rake::SpecTask.new('failing_examples_with_html') do |t|
|
|
6
|
-
t.spec_files = FileList['failing_examples/**/*.rb']
|
|
7
|
-
t.spec_opts = ["--format", "html:doc/reports/tools/failing_examples.html", "--diff"]
|
|
8
|
-
t.fail_on_error = false
|
|
9
|
-
end
|
data/spec/README.jruby
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
= Running specs on JRuby =
|
|
2
|
-
|
|
3
|
-
svn co http://svn.codehaus.org/jruby/trunk jruby
|
|
4
|
-
cd jruby/jruby
|
|
5
|
-
ant clean
|
|
6
|
-
ant
|
|
7
|
-
# put JRuby's bin dir on your PATH
|
|
8
|
-
jruby -S gem install rake --no-ri --no-rdoc
|
|
9
|
-
jruby -S gem install diff-lcs
|
|
10
|
-
jruby -S gem install syntax
|
|
11
|
-
cd ../testsuites/rspec
|
|
12
|
-
mkdir target
|
|
13
|
-
jruby -S rake checkout_code
|
|
14
|
-
cd target/rspec
|
|
15
|
-
jruby bin/spec spec -c
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
module Spec
|
|
2
|
-
module Matchers
|
|
3
|
-
class AutotestMappingMatcher
|
|
4
|
-
def initialize(specs)
|
|
5
|
-
@specs = specs
|
|
6
|
-
end
|
|
7
|
-
|
|
8
|
-
def to(file)
|
|
9
|
-
@file = file
|
|
10
|
-
self
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
def matches?(autotest)
|
|
14
|
-
@autotest = prepare(autotest)
|
|
15
|
-
@actual = autotest.test_files_for(@file)
|
|
16
|
-
@actual == @specs
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
def failure_message
|
|
20
|
-
"expected #{@autotest.class} to map #{@specs.inspect} to #{@file.inspect}\ngot #{@actual.inspect}"
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
private
|
|
24
|
-
|
|
25
|
-
def prepare(autotest)
|
|
26
|
-
find_order = @specs.dup << @file
|
|
27
|
-
autotest.instance_eval { @find_order = find_order }
|
|
28
|
-
autotest
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
def map_specs(specs)
|
|
34
|
-
AutotestMappingMatcher.new(specs)
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
end
|
|
38
|
-
end
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
require 'autotest/autotest_helper'
|
|
2
|
-
|
|
3
|
-
describe "failed_results_re" do
|
|
4
|
-
it "should match a failure" do
|
|
5
|
-
re = Autotest::Rspec.new.failed_results_re
|
|
6
|
-
re =~ "1)\n'this example' FAILED\nreason\n/path.rb:37:\n\n"
|
|
7
|
-
$1.should == "this example"
|
|
8
|
-
$2.should == "reason\n/path.rb:37:"
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
it "should match a failure when matcher outputs multiple lines" do
|
|
12
|
-
re = Autotest::Rspec.new.failed_results_re
|
|
13
|
-
re =~ "1)\n'other example' FAILED\n\nreason line 1\nreason line 2\n\n(additional info)\n/path.rb:37:\n\n"
|
|
14
|
-
$1.should == "other example"
|
|
15
|
-
$2.should == "reason line 1\nreason line 2\n\n(additional info)\n/path.rb:37:"
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
it "should match an Error" do
|
|
19
|
-
re = Autotest::Rspec.new.failed_results_re
|
|
20
|
-
re =~ "1)\nRuntimeError in 'this example'\nreason\n/path.rb:37:\n\n"
|
|
21
|
-
$1.should == "this example"
|
|
22
|
-
$2.should == "reason\n/path.rb:37:"
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
it "should match an Error that doesn't end in Error" do
|
|
26
|
-
re = Autotest::Rspec.new.failed_results_re
|
|
27
|
-
re =~ "1)\nInvalidArgument in 'this example'\nreason\n/path.rb:37:\n\n"
|
|
28
|
-
$1.should == "this example"
|
|
29
|
-
$2.should == "reason\n/path.rb:37:"
|
|
30
|
-
end
|
|
31
|
-
end
|
data/spec/autotest/rspec_spec.rb
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
require 'autotest/autotest_helper'
|
|
2
|
-
|
|
3
|
-
describe Autotest::Rspec do
|
|
4
|
-
describe "adding spec.opts --options" do
|
|
5
|
-
before(:each) do
|
|
6
|
-
@rspec_autotest = Autotest::Rspec.new
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
it "should return the command line option to add spec.opts if the options file exists" do
|
|
10
|
-
File.stub!(:exist?).and_return true
|
|
11
|
-
@rspec_autotest.add_options_if_present.should == "-O spec/spec.opts "
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
it "should return an empty string if no spec.opts exists" do
|
|
15
|
-
File.stub!(:exist?).and_return false
|
|
16
|
-
Autotest::Rspec.new.add_options_if_present.should == ""
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
describe "commands" do
|
|
21
|
-
before(:each) do
|
|
22
|
-
@rspec_autotest = Autotest::Rspec.new
|
|
23
|
-
@rspec_autotest.stub!(:ruby).and_return "ruby"
|
|
24
|
-
@rspec_autotest.stub!(:add_options_if_present).and_return "-O spec/spec.opts"
|
|
25
|
-
|
|
26
|
-
@ruby = @rspec_autotest.ruby
|
|
27
|
-
@spec_cmd = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'bin', 'spec'))
|
|
28
|
-
@options = @rspec_autotest.add_options_if_present
|
|
29
|
-
files = %w[file_one file_two]
|
|
30
|
-
@files_to_test = {
|
|
31
|
-
files[0] => [],
|
|
32
|
-
files[1] => []
|
|
33
|
-
}
|
|
34
|
-
# this is not the inner representation of Autotest!
|
|
35
|
-
@rspec_autotest.files_to_test = @files_to_test
|
|
36
|
-
@to_test = files.map { |f| File.expand_path(f) }.join ' '
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
it "should make the appropriate test command" do
|
|
40
|
-
cmd = @rspec_autotest.make_test_cmd(@files_to_test)
|
|
41
|
-
(cmd =~ /#{@ruby} #{@spec_cmd} --autospec (.*) #{@options}/).should be_true
|
|
42
|
-
$1.should =~ /#{File.expand_path('file_one')}/
|
|
43
|
-
$1.should =~ /#{File.expand_path('file_two')}/
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
it "should return a blank command for no files" do
|
|
47
|
-
@rspec_autotest.make_test_cmd({}).should == ''
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
describe "mappings" do
|
|
52
|
-
|
|
53
|
-
before(:each) do
|
|
54
|
-
@lib_file = "lib/something.rb"
|
|
55
|
-
@spec_file = "spec/something_spec.rb"
|
|
56
|
-
@rspec_autotest = Autotest::Rspec.new
|
|
57
|
-
@rspec_autotest.hook :initialize
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
it "should find the spec file for a given lib file" do
|
|
61
|
-
@rspec_autotest.should map_specs([@spec_file]).to(@lib_file)
|
|
62
|
-
end
|
|
63
|
-
|
|
64
|
-
it "should find the spec file if given a spec file" do
|
|
65
|
-
@rspec_autotest.should map_specs([@spec_file]).to(@spec_file)
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
it "should ignore files in spec dir that aren't specs" do
|
|
69
|
-
@rspec_autotest.should map_specs([]).to("spec/spec_helper.rb")
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
it "should ignore untracked files (in @file)" do
|
|
73
|
-
@rspec_autotest.should map_specs([]).to("lib/untracked_file")
|
|
74
|
-
end
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
describe "consolidating failures" do
|
|
78
|
-
before(:each) do
|
|
79
|
-
@rspec_autotest = Autotest::Rspec.new
|
|
80
|
-
|
|
81
|
-
@spec_file = "spec/autotest/some_spec.rb"
|
|
82
|
-
@rspec_autotest.instance_variable_set("@files", {@spec_file => Time.now})
|
|
83
|
-
@rspec_autotest.stub!(:find_files_to_test).and_return true
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
it "should return no failures if no failures were given in the output" do
|
|
87
|
-
@rspec_autotest.consolidate_failures([[]]).should == {}
|
|
88
|
-
end
|
|
89
|
-
|
|
90
|
-
it "should return a hash with the spec filename => spec name for each failure or error" do
|
|
91
|
-
@rspec_autotest.stub!(:test_files_for).and_return "spec/autotest/some_spec.rb"
|
|
92
|
-
failures = [
|
|
93
|
-
[
|
|
94
|
-
"false should be false",
|
|
95
|
-
"expected: true,\n got: false (using ==)\n#{@spec_file}:203:"
|
|
96
|
-
]
|
|
97
|
-
]
|
|
98
|
-
@rspec_autotest.consolidate_failures(failures).should == {
|
|
99
|
-
@spec_file => ["false should be false"]
|
|
100
|
-
}
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
it "should not include the subject file" do
|
|
104
|
-
subject_file = "lib/autotest/some.rb"
|
|
105
|
-
@rspec_autotest.stub!(:test_files_for).and_return "spec/autotest/some_spec.rb"
|
|
106
|
-
failures = [
|
|
107
|
-
[
|
|
108
|
-
"false should be false",
|
|
109
|
-
"expected: true,\n got: false (using ==)\n#{subject_file}:143:\n#{@spec_file}:203:"
|
|
110
|
-
]
|
|
111
|
-
]
|
|
112
|
-
@rspec_autotest.consolidate_failures(failures).keys.should_not include(subject_file)
|
|
113
|
-
end
|
|
114
|
-
end
|
|
115
|
-
|
|
116
|
-
describe "normalizing file names" do
|
|
117
|
-
it "should ensure that a single file appears in files_to_test only once" do
|
|
118
|
-
@rspec_autotest = Autotest::Rspec.new
|
|
119
|
-
@files_to_test = {}
|
|
120
|
-
['filename.rb', './filename.rb', File.expand_path('filename.rb')].each do |file|
|
|
121
|
-
@files_to_test[file] = []
|
|
122
|
-
end
|
|
123
|
-
@rspec_autotest.normalize(@files_to_test).should have(1).file
|
|
124
|
-
end
|
|
125
|
-
end
|
|
126
|
-
end
|
data/spec/ruby_forker.rb
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
require 'rbconfig'
|
|
2
|
-
|
|
3
|
-
module RubyForker
|
|
4
|
-
# Forks a ruby interpreter with same type as ourself.
|
|
5
|
-
# juby will fork jruby, ruby will fork ruby etc.
|
|
6
|
-
def ruby(args, stderr=nil)
|
|
7
|
-
config = ::Config::CONFIG
|
|
8
|
-
interpreter = File::join(config['bindir'], config['ruby_install_name']) + config['EXEEXT']
|
|
9
|
-
cmd = "#{interpreter} #{args}"
|
|
10
|
-
cmd << " 2> #{stderr}" unless stderr.nil?
|
|
11
|
-
`#{cmd}`
|
|
12
|
-
end
|
|
13
|
-
end
|
data/spec/spec/dsl/main_spec.rb
DELETED
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module DSL
|
|
5
|
-
describe Main do
|
|
6
|
-
before(:each) do
|
|
7
|
-
@main = Class.new do; include Spec::DSL::Main; end
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
[:describe, :context].each do |method|
|
|
11
|
-
describe "##{method}" do
|
|
12
|
-
it "should delegate to Spec::Example::ExampleGroupFactory.create_example_group" do
|
|
13
|
-
block = lambda {|a,b|}
|
|
14
|
-
Spec::Example::ExampleGroupFactory.should_receive(:create_example_group).with(
|
|
15
|
-
"The ExampleGroup", hash_including(:location), &block
|
|
16
|
-
)
|
|
17
|
-
@main.__send__ method, "The ExampleGroup", &block
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
it "raises with no description" do
|
|
21
|
-
block = lambda {|a,b|}
|
|
22
|
-
lambda do
|
|
23
|
-
@main.__send__ method, &block
|
|
24
|
-
end.should raise_error(ArgumentError, /No description supplied for example group declared on #{__FILE__}:#{__LINE__ - 1}/)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
[:share_examples_for, :shared_examples_for].each do |method|
|
|
30
|
-
describe "##{method}" do
|
|
31
|
-
it "should create a shared ExampleGroup" do
|
|
32
|
-
block = lambda {|a,b|}
|
|
33
|
-
Spec::Example::ExampleGroupFactory.should_receive(:create_shared_example_group).with(
|
|
34
|
-
"shared group", hash_including(:location), &block
|
|
35
|
-
)
|
|
36
|
-
@main.__send__ method, "shared group", &block
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
describe "#describe; with RUBY_VERSION = 1.9" do
|
|
42
|
-
it "includes an enclosing module into the block's scope" do
|
|
43
|
-
Spec::Ruby.stub!(:version).and_return("1.9")
|
|
44
|
-
|
|
45
|
-
module Foo; module Bar; end; end
|
|
46
|
-
|
|
47
|
-
Foo::Bar.should_receive(:included).with do |*args|
|
|
48
|
-
included_by = args.last
|
|
49
|
-
included_by.description.should == "this example group"
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
module Foo
|
|
53
|
-
module Bar
|
|
54
|
-
describe("this example group") do; end
|
|
55
|
-
end
|
|
56
|
-
end
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
describe "#share_as" do
|
|
62
|
-
def self.next_group_name
|
|
63
|
-
@group_number ||= 0
|
|
64
|
-
@group_number += 1
|
|
65
|
-
"Group#{@group_number}"
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
def group_name
|
|
69
|
-
@group_name ||= self.class.next_group_name
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
it "registers a shared ExampleGroup" do
|
|
73
|
-
block = lambda {|a,b|}
|
|
74
|
-
Spec::Example::ExampleGroupFactory.should_receive(:create_shared_example_group).with(
|
|
75
|
-
group_name, hash_including(:location), &block
|
|
76
|
-
)
|
|
77
|
-
@main.share_as group_name, &block
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
it "creates a constant that points to a Module" do
|
|
81
|
-
group = @main.share_as group_name do end
|
|
82
|
-
Object.const_get(group_name).should equal(group)
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
it "complains if you pass it a not-constantizable name" do
|
|
86
|
-
lambda do
|
|
87
|
-
@group = @main.share_as "Non Constant" do end
|
|
88
|
-
end.should raise_error(NameError, /The first argument to share_as must be a legal name for a constant/)
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
end
|
|
92
|
-
end
|
|
93
|
-
end
|
|
94
|
-
end
|
|
95
|
-
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module Example
|
|
5
|
-
class ExampleGroupSubclass < ExampleGroup
|
|
6
|
-
class << self
|
|
7
|
-
attr_accessor :examples_ran
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
@@class_variable = :class_variable
|
|
11
|
-
CONSTANT = :constant
|
|
12
|
-
|
|
13
|
-
before(:each) do
|
|
14
|
-
@instance_variable = :instance_variable
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
after(:all) do
|
|
18
|
-
self.class.examples_ran = true
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def a_method
|
|
22
|
-
22
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
it "can access instance variables defined before(:each)" do
|
|
26
|
-
@instance_variable.should == :instance_variable
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
it "can access class variables (Ruby 1.8 only)" do
|
|
30
|
-
with_ruby 1.8 do
|
|
31
|
-
@@class_variable.should == :class_variable
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
it "can access constants" do
|
|
36
|
-
CONSTANT.should == :constant
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
it "can access methods defined in the Example Group" do
|
|
40
|
-
a_method.should == 22
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
describe ExampleGroupSubclass do
|
|
46
|
-
it "should run" do
|
|
47
|
-
ExampleGroupSubclass.examples_ran.should be_true
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
end
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
module Spec
|
|
4
|
-
module Example
|
|
5
|
-
describe ExampleGroupFactory do
|
|
6
|
-
describe "#get" do
|
|
7
|
-
attr_reader :example_group
|
|
8
|
-
before(:each) do
|
|
9
|
-
@example_group_class = Class.new(ExampleGroupDouble)
|
|
10
|
-
ExampleGroupFactory.register(:registered_type, @example_group_class)
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
after(:each) do
|
|
14
|
-
ExampleGroupFactory.reset
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
it "should return the default ExampleGroup type for nil" do
|
|
18
|
-
ExampleGroupFactory[nil].should == ExampleGroup
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
it "should return the default ExampleGroup for an unregistered non-nil value" do
|
|
22
|
-
ExampleGroupFactory[:does_not_exist].should == ExampleGroup
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
it "should return custom type if registered" do
|
|
26
|
-
ExampleGroupFactory[:registered_type].should == @example_group_class
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
it "should get the custom type after setting the default" do
|
|
30
|
-
@alternate_example_group_class = Class.new(ExampleGroupDouble)
|
|
31
|
-
ExampleGroupFactory.default(@alternate_example_group_class)
|
|
32
|
-
ExampleGroupFactory[:registered_type].should == @example_group_class
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
describe "#create_example_group" do
|
|
37
|
-
attr_reader :parent_example_group
|
|
38
|
-
before do
|
|
39
|
-
@parent_example_group = Class.new(ExampleGroupDouble) do
|
|
40
|
-
def initialize(*args, &block)
|
|
41
|
-
;
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
it "should create a uniquely named class" do
|
|
47
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group("example_group") {}
|
|
48
|
-
example_group.name.should =~ /Spec::Example::ExampleGroup::Subclass_\d+/
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
it "should create a Spec::Example::Example subclass by default" do
|
|
52
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group("example_group") {}
|
|
53
|
-
example_group.superclass.should == Spec::Example::ExampleGroup
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
it "should raise when no description is given" do
|
|
57
|
-
lambda {
|
|
58
|
-
Spec::Example::ExampleGroupFactory.create_example_group do; end
|
|
59
|
-
}.should raise_error(ArgumentError)
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
it "should raise when no block is given" do
|
|
63
|
-
lambda { Spec::Example::ExampleGroupFactory.create_example_group "foo" }.should raise_error(ArgumentError)
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
it "should run registered ExampleGroups" do
|
|
67
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group "The ExampleGroup" do end
|
|
68
|
-
Spec::Runner.options.example_groups.should include(example_group)
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
it "should not run unregistered ExampleGroups" do
|
|
72
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group "The ExampleGroup" do Spec::Runner.options.remove_example_group self; end
|
|
73
|
-
Spec::Runner.options.example_groups.should_not include(example_group)
|
|
74
|
-
end
|
|
75
|
-
|
|
76
|
-
describe "with :type => :default" do
|
|
77
|
-
it "should create a Spec::Example::ExampleGroup" do
|
|
78
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
79
|
-
"example_group", :type => :default
|
|
80
|
-
) {}
|
|
81
|
-
example_group.superclass.should == Spec::Example::ExampleGroup
|
|
82
|
-
end
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
describe "with :type => :something_other_than_default" do
|
|
86
|
-
it "should create the specified type" do
|
|
87
|
-
Spec::Example::ExampleGroupFactory.register(:something_other_than_default, parent_example_group)
|
|
88
|
-
non_default_example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
89
|
-
"example_group", :type => :something_other_than_default
|
|
90
|
-
) {}
|
|
91
|
-
non_default_example_group.superclass.should == parent_example_group
|
|
92
|
-
end
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
it "should create a type indicated by :location" do
|
|
96
|
-
Spec::Example::ExampleGroupFactory.register(:something_other_than_default, parent_example_group)
|
|
97
|
-
custom_example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
98
|
-
"example_group", :location => "./spec/something_other_than_default/some_spec.rb"
|
|
99
|
-
) {}
|
|
100
|
-
custom_example_group.superclass.should == parent_example_group
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
it "should create a type indicated by :location (with location generated by caller on windows)" do
|
|
104
|
-
Spec::Example::ExampleGroupFactory.register(:something_other_than_default, parent_example_group)
|
|
105
|
-
custom_example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
106
|
-
"example_group",
|
|
107
|
-
:location => "./spec\\something_other_than_default\\some_spec.rb"
|
|
108
|
-
) {}
|
|
109
|
-
custom_example_group.superclass.should == parent_example_group
|
|
110
|
-
end
|
|
111
|
-
|
|
112
|
-
it "should create a type indicated by location for a path-like key" do
|
|
113
|
-
Spec::Example::ExampleGroupFactory.register('path/to/custom/', parent_example_group)
|
|
114
|
-
custom_example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
115
|
-
"example_group", :location => "./spec/path/to/custom/some_spec.rb"
|
|
116
|
-
) {}
|
|
117
|
-
custom_example_group.superclass.should == parent_example_group
|
|
118
|
-
end
|
|
119
|
-
|
|
120
|
-
it "should use the longest key that matches when creating a type indicated by location" do
|
|
121
|
-
longer = Class.new parent_example_group
|
|
122
|
-
Spec::Example::ExampleGroupFactory.register(:longer, longer)
|
|
123
|
-
long = Class.new parent_example_group
|
|
124
|
-
Spec::Example::ExampleGroupFactory.register(:long, long)
|
|
125
|
-
custom_example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
126
|
-
"example_group", :location => "./spec/longer/some_spec.rb"
|
|
127
|
-
) {}
|
|
128
|
-
custom_example_group.superclass.should == longer
|
|
129
|
-
end
|
|
130
|
-
|
|
131
|
-
describe "with :shared => true" do
|
|
132
|
-
def shared_example_group
|
|
133
|
-
@shared_example_group ||= Spec::Example::ExampleGroupFactory.create_example_group(
|
|
134
|
-
"name", :location => '/blah/spec/models/blah.rb', :type => :controller, :shared => true
|
|
135
|
-
) {}
|
|
136
|
-
end
|
|
137
|
-
|
|
138
|
-
it "should create and register a Spec::Example::SharedExampleGroup" do
|
|
139
|
-
shared_example_group.should be_an_instance_of(Spec::Example::SharedExampleGroup)
|
|
140
|
-
SharedExampleGroup.should include(shared_example_group)
|
|
141
|
-
end
|
|
142
|
-
end
|
|
143
|
-
|
|
144
|
-
it "should favor the :type over the :location" do
|
|
145
|
-
Spec::Example::ExampleGroupFactory.register(:something_other_than_default, parent_example_group)
|
|
146
|
-
custom_example_group = Spec::Example::ExampleGroupFactory.create_example_group(
|
|
147
|
-
"name", :location => '/blah/spec/models/blah.rb', :type => :something_other_than_default
|
|
148
|
-
) {}
|
|
149
|
-
custom_example_group.superclass.should == parent_example_group
|
|
150
|
-
end
|
|
151
|
-
|
|
152
|
-
it "should register ExampleGroup by default" do
|
|
153
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group("The ExampleGroup") do
|
|
154
|
-
end
|
|
155
|
-
Spec::Runner.options.example_groups.should include(example_group)
|
|
156
|
-
end
|
|
157
|
-
|
|
158
|
-
it "should enable unregistering of ExampleGroups" do
|
|
159
|
-
example_group = Spec::Example::ExampleGroupFactory.create_example_group("The ExampleGroup") do
|
|
160
|
-
Spec::Runner.options.remove_example_group self
|
|
161
|
-
end
|
|
162
|
-
Spec::Runner.options.example_groups.should_not include(example_group)
|
|
163
|
-
end
|
|
164
|
-
|
|
165
|
-
after(:each) do
|
|
166
|
-
Spec::Example::ExampleGroupFactory.reset
|
|
167
|
-
end
|
|
168
|
-
end
|
|
169
|
-
|
|
170
|
-
describe "#create_shared_example_group" do
|
|
171
|
-
it "registers a new shared example group" do
|
|
172
|
-
shared_example_group = Spec::Example::ExampleGroupFactory.create_shared_example_group("something shared") {}
|
|
173
|
-
shared_example_group.should be_an_instance_of(Spec::Example::SharedExampleGroup)
|
|
174
|
-
SharedExampleGroup.should include(shared_example_group)
|
|
175
|
-
end
|
|
176
|
-
end
|
|
177
|
-
|
|
178
|
-
end
|
|
179
|
-
end
|
|
180
|
-
end
|