has_finder 0.1.1
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/History.txt +4 -0
- data/License.txt +20 -0
- data/Manifest.txt +431 -0
- data/README.txt +1 -0
- data/Rakefile +4 -0
- data/config/hoe.rb +70 -0
- data/config/requirements.rb +17 -0
- data/lib/has_finder.rb +1 -0
- data/lib/has_finder/has_finder.rb +84 -0
- data/lib/has_finder/metaid.rb +15 -0
- data/lib/has_finder/version.rb +9 -0
- data/log/debug.log +0 -0
- data/nbproject/private/private.xml +4 -0
- data/nbproject/private/rake-t.txt +1 -0
- data/nbproject/project.properties +4 -0
- data/nbproject/project.xml +15 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/setup.rb +1585 -0
- data/spec/rails/README +182 -0
- data/spec/rails/Rakefile +10 -0
- data/spec/rails/app/controllers/application.rb +7 -0
- data/spec/rails/app/helpers/application_helper.rb +3 -0
- data/spec/rails/app/models/being.rb +3 -0
- data/spec/rails/config/boot.rb +45 -0
- data/spec/rails/config/database.yml +36 -0
- data/spec/rails/config/environment.rb +62 -0
- data/spec/rails/config/environments/development.rb +21 -0
- data/spec/rails/config/environments/production.rb +18 -0
- data/spec/rails/config/environments/test.rb +19 -0
- data/spec/rails/config/routes.rb +23 -0
- data/spec/rails/db/migrate/001_create_beings.rb +12 -0
- data/spec/rails/db/schema.rb +17 -0
- data/spec/rails/doc/README_FOR_APP +2 -0
- data/spec/rails/log/development.log +432 -0
- data/spec/rails/log/production.log +0 -0
- data/spec/rails/log/server.log +0 -0
- data/spec/rails/log/test.log +5820 -0
- data/spec/rails/nbproject/private/config.properties +0 -0
- data/spec/rails/nbproject/private/private.properties +1 -0
- data/spec/rails/nbproject/private/rake-t.txt +54 -0
- data/spec/rails/nbproject/project.properties +4 -0
- data/spec/rails/nbproject/project.xml +9 -0
- data/spec/rails/previous_failures.txt +0 -0
- data/spec/rails/public/404.html +30 -0
- data/spec/rails/public/500.html +30 -0
- data/spec/rails/public/dispatch.cgi +10 -0
- data/spec/rails/public/dispatch.fcgi +24 -0
- data/spec/rails/public/dispatch.rb +10 -0
- data/spec/rails/public/favicon.ico +0 -0
- data/spec/rails/public/images/rails.png +0 -0
- data/spec/rails/public/index.html +277 -0
- data/spec/rails/public/javascripts/application.js +2 -0
- data/spec/rails/public/javascripts/controls.js +833 -0
- data/spec/rails/public/javascripts/dragdrop.js +942 -0
- data/spec/rails/public/javascripts/effects.js +1088 -0
- data/spec/rails/public/javascripts/prototype.js +2515 -0
- data/spec/rails/public/robots.txt +1 -0
- data/spec/rails/script/about +3 -0
- data/spec/rails/script/breakpointer +3 -0
- data/spec/rails/script/console +3 -0
- data/spec/rails/script/destroy +3 -0
- data/spec/rails/script/generate +3 -0
- data/spec/rails/script/performance/benchmarker +3 -0
- data/spec/rails/script/performance/profiler +3 -0
- data/spec/rails/script/plugin +3 -0
- data/spec/rails/script/process/inspector +3 -0
- data/spec/rails/script/process/reaper +3 -0
- data/spec/rails/script/process/spawner +3 -0
- data/spec/rails/script/runner +3 -0
- data/spec/rails/script/server +3 -0
- data/spec/rails/script/spec +4 -0
- data/spec/rails/script/spec_server +45 -0
- data/spec/rails/spec/fixtures/beings.yml +12 -0
- data/spec/rails/spec/models/being_spec.rb +98 -0
- data/spec/rails/spec/spec.opts +6 -0
- data/spec/rails/spec/spec_helper.rb +15 -0
- data/spec/rails/test/test_helper.rb +28 -0
- data/spec/rails/tmp/sessions/ruby_sess.5edc9bf3b65456d0 +0 -0
- data/spec/rails/vendor/plugins/rspec/CHANGES +797 -0
- data/spec/rails/vendor/plugins/rspec/MIT-LICENSE +20 -0
- data/spec/rails/vendor/plugins/rspec/README +70 -0
- data/spec/rails/vendor/plugins/rspec/Rakefile +304 -0
- data/spec/rails/vendor/plugins/rspec/UPGRADE +31 -0
- data/spec/rails/vendor/plugins/rspec/bin/spec +3 -0
- data/spec/rails/vendor/plugins/rspec/bin/spec_translator +8 -0
- data/spec/rails/vendor/plugins/rspec/examples/auto_spec_description_example.rb +19 -0
- data/spec/rails/vendor/plugins/rspec/examples/before_and_after_example.rb +39 -0
- data/spec/rails/vendor/plugins/rspec/examples/behave_as_example.rb +45 -0
- data/spec/rails/vendor/plugins/rspec/examples/custom_expectation_matchers.rb +54 -0
- data/spec/rails/vendor/plugins/rspec/examples/custom_formatter.rb +11 -0
- data/spec/rails/vendor/plugins/rspec/examples/dynamic_spec.rb +9 -0
- data/spec/rails/vendor/plugins/rspec/examples/file_accessor.rb +18 -0
- data/spec/rails/vendor/plugins/rspec/examples/file_accessor_spec.rb +38 -0
- data/spec/rails/vendor/plugins/rspec/examples/greeter_spec.rb +30 -0
- data/spec/rails/vendor/plugins/rspec/examples/helper_method_example.rb +11 -0
- data/spec/rails/vendor/plugins/rspec/examples/io_processor.rb +8 -0
- data/spec/rails/vendor/plugins/rspec/examples/io_processor_spec.rb +21 -0
- data/spec/rails/vendor/plugins/rspec/examples/legacy_spec.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/examples/mocking_example.rb +27 -0
- data/spec/rails/vendor/plugins/rspec/examples/multi_threaded_behaviour_runner.rb +25 -0
- data/spec/rails/vendor/plugins/rspec/examples/not_yet_implemented_spec.rb +12 -0
- data/spec/rails/vendor/plugins/rspec/examples/partial_mock_example.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/examples/predicate_example.rb +27 -0
- data/spec/rails/vendor/plugins/rspec/examples/priority.txt +1 -0
- data/spec/rails/vendor/plugins/rspec/examples/shared_behaviours_example.rb +39 -0
- data/spec/rails/vendor/plugins/rspec/examples/spec_helper.rb +1 -0
- data/spec/rails/vendor/plugins/rspec/examples/stack.rb +36 -0
- data/spec/rails/vendor/plugins/rspec/examples/stack_spec.rb +97 -0
- data/spec/rails/vendor/plugins/rspec/examples/stubbing_example.rb +69 -0
- data/spec/rails/vendor/plugins/rspec/examples/test_case_adapter_example.rb +26 -0
- data/spec/rails/vendor/plugins/rspec/examples/test_case_spec.rb +65 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/diffing_spec.rb +36 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/failure_in_setup.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/failure_in_teardown.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/mocking_example.rb +33 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/mocking_with_flexmock.rb +26 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/mocking_with_mocha.rb +25 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/partial_mock_example.rb +20 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/predicate_example.rb +29 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/raising_example.rb +47 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/spec_helper.rb +1 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/syntax_error_example.rb +7 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/team_spec.rb +46 -0
- data/spec/rails/vendor/plugins/rspec/failing_examples/timeout_behaviour.rb +7 -0
- data/spec/rails/vendor/plugins/rspec/init.rb +3 -0
- data/spec/rails/vendor/plugins/rspec/lib/autotest/discover.rb +3 -0
- data/spec/rails/vendor/plugins/rspec/lib/autotest/rspec.rb +67 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec.rb +13 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour.rb +210 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour_callbacks.rb +78 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour_eval.rb +220 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/behaviour_factory.rb +42 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/composite_proc_builder.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/configuration.rb +119 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/description.rb +69 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/example.rb +127 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/example_matcher.rb +40 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/dsl/example_should_raise_handler.rb +74 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations.rb +56 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/differs/default.rb +61 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/errors.rb +6 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/extensions.rb +2 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/extensions/object.rb +66 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/expectations/handler.rb +43 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/extensions.rb +1 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/extensions/object.rb +6 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers.rb +166 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/be.rb +206 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/be_close.rb +37 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/change.rb +120 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/eql.rb +43 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/equal.rb +43 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/has.rb +44 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/have.rb +145 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/include.rb +70 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/match.rb +41 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/operator_matcher.rb +72 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/raise_error.rb +100 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/respond_to.rb +45 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/satisfy.rb +47 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/matchers/throw_symbol.rb +72 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks.rb +208 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/argument_constraint_matchers.rb +27 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/argument_expectation.rb +183 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/error_generator.rb +84 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/errors.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/extensions/object.rb +3 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/message_expectation.rb +231 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/methods.rb +35 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/mock.rb +29 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/order_group.rb +29 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/proxy.rb +163 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/space.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/mocks/spec_methods.rb +30 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/rake/spectask.rb +175 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/rake/verify_rcov.rb +52 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner.rb +165 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/backtrace_tweaker.rb +56 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/behaviour_runner.rb +102 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/command_line.rb +22 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/drb_command_line.rb +21 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/extensions/kernel.rb +50 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/extensions/object.rb +32 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter.rb +9 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/base_formatter.rb +68 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/base_text_formatter.rb +102 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/failing_behaviours_formatter.rb +25 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/failing_examples_formatter.rb +22 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/html_formatter.rb +316 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/progress_bar_formatter.rb +30 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/rdoc_formatter.rb +24 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/formatter/specdoc_formatter.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/heckle_runner.rb +72 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/heckle_runner_unsupported.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/option_parser.rb +226 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/options.rb +158 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/reporter.rb +114 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/runner/spec_parser.rb +50 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/test_case_adapter.rb +10 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/translator.rb +106 -0
- data/spec/rails/vendor/plugins/rspec/lib/spec/version.rb +22 -0
- data/spec/rails/vendor/plugins/rspec/plugins/mock_frameworks/flexmock.rb +27 -0
- data/spec/rails/vendor/plugins/rspec/plugins/mock_frameworks/mocha.rb +21 -0
- data/spec/rails/vendor/plugins/rspec/plugins/mock_frameworks/rspec.rb +18 -0
- data/spec/rails/vendor/plugins/rspec/rake_tasks/examples.rake +7 -0
- data/spec/rails/vendor/plugins/rspec/rake_tasks/examples_specdoc.rake +9 -0
- data/spec/rails/vendor/plugins/rspec/rake_tasks/examples_with_rcov.rake +9 -0
- data/spec/rails/vendor/plugins/rspec/rake_tasks/failing_examples_with_html.rake +9 -0
- data/spec/rails/vendor/plugins/rspec/rake_tasks/verify_rcov.rake +7 -0
- data/spec/rails/vendor/plugins/rspec/spec.opts +13 -0
- data/spec/rails/vendor/plugins/rspec/spec/README.jruby +14 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/behaviour_eval_spec.rb +49 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/behaviour_factory_spec.rb +30 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/behaviour_spec.rb +624 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/composite_proc_builder_spec.rb +57 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/configuration_spec.rb +50 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/description_spec.rb +81 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/example_class_spec.rb +24 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/example_instance_spec.rb +162 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/example_should_raise_spec.rb +137 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/predicate_matcher_spec.rb +21 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/dsl/shared_behaviour_spec.rb +228 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/expectations/differs/default_spec.rb +107 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/expectations/extensions/object_spec.rb +46 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/expectations/fail_with_spec.rb +71 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/be_close_spec.rb +39 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/be_spec.rb +209 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/change_spec.rb +232 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/description_generation_spec.rb +159 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/eql_spec.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/equal_spec.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/exist_spec.rb +48 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/handler_spec.rb +88 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/has_spec.rb +37 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/have_spec.rb +272 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/include_spec.rb +45 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/match_spec.rb +37 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/matcher_methods_spec.rb +78 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/mock_constraint_matchers_spec.rb +24 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/operator_matcher_spec.rb +158 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/raise_error_spec.rb +147 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/respond_to_spec.rb +54 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/satisfy_spec.rb +36 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/matchers/throw_symbol_spec.rb +51 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/any_number_of_times_spec.rb +29 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/argument_expectation_spec.rb +19 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/at_least_spec.rb +97 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/at_most_spec.rb +93 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_7611_spec.rb +19 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_7805_spec.rb +22 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_8165_spec.rb +31 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/bug_report_8302_spec.rb +26 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +114 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/mock_ordering_spec.rb +84 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/mock_space_spec.rb +54 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/mock_spec.rb +377 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/multiple_return_value_spec.rb +113 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/null_object_mock_spec.rb +40 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/once_counts_spec.rb +53 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/options_hash_spec.rb +33 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/partial_mock_spec.rb +52 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +66 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +148 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/precise_counts_spec.rb +52 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/record_messages_spec.rb +26 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/stub_spec.rb +159 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/mocks/twice_counts_spec.rb +67 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/package/bin_spec_spec.rb +12 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/behaviour_runner_spec.rb +206 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/command_line_spec.rb +33 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/context_matching_spec.rb +27 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/drb_command_line_spec.rb +81 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/empty_file.txt +0 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/example_matcher_spec.rb +127 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/examples.txt +2 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/execution_context_spec.rb +31 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/extensions/kernel_spec.rb +36 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/failed.txt +3 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/failing_behaviours_formatter_spec.rb +27 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +28 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.4.html +333 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +344 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5.html +338 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6.html +338 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatter_spec.rb +56 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_dry_run_spec.rb +21 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_failure_dump_spec.rb +36 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +78 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_dry_run_spec.rb +19 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_spec.rb +46 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/snippet_extractor_spec.rb +11 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_dry_run_spec.rb +21 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_spec.rb +56 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/heckle_runner_spec.rb +63 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/heckler_spec.rb +14 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +45 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/object_ext_spec.rb +11 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/option_parser_spec.rb +348 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/options_spec.rb +142 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +56 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/reporter_spec.rb +153 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/spec.opts +2 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/spec_parser_spec.rb +93 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/runner/spec_spaced.opts +2 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/spec_classes.rb +111 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec/translator_spec.rb +216 -0
- data/spec/rails/vendor/plugins/rspec/spec/spec_helper.rb +43 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/MIT-LICENSE +31 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/README +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/Rakefile +9 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/CHANGES +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/rspec_generator.rb +31 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/previous_failures.txt +0 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec +4 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/script/spec_server +45 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec.opts +6 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec/templates/spec_helper.rb +26 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/USAGE +33 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/rspec_controller_generator.rb +42 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/controller_spec.rb +23 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/helper_spec.rb +11 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_controller/templates/view_spec.rb +12 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_model/USAGE +18 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_model/rspec_model_generator.rb +30 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_model/templates/model_spec.rb +11 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +161 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/controller_spec.rb +303 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/edit_erb_spec.rb +25 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/helper_spec.rb +4 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/index_erb_spec.rb +22 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/new_erb_spec.rb +26 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/generators/rspec_scaffold/templates/show_erb_spec.rb +22 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/init.rb +9 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/autotest/rails_rspec.rb +81 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/dsl.rb +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/dsl/configuration.rb +23 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/matchers.rb +3 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/matchers/have.rb +12 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails.rb +57 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl.rb +40 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/assigns_hash_proxy.rb +42 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour.rb +8 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/base.rb +82 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/controller.rb +246 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/functional.rb +90 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/helper.rb +100 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/model.rb +21 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/behaviour/view.rb +185 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/dsl/ivar_proxy.rb +62 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions.rb +7 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/base.rb +11 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/rescue.rb +10 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_controller/test_response.rb +5 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/action_view/base.rb +26 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb +29 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/object.rb +5 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers.rb +29 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/assert_select.rb +131 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/have_text.rb +55 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/redirect_to.rb +106 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/matchers/render_template.rb +63 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/version.rb +26 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/assigns_hash_proxy_spec.rb +55 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/behaviour_factory_spec.rb +53 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/controller_isolation_spec.rb +43 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/controller_spec_spec.rb +124 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/helper_spec_spec.rb +62 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/ivar_proxy_spec.rb +64 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/model_spec_spec.rb +14 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/shared_behaviour_spec.rb +16 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/test_unit_assertion_accessibility_spec.rb +28 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/dsl/view_spec_spec.rb +165 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/extensions/active_record_spec.rb +17 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/assert_select_spec.rb +718 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/description_generation_spec.rb +42 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/redirect_to_spec.rb +183 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/rails/matchers/render_spec.rb +112 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec/spec_helper.rb +40 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/controller_spec_controller.rb +36 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/redirect_spec_controller.rb +59 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/render_spec_controller.rb +18 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/controllers/rjs_spec_controller.rb +58 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/explicit_helper.rb +10 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/more_explicit_helper.rb +5 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/plugin_application_helper.rb +6 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/helpers/view_spec_helper.rb +13 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/_a_partial.rhtml +0 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_after_session_reset.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_flash_before_session_reset.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_setting_the_assigns_hash.rhtml +0 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_errors_in_template.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/controller_spec/action_with_template.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/_a_partial.rhtml +0 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.js.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rhtml +0 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/render_spec/some_action.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/_replacement_partial.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_div.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/hide_page_element.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/insert_html.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/replace_html_with_partial.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_effect.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/rjs_spec/visual_toggle_effect.rjs +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/no_tags.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_no_attributes.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/tag_spec/single_div_with_one_attribute.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_included_partial.rhtml +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_included_partial_collection_with_spacer_template.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_partial_with_local_variable.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/_spacer.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/accessor.rhtml +3 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/entry_form.rhtml +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/explicit_helper.rhtml +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/multiple_helpers.rhtml +3 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/partial_collection_including_template.rhtml +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/partial_including_template.rhtml +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/partial_with_array.rhtml +1 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/spec_resources/views/view_spec/show.rhtml +2 -0
- data/spec/rails/vendor/plugins/rspec_on_rails/tasks/rspec.rake +90 -0
- data/tasks/deployment.rake +27 -0
- data/tasks/environment.rake +7 -0
- data/tasks/website.rake +9 -0
- data/test/test_has_finder.rb +11 -0
- data/test/test_helper.rb +2 -0
- metadata +490 -0
data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_spec.rb
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
module Formatter
|
|
6
|
+
describe "ProgressBarFormatter" do
|
|
7
|
+
before(:each) do
|
|
8
|
+
@io = StringIO.new
|
|
9
|
+
@formatter = ProgressBarFormatter.new(@io)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
it "should produce line break on start dump" do
|
|
13
|
+
@formatter.start_dump
|
|
14
|
+
@io.string.should eql("\n")
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
it "should produce standard summary without not implemented when not implemented has a 0 count" do
|
|
18
|
+
@formatter.dump_summary(3, 2, 1, 0)
|
|
19
|
+
@io.string.should eql("\nFinished in 3 seconds\n\n2 examples, 1 failure\n")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
it "should produce standard summary" do
|
|
23
|
+
@formatter.dump_summary(3, 2, 1, 4)
|
|
24
|
+
@io.string.should eql("\nFinished in 3 seconds\n\n2 examples, 1 failure, 4 not implemented\n")
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it "should push F for failing spec" do
|
|
28
|
+
@formatter.example_failed("spec", 98, Reporter::Failure.new("c s", RuntimeError.new))
|
|
29
|
+
@io.string.should eql("F")
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
it "should push dot for passing spec" do
|
|
33
|
+
@formatter.example_passed("spec")
|
|
34
|
+
@io.string.should eql(".")
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
it "should push nothing on start" do
|
|
38
|
+
@formatter.start(4)
|
|
39
|
+
@io.string.should eql("")
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
it "should ensure two ':' in the first backtrace" do
|
|
43
|
+
backtrace = ["/tmp/x.rb:1", "/tmp/x.rb:2", "/tmp/x.rb:3"]
|
|
44
|
+
@formatter.format_backtrace(backtrace).should eql(<<-EOE.rstrip)
|
|
45
|
+
/tmp/x.rb:1:
|
|
46
|
+
/tmp/x.rb:2:
|
|
47
|
+
/tmp/x.rb:3:
|
|
48
|
+
EOE
|
|
49
|
+
|
|
50
|
+
backtrace = ["/tmp/x.rb:1: message", "/tmp/x.rb:2", "/tmp/x.rb:3"]
|
|
51
|
+
@formatter.format_backtrace(backtrace).should eql(<<-EOE.rstrip)
|
|
52
|
+
/tmp/x.rb:1: message
|
|
53
|
+
/tmp/x.rb:2:
|
|
54
|
+
/tmp/x.rb:3:
|
|
55
|
+
EOE
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
describe "ProgressBarFormatter outputting to custom out" do
|
|
60
|
+
before(:each) do
|
|
61
|
+
@out = mock("out")
|
|
62
|
+
@out.stub!(:puts)
|
|
63
|
+
@formatter = ProgressBarFormatter.new(@out)
|
|
64
|
+
@formatter.class.send :public, :output_to_tty?
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
after(:each) do
|
|
68
|
+
@formatter.class.send :protected, :output_to_tty?
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
it "should not throw NoMethodError on output_to_tty?" do
|
|
72
|
+
@out.should_receive(:tty?).and_raise(NoMethodError)
|
|
73
|
+
@formatter.output_to_tty?.should be_false
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/rdoc_formatter_dry_run_spec.rb
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
module Formatter
|
|
6
|
+
describe "RdocFormatterDryRun" do
|
|
7
|
+
before(:each) do
|
|
8
|
+
@io = StringIO.new
|
|
9
|
+
@formatter = RdocFormatter.new(@io)
|
|
10
|
+
@formatter.dry_run = true
|
|
11
|
+
end
|
|
12
|
+
it "should not produce summary on dry run" do
|
|
13
|
+
@formatter.dump_summary(3, 2, 1, 0)
|
|
14
|
+
@io.string.should == ""
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
module Formatter
|
|
6
|
+
describe "RdocFormatter" do
|
|
7
|
+
before(:each) do
|
|
8
|
+
@io = StringIO.new
|
|
9
|
+
@formatter = RdocFormatter.new(@io)
|
|
10
|
+
@formatter.dry_run = true
|
|
11
|
+
end
|
|
12
|
+
it "should produce no summary" do
|
|
13
|
+
@formatter.dump_summary(nil, nil, nil, nil)
|
|
14
|
+
@io.string.should be_empty
|
|
15
|
+
|
|
16
|
+
end
|
|
17
|
+
it "should produce nothing on start dump" do
|
|
18
|
+
@formatter.start_dump
|
|
19
|
+
@io.string.should be_empty
|
|
20
|
+
|
|
21
|
+
end
|
|
22
|
+
it "should push out context" do
|
|
23
|
+
@formatter.add_behaviour("context")
|
|
24
|
+
@io.string.should eql("# context\n")
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
it "should push out failed spec" do
|
|
28
|
+
@formatter.example_failed("spec", 98, nil)
|
|
29
|
+
@io.string.should eql("# * spec [98 - FAILED]\n")
|
|
30
|
+
|
|
31
|
+
end
|
|
32
|
+
it "should push out spec" do
|
|
33
|
+
@formatter.example_passed("spec")
|
|
34
|
+
@io.string.should eql("# * spec\n")
|
|
35
|
+
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
it "should push out not implemented spec" do
|
|
39
|
+
@formatter.example_not_implemented("spec")
|
|
40
|
+
@io.string.should eql("# * spec [NOT IMPLEMENTED]\n")
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
describe Spec::Runner::Formatter::SnippetExtractor do
|
|
4
|
+
it "should fall back on a default message when it doesn't understand a line" do
|
|
5
|
+
Spec::Runner::Formatter::SnippetExtractor.new.snippet_for("blech").should == ["# Couldn't get snippet for blech", 1]
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
it "should fall back on a default message when it doesn't find the file" do
|
|
9
|
+
Spec::Runner::Formatter::SnippetExtractor.new.lines_around("blech", 8).should == "# Couldn't get snippet for blech"
|
|
10
|
+
end
|
|
11
|
+
end
|
data/spec/rails/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_dry_run_spec.rb
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
module Formatter
|
|
6
|
+
describe "SpecdocFormatterDryRun" do
|
|
7
|
+
before(:each) do
|
|
8
|
+
@io = StringIO.new
|
|
9
|
+
@formatter = SpecdocFormatter.new(@io)
|
|
10
|
+
@formatter.dry_run = true
|
|
11
|
+
end
|
|
12
|
+
it "should not produce summary on dry run" do
|
|
13
|
+
@formatter.dump_summary(3, 2, 1, 0)
|
|
14
|
+
@io.string.should eql("")
|
|
15
|
+
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
module Formatter
|
|
6
|
+
describe "SpecdocFormatter" do
|
|
7
|
+
before(:each) do
|
|
8
|
+
@io = StringIO.new
|
|
9
|
+
@formatter = SpecdocFormatter.new(@io)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
it "should produce standard summary without not implemented when not implemented has a 0 count" do
|
|
13
|
+
@formatter.dump_summary(3, 2, 1, 0)
|
|
14
|
+
@io.string.should eql("\nFinished in 3 seconds\n\n2 examples, 1 failure\n")
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
it "should produce standard summary" do
|
|
18
|
+
@formatter.dump_summary(3, 2, 1, 4)
|
|
19
|
+
@io.string.should eql("\nFinished in 3 seconds\n\n2 examples, 1 failure, 4 not implemented\n")
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
it "should push context name" do
|
|
23
|
+
@formatter.add_behaviour("context")
|
|
24
|
+
@io.string.should eql("\ncontext\n")
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
it "should push failing spec name and failure number" do
|
|
28
|
+
@formatter.example_failed("spec", 98, Reporter::Failure.new("c s", RuntimeError.new))
|
|
29
|
+
@io.string.should eql("- spec (ERROR - 98)\n")
|
|
30
|
+
|
|
31
|
+
end
|
|
32
|
+
it "should push nothing on start" do
|
|
33
|
+
@formatter.start(5)
|
|
34
|
+
@io.string.should eql("")
|
|
35
|
+
|
|
36
|
+
end
|
|
37
|
+
it "should push nothing on start dump" do
|
|
38
|
+
@formatter.start_dump
|
|
39
|
+
@io.string.should eql("")
|
|
40
|
+
|
|
41
|
+
end
|
|
42
|
+
it "should push passing spec name" do
|
|
43
|
+
@formatter.example_passed("spec")
|
|
44
|
+
@io.string.should eql("- spec\n")
|
|
45
|
+
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
it "should push not implemented spec name" do
|
|
49
|
+
@formatter.example_not_implemented('spec')
|
|
50
|
+
@io.string.should eql("- spec (NOT IMPLEMENTED)\n")
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
|
2
|
+
unless [/mswin/, /java/].detect{|p| p =~ RUBY_PLATFORM}
|
|
3
|
+
require 'spec/runner/heckle_runner'
|
|
4
|
+
|
|
5
|
+
module Foo
|
|
6
|
+
class Bar
|
|
7
|
+
def one; end
|
|
8
|
+
def two; end
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
class Zap
|
|
12
|
+
def three; end
|
|
13
|
+
def four; end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
describe "HeckleRunner" do
|
|
18
|
+
before(:each) do
|
|
19
|
+
@heckle = mock("heckle", :null_object => true)
|
|
20
|
+
@behaviour_runner = mock("behaviour_runner")
|
|
21
|
+
@heckle_class = mock("heckle_class")
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
it "should heckle all methods in all classes in a module" do
|
|
25
|
+
@heckle_class.should_receive(:new).with("Foo::Bar", "one", behaviour_runner).and_return(@heckle)
|
|
26
|
+
@heckle_class.should_receive(:new).with("Foo::Bar", "two", behaviour_runner).and_return(@heckle)
|
|
27
|
+
@heckle_class.should_receive(:new).with("Foo::Zap", "three", behaviour_runner).and_return(@heckle)
|
|
28
|
+
@heckle_class.should_receive(:new).with("Foo::Zap", "four", behaviour_runner).and_return(@heckle)
|
|
29
|
+
|
|
30
|
+
heckle_runner = Spec::Runner::HeckleRunner.new("Foo", @heckle_class)
|
|
31
|
+
heckle_runner.heckle_with(behaviour_runner)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
it "should heckle all methods in a class" do
|
|
35
|
+
@heckle_class.should_receive(:new).with("Foo::Bar", "one", behaviour_runner).and_return(@heckle)
|
|
36
|
+
@heckle_class.should_receive(:new).with("Foo::Bar", "two", behaviour_runner).and_return(@heckle)
|
|
37
|
+
|
|
38
|
+
heckle_runner = Spec::Runner::HeckleRunner.new("Foo::Bar", @heckle_class)
|
|
39
|
+
heckle_runner.heckle_with(behaviour_runner)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
it "should fail heckling when the class is not found" do
|
|
43
|
+
lambda do
|
|
44
|
+
heckle_runner = Spec::Runner::HeckleRunner.new("Foo::Bob", @heckle_class)
|
|
45
|
+
heckle_runner.heckle_with(behaviour_runner)
|
|
46
|
+
end.should raise_error(StandardError, "Heckling failed - \"Foo::Bob\" is not a known class or module")
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
it "should heckle specific method in a class (with #)" do
|
|
50
|
+
@heckle_class.should_receive(:new).with("Foo::Bar", "two", behaviour_runner).and_return(@heckle)
|
|
51
|
+
|
|
52
|
+
heckle_runner = Spec::Runner::HeckleRunner.new("Foo::Bar#two", @heckle_class)
|
|
53
|
+
heckle_runner.heckle_with(behaviour_runner)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
it "should heckle specific method in a class (with .)" do
|
|
57
|
+
@heckle_class.should_receive(:new).with("Foo::Bar", "two", behaviour_runner).and_return(@heckle)
|
|
58
|
+
|
|
59
|
+
heckle_runner = Spec::Runner::HeckleRunner.new("Foo::Bar.two", @heckle_class)
|
|
60
|
+
heckle_runner.heckle_with(behaviour_runner)
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
|
2
|
+
unless [/mswin/, /java/].detect{|p| p =~ RUBY_PLATFORM}
|
|
3
|
+
require 'spec/runner/heckle_runner'
|
|
4
|
+
|
|
5
|
+
describe "Heckler" do
|
|
6
|
+
it "should run behaviour_runner on tests_pass?" do
|
|
7
|
+
behaviour_runner = mock("behaviour_runner")
|
|
8
|
+
behaviour_runner.should_receive(:run).with([], false)
|
|
9
|
+
heckler = Spec::Runner::Heckler.new('Array', 'push', behaviour_runner)
|
|
10
|
+
|
|
11
|
+
heckler.tests_pass?
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
describe "NoisyBacktraceTweaker" do
|
|
6
|
+
before(:each) do
|
|
7
|
+
@error = RuntimeError.new
|
|
8
|
+
@tweaker = NoisyBacktraceTweaker.new
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
it "should leave anything in lib spec dir" do
|
|
12
|
+
["expectations", "mocks", "runner", "stubs"].each do |child|
|
|
13
|
+
@error.set_backtrace(["/lib/spec/#{child}/anything.rb"])
|
|
14
|
+
@tweaker.tweak_backtrace(@error, "spec name")
|
|
15
|
+
@error.backtrace.should_not be_empty
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
it "should leave anything in spec dir" do
|
|
20
|
+
@error.set_backtrace(["/lib/spec/expectations/anything.rb"])
|
|
21
|
+
@tweaker.tweak_backtrace(@error, "spec name")
|
|
22
|
+
@error.backtrace.should_not be_empty
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
it "should leave bin spec" do
|
|
26
|
+
@error.set_backtrace(["bin/spec:"])
|
|
27
|
+
@tweaker.tweak_backtrace(@error, "spec name")
|
|
28
|
+
@error.backtrace.should_not be_empty
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
it "should not barf on nil backtrace" do
|
|
32
|
+
lambda do
|
|
33
|
+
@tweaker.tweak_backtrace(@error, "spec name")
|
|
34
|
+
end.should_not raise_error
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
it "should clean up double slashes" do
|
|
38
|
+
@error.set_backtrace(["/a//b/c//d.rb"])
|
|
39
|
+
@tweaker.tweak_backtrace(@error, "spec name")
|
|
40
|
+
@error.backtrace.should include("/a/b/c/d.rb")
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
module Spec
|
|
4
|
+
module Runner
|
|
5
|
+
describe "ObjectExt" do
|
|
6
|
+
it "should add copy_instance_variables_from to object" do
|
|
7
|
+
Object.new.should respond_to(:copy_instance_variables_from)
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
|
2
|
+
|
|
3
|
+
describe "OptionParser" do
|
|
4
|
+
before(:each) do
|
|
5
|
+
@out = StringIO.new
|
|
6
|
+
@err = StringIO.new
|
|
7
|
+
@parser = Spec::Runner::OptionParser.new
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def parse(args)
|
|
11
|
+
@parser.parse(args, @err, @out, true)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def behaviour_runner(args)
|
|
15
|
+
@parser.create_behaviour_runner(args, @err, @out, true)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
it "should accept dry run option" do
|
|
19
|
+
options = parse(["--dry-run"])
|
|
20
|
+
options.dry_run.should be_true
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
it "should eval and use custom formatter when none of the builtins" do
|
|
24
|
+
options = parse(["--format", "Custom::Formatter"])
|
|
25
|
+
options.formatters[0].class.should be(Custom::Formatter)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
it "should support formatters with relative and absolute paths, even on windows" do
|
|
29
|
+
options = parse([
|
|
30
|
+
"--format", "Custom::Formatter:C:\\foo\\bar",
|
|
31
|
+
"--format", "Custom::Formatter:foo/bar",
|
|
32
|
+
"--format", "Custom::Formatter:foo\\bar",
|
|
33
|
+
"--format", "Custom::Formatter:/foo/bar"
|
|
34
|
+
])
|
|
35
|
+
options.formatters[0].where.should eql("C:\\foo\\bar")
|
|
36
|
+
options.formatters[1].where.should eql("foo/bar")
|
|
37
|
+
options.formatters[2].where.should eql("foo\\bar")
|
|
38
|
+
options.formatters[3].where.should eql("/foo/bar")
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
it "should not be verbose by default" do
|
|
42
|
+
options = parse([])
|
|
43
|
+
options.verbose.should be_nil
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
it "should not use colour by default" do
|
|
47
|
+
options = parse([])
|
|
48
|
+
options.colour.should == false
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
it "should print help to stdout" do
|
|
52
|
+
options = parse(["--help"])
|
|
53
|
+
@out.rewind
|
|
54
|
+
@out.read.should match(/Usage: spec \(FILE\|DIRECTORY\|GLOB\)\+ \[options\]/m)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
it "should print instructions about how to fix bad formatter" do
|
|
58
|
+
options = parse(["--format", "Custom::BadFormatter"])
|
|
59
|
+
@err.string.should match(/Couldn't find formatter class Custom::BadFormatter/n)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
it "should print usage to err if no dir specified" do
|
|
63
|
+
options = parse([])
|
|
64
|
+
@err.string.should match(/Usage: spec/)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
it "should print version to stdout" do
|
|
68
|
+
options = parse(["--version"])
|
|
69
|
+
@out.rewind
|
|
70
|
+
@out.read.should match(/RSpec-\d+\.\d+\.\d+.*\(r\d+\) - BDD for Ruby\nhttp:\/\/rspec.rubyforge.org\/\n/n)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
it "should require file when require specified" do
|
|
74
|
+
lambda do
|
|
75
|
+
parse(["--require", "whatever"])
|
|
76
|
+
end.should raise_error(LoadError)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
it "should support c option" do
|
|
80
|
+
options = parse(["-c"])
|
|
81
|
+
options.colour.should be_true
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
it "should support queens colour option" do
|
|
85
|
+
options = parse(["--colour"])
|
|
86
|
+
options.colour.should be_true
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
it "should support us color option" do
|
|
90
|
+
options = parse(["--color"])
|
|
91
|
+
options.colour.should be_true
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
it "should support single example with -e option" do
|
|
95
|
+
options = parse(["-e", "something or other"])
|
|
96
|
+
options.examples.should eql(["something or other"])
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
it "should support single example with -s option (will be removed when autotest supports -e)" do
|
|
100
|
+
options = parse(["-s", "something or other"])
|
|
101
|
+
options.examples.should eql(["something or other"])
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
it "should support single example with --example option" do
|
|
105
|
+
options = parse(["--example", "something or other"])
|
|
106
|
+
options.examples.should eql(["something or other"])
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
it "should read several example names from file if --example is given an existing file name" do
|
|
110
|
+
options = parse(["--example", File.dirname(__FILE__) + '/examples.txt'])
|
|
111
|
+
options.examples.should eql([
|
|
112
|
+
"Sir, if you were my husband, I would poison your drink.",
|
|
113
|
+
"Madam, if you were my wife, I would drink it."])
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
it "should read no examples if given an empty file" do
|
|
117
|
+
options = parse(["--example", File.dirname(__FILE__) + '/empty_file.txt'])
|
|
118
|
+
options.examples.should eql([])
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
it "should use html formatter when format is h" do
|
|
122
|
+
options = parse(["--format", "h"])
|
|
123
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::HtmlFormatter)
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
it "should use html formatter when format is html" do
|
|
127
|
+
options = parse(["--format", "html"])
|
|
128
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::HtmlFormatter)
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
it "should use html formatter with explicit output when format is html:test.html" do
|
|
132
|
+
FileUtils.rm 'test.html' if File.exist?('test.html')
|
|
133
|
+
options = parse(["--format", "html:test.html"])
|
|
134
|
+
File.should be_exist('test.html')
|
|
135
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::HtmlFormatter)
|
|
136
|
+
FileUtils.rm 'test.html' #rescue nil # Help windows
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
it "should use noisy backtrace tweaker with b option" do
|
|
140
|
+
options = parse(["-b"])
|
|
141
|
+
options.backtrace_tweaker.should be_instance_of(Spec::Runner::NoisyBacktraceTweaker)
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
it "should use noisy backtrace tweaker with backtrace option" do
|
|
145
|
+
options = parse(["--backtrace"])
|
|
146
|
+
options.backtrace_tweaker.should be_instance_of(Spec::Runner::NoisyBacktraceTweaker)
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
it "should use quiet backtrace tweaker by default" do
|
|
150
|
+
options = parse([])
|
|
151
|
+
options.backtrace_tweaker.should be_instance_of(Spec::Runner::QuietBacktraceTweaker)
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
it "should use progress bar formatter by default" do
|
|
155
|
+
options = parse([])
|
|
156
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::ProgressBarFormatter)
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
it "should use rdoc formatter when format is r" do
|
|
160
|
+
options = parse(["--format", "r"])
|
|
161
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::RdocFormatter)
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
it "should use rdoc formatter when format is rdoc" do
|
|
165
|
+
options = parse(["--format", "rdoc"])
|
|
166
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::RdocFormatter)
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
it "should use specdoc formatter when format is s" do
|
|
170
|
+
options = parse(["--format", "s"])
|
|
171
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::SpecdocFormatter)
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
it "should use specdoc formatter when format is specdoc" do
|
|
175
|
+
options = parse(["--format", "specdoc"])
|
|
176
|
+
options.formatters[0].class.should equal(Spec::Runner::Formatter::SpecdocFormatter)
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
it "should support diff option when format is not specified" do
|
|
180
|
+
options = parse(["--diff"])
|
|
181
|
+
options.diff_format.should == :unified
|
|
182
|
+
end
|
|
183
|
+
|
|
184
|
+
it "should use unified diff format option when format is unified" do
|
|
185
|
+
options = parse(["--diff", "unified"])
|
|
186
|
+
options.diff_format.should == :unified
|
|
187
|
+
options.differ_class.should equal(Spec::Expectations::Differs::Default)
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
it "should use context diff format option when format is context" do
|
|
191
|
+
options = parse(["--diff", "context"])
|
|
192
|
+
options.diff_format.should == :context
|
|
193
|
+
options.differ_class.should == Spec::Expectations::Differs::Default
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
it "should use custom diff format option when format is a custom format" do
|
|
197
|
+
options = parse(["--diff", "Custom::Formatter"])
|
|
198
|
+
options.diff_format.should == :custom
|
|
199
|
+
options.differ_class.should == Custom::Formatter
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
it "should print instructions about how to fix bad differ" do
|
|
203
|
+
options = parse(["--diff", "Custom::BadFormatter"])
|
|
204
|
+
@err.string.should match(/Couldn't find differ class Custom::BadFormatter/n)
|
|
205
|
+
end
|
|
206
|
+
|
|
207
|
+
it "should support --line to identify spec" do
|
|
208
|
+
spec_parser = mock("spec_parser")
|
|
209
|
+
@parser.instance_variable_set('@spec_parser', spec_parser)
|
|
210
|
+
|
|
211
|
+
file_factory = mock("File")
|
|
212
|
+
file_factory.should_receive(:file?).and_return(true)
|
|
213
|
+
file_factory.should_receive(:open).and_return("fake_io")
|
|
214
|
+
@parser.instance_variable_set('@file_factory', file_factory)
|
|
215
|
+
|
|
216
|
+
spec_parser.should_receive(:spec_name_for).with("fake_io", 169).and_return("some spec")
|
|
217
|
+
|
|
218
|
+
options = parse(["some file", "--line", "169"])
|
|
219
|
+
options.examples.should eql(["some spec"])
|
|
220
|
+
File.rspec_verify
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
it "should fail with error message if file is dir along with --line" do
|
|
224
|
+
spec_parser = mock("spec_parser")
|
|
225
|
+
@parser.instance_variable_set('@spec_parser', spec_parser)
|
|
226
|
+
|
|
227
|
+
file_factory = mock("File")
|
|
228
|
+
file_factory.should_receive(:file?).and_return(false)
|
|
229
|
+
file_factory.should_receive(:directory?).and_return(true)
|
|
230
|
+
@parser.instance_variable_set('@file_factory', file_factory)
|
|
231
|
+
|
|
232
|
+
options = parse(["some file", "--line", "169"])
|
|
233
|
+
@err.string.should match(/You must specify one file, not a directory when using the --line option/n)
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
it "should fail with error message if file is dir along with --line" do
|
|
237
|
+
spec_parser = mock("spec_parser")
|
|
238
|
+
@parser.instance_variable_set('@spec_parser', spec_parser)
|
|
239
|
+
|
|
240
|
+
file_factory = mock("File")
|
|
241
|
+
file_factory.should_receive(:file?).and_return(false)
|
|
242
|
+
file_factory.should_receive(:directory?).and_return(false)
|
|
243
|
+
@parser.instance_variable_set('@file_factory', file_factory)
|
|
244
|
+
|
|
245
|
+
options = parse(["some file", "--line", "169"])
|
|
246
|
+
@err.string.should match(/some file does not exist/n)
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
it "should fail with error message if more than one files are specified along with --line" do
|
|
250
|
+
spec_parser = mock("spec_parser")
|
|
251
|
+
@parser.instance_variable_set('@spec_parser', spec_parser)
|
|
252
|
+
|
|
253
|
+
options = parse(["some file", "some other file", "--line", "169"])
|
|
254
|
+
@err.string.should match(/Only one file can be specified when using the --line option/n)
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
it "should fail with error message if --example and --line are used simultaneously" do
|
|
258
|
+
spec_parser = mock("spec_parser")
|
|
259
|
+
@parser.instance_variable_set('@spec_parser', spec_parser)
|
|
260
|
+
|
|
261
|
+
options = parse(["some file", "--example", "some example", "--line", "169"])
|
|
262
|
+
@err.string.should match(/You cannot use both --line and --example/n)
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
if [/mswin/, /java/].detect{|p| p =~ RUBY_PLATFORM}
|
|
266
|
+
it "should barf when --heckle is specified (and platform is windows)" do
|
|
267
|
+
lambda do
|
|
268
|
+
options = parse(["--heckle", "Spec"])
|
|
269
|
+
end.should raise_error(StandardError, "Heckle not supported on Windows")
|
|
270
|
+
end
|
|
271
|
+
else
|
|
272
|
+
it "should heckle when --heckle is specified (and platform is not windows)" do
|
|
273
|
+
options = parse(["--heckle", "Spec"])
|
|
274
|
+
options.heckle_runner.should be_instance_of(Spec::Runner::HeckleRunner)
|
|
275
|
+
end
|
|
276
|
+
end
|
|
277
|
+
|
|
278
|
+
it "should read options from file when --options is specified" do
|
|
279
|
+
Spec::Runner::CommandLine.should_receive(:run).with(["--diff", "--colour"], @err, @out, true, true)
|
|
280
|
+
options = parse(["--options", File.dirname(__FILE__) + "/spec.opts"])
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
it "should append options from file when --options is specified" do
|
|
284
|
+
Spec::Runner::CommandLine.should_receive(:run).with(["some/spec.rb", "--diff", "--colour"], @err, @out, true, true)
|
|
285
|
+
options = parse(["some/spec.rb", "--options", File.dirname(__FILE__) + "/spec.opts"])
|
|
286
|
+
end
|
|
287
|
+
|
|
288
|
+
it "should read spaced and multi-line options from file when --options is specified" do
|
|
289
|
+
Spec::Runner::CommandLine.should_receive(:run).with(["--diff", "--colour", "--format", "s"], @err, @out, true, true)
|
|
290
|
+
options = parse(["--options", File.dirname(__FILE__) + "/spec_spaced.opts"])
|
|
291
|
+
end
|
|
292
|
+
|
|
293
|
+
it "should save config to file when --generate-options is specified" do
|
|
294
|
+
FileUtils.rm 'test.spec.opts' if File.exist?('test.spec.opts')
|
|
295
|
+
options = parse(["--colour", "--generate-options", "test.spec.opts", "--diff"])
|
|
296
|
+
File.open('test.spec.opts').read.should == "--colour\n--diff\n"
|
|
297
|
+
FileUtils.rm 'test.spec.opts' #rescue nil # Help windows
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
it "should call DrbCommandLine when --drb is specified" do
|
|
301
|
+
Spec::Runner::DrbCommandLine.should_receive(:run).with(["some/spec.rb", "--diff", "--colour"], @err, @out, true, true)
|
|
302
|
+
options = parse(["some/spec.rb", "--diff", "--drb", "--colour"])
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
it "should not return an Options object when --drb is specified" do
|
|
306
|
+
Spec::Runner::DrbCommandLine.stub!(:run)
|
|
307
|
+
parse(["some/spec.rb", "--drb"]).should be_nil
|
|
308
|
+
end
|
|
309
|
+
|
|
310
|
+
it "should reverse spec order when --reverse is specified" do
|
|
311
|
+
options = parse(["some/spec.rb", "--reverse"])
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
it "should set an mtime comparator when --loadby mtime" do
|
|
315
|
+
behaviour_runner = behaviour_runner(["--loadby", 'mtime'])
|
|
316
|
+
Dir.chdir(File.dirname(__FILE__)) do
|
|
317
|
+
FileUtils.touch "most_recent_spec.rb"
|
|
318
|
+
all_files = ['command_line_spec.rb', 'most_recent_spec.rb']
|
|
319
|
+
sorted_files = behaviour_runner.sort_paths(all_files)
|
|
320
|
+
sorted_files.should == ["most_recent_spec.rb", "command_line_spec.rb"]
|
|
321
|
+
FileUtils.rm "most_recent_spec.rb"
|
|
322
|
+
end
|
|
323
|
+
end
|
|
324
|
+
|
|
325
|
+
it "should not use a runner by default" do
|
|
326
|
+
options = parse([])
|
|
327
|
+
options.runner_type.should be_nil
|
|
328
|
+
end
|
|
329
|
+
|
|
330
|
+
it "should use a custom runner when given" do
|
|
331
|
+
options = parse(["--runner", "Custom::BehaviourRunner"])
|
|
332
|
+
options.runner_type.should equal(Custom::BehaviourRunner)
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
it "should fail when custom runner not found" do
|
|
336
|
+
parse(["--runner", "whatever"])
|
|
337
|
+
@err.string.should match(/Couldn't find behaviour runner class/)
|
|
338
|
+
end
|
|
339
|
+
|
|
340
|
+
it "should return the correct default behaviour runner" do
|
|
341
|
+
@parser.create_behaviour_runner([], @err, @out, true).should be_instance_of(Spec::Runner::BehaviourRunner)
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
it "should return the correct default behaviour runner" do
|
|
345
|
+
@parser.create_behaviour_runner(["--runner", "Custom::BehaviourRunner"], @err, @out, true).should be_instance_of(Custom::BehaviourRunner)
|
|
346
|
+
end
|
|
347
|
+
|
|
348
|
+
end
|