has_finder 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- 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
@@ -0,0 +1,158 @@
|
|
1
|
+
module Spec
|
2
|
+
module Runner
|
3
|
+
class Options
|
4
|
+
BUILT_IN_FORMATTERS = {
|
5
|
+
'specdoc' => Formatter::SpecdocFormatter,
|
6
|
+
's' => Formatter::SpecdocFormatter,
|
7
|
+
'html' => Formatter::HtmlFormatter,
|
8
|
+
'h' => Formatter::HtmlFormatter,
|
9
|
+
'rdoc' => Formatter::RdocFormatter,
|
10
|
+
'r' => Formatter::RdocFormatter,
|
11
|
+
'progress' => Formatter::ProgressBarFormatter,
|
12
|
+
'p' => Formatter::ProgressBarFormatter,
|
13
|
+
'failing_examples' => Formatter::FailingExamplesFormatter,
|
14
|
+
'e' => Formatter::FailingExamplesFormatter,
|
15
|
+
'failing_behaviours' => Formatter::FailingBehavioursFormatter,
|
16
|
+
'b' => Formatter::FailingBehavioursFormatter
|
17
|
+
}
|
18
|
+
|
19
|
+
attr_accessor(
|
20
|
+
:backtrace_tweaker,
|
21
|
+
:colour,
|
22
|
+
:context_lines,
|
23
|
+
:diff_format,
|
24
|
+
:differ_class,
|
25
|
+
:dry_run,
|
26
|
+
:examples,
|
27
|
+
:failure_file,
|
28
|
+
:formatters,
|
29
|
+
:generate,
|
30
|
+
:heckle_runner,
|
31
|
+
:line_number,
|
32
|
+
:loadby,
|
33
|
+
:reporter,
|
34
|
+
:reverse,
|
35
|
+
:runner_type,
|
36
|
+
:timeout,
|
37
|
+
:verbose
|
38
|
+
)
|
39
|
+
|
40
|
+
def initialize
|
41
|
+
@backtrace_tweaker = QuietBacktraceTweaker.new
|
42
|
+
@examples = []
|
43
|
+
@formatters = []
|
44
|
+
@colour = false
|
45
|
+
@dry_run = false
|
46
|
+
end
|
47
|
+
|
48
|
+
def create_behaviour_runner
|
49
|
+
@formatters.each do |formatter|
|
50
|
+
formatter.colour = @colour if formatter.respond_to?(:colour=)
|
51
|
+
formatter.dry_run = @dry_run if formatter.respond_to?(:dry_run=)
|
52
|
+
end
|
53
|
+
@reporter = Reporter.new(@formatters, @backtrace_tweaker)
|
54
|
+
|
55
|
+
# this doesn't really belong here.
|
56
|
+
# it should, but the way things are coupled, it doesn't
|
57
|
+
if @differ_class
|
58
|
+
Spec::Expectations.differ = @differ_class.new(@diff_format, @context_lines, @colour)
|
59
|
+
end
|
60
|
+
|
61
|
+
return nil if @generate
|
62
|
+
|
63
|
+
if @runner_type
|
64
|
+
@runner_type.new(self)
|
65
|
+
else
|
66
|
+
BehaviourRunner.new(self)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
def parse_diff(format, out_stream, error_stream)
|
71
|
+
@context_lines = 3
|
72
|
+
case format
|
73
|
+
when :context, 'context', 'c'
|
74
|
+
@diff_format = :context
|
75
|
+
when :unified, 'unified', 'u', '', nil
|
76
|
+
@diff_format = :unified
|
77
|
+
end
|
78
|
+
|
79
|
+
if [:context,:unified].include? @diff_format
|
80
|
+
require 'spec/expectations/differs/default'
|
81
|
+
@differ_class = Spec::Expectations::Differs::Default
|
82
|
+
else
|
83
|
+
begin
|
84
|
+
@diff_format = :custom
|
85
|
+
@differ_class = eval(format)
|
86
|
+
rescue NameError
|
87
|
+
error_stream.puts "Couldn't find differ class #{format}"
|
88
|
+
error_stream.puts "Make sure the --require option is specified *before* --diff"
|
89
|
+
exit if out_stream == $stdout
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
|
94
|
+
def parse_example(example)
|
95
|
+
if(File.file?(example))
|
96
|
+
@examples = File.open(example).read.split("\n")
|
97
|
+
else
|
98
|
+
@examples = [example]
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
def parse_format(format, out_stream, error_stream)
|
103
|
+
where = out_stream
|
104
|
+
# This funky regexp checks whether we have a FILE_NAME or not
|
105
|
+
if (format =~ /([a-zA-Z_]+(?:::[a-zA-Z_]+)*):?(.*)/) && ($2 != '')
|
106
|
+
format = $1
|
107
|
+
where = $2
|
108
|
+
else
|
109
|
+
raise "When using several --format options only one of them can be without a file" if @out_used
|
110
|
+
@out_used = true
|
111
|
+
end
|
112
|
+
|
113
|
+
begin
|
114
|
+
formatter_type = BUILT_IN_FORMATTERS[format] || eval(format)
|
115
|
+
@formatters << formatter_type.new(where)
|
116
|
+
rescue NameError
|
117
|
+
error_stream.puts "Couldn't find formatter class #{format}"
|
118
|
+
error_stream.puts "Make sure the --require option is specified *before* --format"
|
119
|
+
exit if out_stream == $stdout
|
120
|
+
end
|
121
|
+
end
|
122
|
+
|
123
|
+
def parse_require(req)
|
124
|
+
req.split(",").each{|file| require file}
|
125
|
+
end
|
126
|
+
|
127
|
+
def parse_heckle(heckle)
|
128
|
+
heckle_require = [/mswin/, /java/].detect{|p| p =~ RUBY_PLATFORM} ? 'spec/runner/heckle_runner_unsupported' : 'spec/runner/heckle_runner'
|
129
|
+
require heckle_require
|
130
|
+
@heckle_runner = HeckleRunner.new(heckle)
|
131
|
+
end
|
132
|
+
|
133
|
+
def parse_generate_options(options_file, args_copy, out_stream)
|
134
|
+
# Remove the --generate-options option and the argument before writing to file
|
135
|
+
index = args_copy.index("-G") || args_copy.index("--generate-options")
|
136
|
+
args_copy.delete_at(index)
|
137
|
+
args_copy.delete_at(index)
|
138
|
+
|
139
|
+
File.open(options_file, 'w') do |io|
|
140
|
+
io.puts args_copy.join("\n")
|
141
|
+
end
|
142
|
+
out_stream.puts "\nOptions written to #{options_file}. You can now use these options with:"
|
143
|
+
out_stream.puts "spec --options #{options_file}"
|
144
|
+
@generate = true
|
145
|
+
end
|
146
|
+
|
147
|
+
def parse_runner(runner, out_stream, error_stream)
|
148
|
+
begin
|
149
|
+
@runner_type = eval(runner)
|
150
|
+
rescue NameError
|
151
|
+
error_stream.puts "Couldn't find behaviour runner class #{runner}"
|
152
|
+
error_stream.puts "Make sure the --require option is specified."
|
153
|
+
exit if out_stream == $stdout
|
154
|
+
end
|
155
|
+
end
|
156
|
+
end
|
157
|
+
end
|
158
|
+
end
|
@@ -0,0 +1,114 @@
|
|
1
|
+
module Spec
|
2
|
+
module Runner
|
3
|
+
class Reporter
|
4
|
+
|
5
|
+
def initialize(formatters, backtrace_tweaker)
|
6
|
+
@formatters = formatters
|
7
|
+
@backtrace_tweaker = backtrace_tweaker
|
8
|
+
clear!
|
9
|
+
end
|
10
|
+
|
11
|
+
def add_behaviour(name)
|
12
|
+
@formatters.each{|f| f.add_behaviour(name)}
|
13
|
+
@behaviour_names << name
|
14
|
+
end
|
15
|
+
|
16
|
+
def example_started(name)
|
17
|
+
@formatters.each{|f| f.example_started(name)}
|
18
|
+
end
|
19
|
+
|
20
|
+
def example_finished(name, error=nil, failure_location=nil, not_implemented = false)
|
21
|
+
@example_names << name
|
22
|
+
|
23
|
+
if not_implemented
|
24
|
+
example_not_implemented(name)
|
25
|
+
elsif error.nil?
|
26
|
+
example_passed(name)
|
27
|
+
else
|
28
|
+
example_failed(name, error, failure_location)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def start(number_of_examples)
|
33
|
+
clear!
|
34
|
+
@start_time = Time.new
|
35
|
+
@formatters.each{|f| f.start(number_of_examples)}
|
36
|
+
end
|
37
|
+
|
38
|
+
def end
|
39
|
+
@end_time = Time.new
|
40
|
+
end
|
41
|
+
|
42
|
+
# Dumps the summary and returns the total number of failures
|
43
|
+
def dump
|
44
|
+
@formatters.each{|f| f.start_dump}
|
45
|
+
dump_failures
|
46
|
+
@formatters.each{|f| f.dump_summary(duration, @example_names.length, @failures.length, @not_implemented_count)}
|
47
|
+
@failures.length
|
48
|
+
end
|
49
|
+
|
50
|
+
private
|
51
|
+
|
52
|
+
def clear!
|
53
|
+
@behaviour_names = []
|
54
|
+
@failures = []
|
55
|
+
@not_implemented_count = 0
|
56
|
+
@example_names = []
|
57
|
+
@start_time = nil
|
58
|
+
@end_time = nil
|
59
|
+
end
|
60
|
+
|
61
|
+
def dump_failures
|
62
|
+
return if @failures.empty?
|
63
|
+
@failures.inject(1) do |index, failure|
|
64
|
+
@formatters.each{|f| f.dump_failure(index, failure)}
|
65
|
+
index + 1
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def duration
|
70
|
+
return @end_time - @start_time unless (@end_time.nil? or @start_time.nil?)
|
71
|
+
return "0.0"
|
72
|
+
end
|
73
|
+
|
74
|
+
def example_passed(name)
|
75
|
+
@formatters.each{|f| f.example_passed(name)}
|
76
|
+
end
|
77
|
+
|
78
|
+
def example_failed(name, error, failure_location)
|
79
|
+
@backtrace_tweaker.tweak_backtrace(error, failure_location)
|
80
|
+
example_name = "#{@behaviour_names.last} #{name}"
|
81
|
+
failure = Failure.new(example_name, error)
|
82
|
+
@failures << failure
|
83
|
+
@formatters.each{|f| f.example_failed(name, @failures.length, failure)}
|
84
|
+
end
|
85
|
+
|
86
|
+
def example_not_implemented(name)
|
87
|
+
@not_implemented_count += 1
|
88
|
+
@formatters.each{|f| f.example_not_implemented(name)}
|
89
|
+
end
|
90
|
+
|
91
|
+
class Failure
|
92
|
+
attr_reader :exception
|
93
|
+
|
94
|
+
def initialize(example_name, exception)
|
95
|
+
@example_name = example_name
|
96
|
+
@exception = exception
|
97
|
+
end
|
98
|
+
|
99
|
+
def header
|
100
|
+
if expectation_not_met?
|
101
|
+
"'#{@example_name}' FAILED"
|
102
|
+
else
|
103
|
+
"#{@exception.class.name} in '#{@example_name}'"
|
104
|
+
end
|
105
|
+
end
|
106
|
+
|
107
|
+
def expectation_not_met?
|
108
|
+
@exception.is_a?(Spec::Expectations::ExpectationNotMetError)
|
109
|
+
end
|
110
|
+
|
111
|
+
end
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module Spec
|
2
|
+
module Runner
|
3
|
+
# Parses a spec file and finds the nearest example for a given line number.
|
4
|
+
class SpecParser
|
5
|
+
def spec_name_for(io, line_number)
|
6
|
+
source = io.read
|
7
|
+
behaviour, behaviour_line = behaviour_at_line(source, line_number)
|
8
|
+
example, example_line = example_at_line(source, line_number)
|
9
|
+
if behaviour && example && (behaviour_line < example_line)
|
10
|
+
"#{behaviour} #{example}"
|
11
|
+
elsif behaviour
|
12
|
+
behaviour
|
13
|
+
else
|
14
|
+
nil
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
protected
|
19
|
+
|
20
|
+
def behaviour_at_line(source, line_number)
|
21
|
+
find_above(source, line_number, /^\s*(context|describe)\s+(.*)\s+do/)
|
22
|
+
end
|
23
|
+
|
24
|
+
def example_at_line(source, line_number)
|
25
|
+
find_above(source, line_number, /^\s*(specify|it)\s+(.*)\s+do/)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Returns the context/describe or specify/it name and the line number
|
29
|
+
def find_above(source, line_number, pattern)
|
30
|
+
lines_above_reversed(source, line_number).each_with_index do |line, n|
|
31
|
+
return [parse_description($2), line_number-n] if line =~ pattern
|
32
|
+
end
|
33
|
+
nil
|
34
|
+
end
|
35
|
+
|
36
|
+
def lines_above_reversed(source, line_number)
|
37
|
+
lines = source.split("\n")
|
38
|
+
lines[0...line_number].reverse
|
39
|
+
end
|
40
|
+
|
41
|
+
def parse_description(str)
|
42
|
+
return str[1..-2] if str =~ /^['"].*['"]$/
|
43
|
+
if matches = /^(.*)\s*,\s*['"](.*)['"]$/.match(str)
|
44
|
+
return ::Spec::DSL::Description.generate_description(matches[1], matches[2])
|
45
|
+
end
|
46
|
+
return str
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,106 @@
|
|
1
|
+
require 'fileutils'
|
2
|
+
|
3
|
+
module Spec
|
4
|
+
class Translator
|
5
|
+
def translate(from, to)
|
6
|
+
from = File.expand_path(from)
|
7
|
+
to = File.expand_path(to)
|
8
|
+
if File.directory?(from)
|
9
|
+
translate_dir(from, to)
|
10
|
+
elsif(from =~ /\.rb$/)
|
11
|
+
translate_file(from, to)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def translate_dir(from, to)
|
16
|
+
FileUtils.mkdir_p(to) unless File.directory?(to)
|
17
|
+
Dir["#{from}/*"].each do |sub_from|
|
18
|
+
path = sub_from[from.length+1..-1]
|
19
|
+
sub_to = File.join(to, path)
|
20
|
+
translate(sub_from, sub_to)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def translate_file(from, to)
|
25
|
+
translation = ""
|
26
|
+
File.open(from) do |io|
|
27
|
+
io.each_line do |line|
|
28
|
+
translation << translate_line(line)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
File.open(to, "w") do |io|
|
32
|
+
io.write(translation)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
def translate_line(line)
|
37
|
+
return line if line =~ /(should_not|should)_receive/
|
38
|
+
|
39
|
+
line.gsub!(/(^\s*)context([\s*|\(]['|"|A-Z])/, '\1describe\2')
|
40
|
+
line.gsub!(/(^\s*)specify([\s*|\(]['|"|A-Z])/, '\1it\2')
|
41
|
+
line.gsub!(/(^\s*)context_setup(\s*[do|\{])/, '\1before(:all)\2')
|
42
|
+
line.gsub!(/(^\s*)context_teardown(\s*[do|\{])/, '\1after(:all)\2')
|
43
|
+
line.gsub!(/(^\s*)setup(\s*[do|\{])/, '\1before(:each)\2')
|
44
|
+
line.gsub!(/(^\s*)teardown(\s*[do|\{])/, '\1after(:each)\2')
|
45
|
+
|
46
|
+
if line =~ /(.*\.)(should_not|should)(?:_be)(?!_)(.*)/m
|
47
|
+
pre = $1
|
48
|
+
should = $2
|
49
|
+
post = $3
|
50
|
+
be_or_equal = post =~ /(<|>)/ ? "be" : "equal"
|
51
|
+
|
52
|
+
return "#{pre}#{should} #{be_or_equal}#{post}"
|
53
|
+
end
|
54
|
+
|
55
|
+
if line =~ /(.*\.)(should_not|should)_(?!not)\s*(.*)/m
|
56
|
+
pre = $1
|
57
|
+
should = $2
|
58
|
+
post = $3
|
59
|
+
|
60
|
+
post.gsub!(/^raise/, 'raise_error')
|
61
|
+
post.gsub!(/^throw/, 'throw_symbol')
|
62
|
+
|
63
|
+
unless standard_matcher?(post)
|
64
|
+
post = "be_#{post}"
|
65
|
+
end
|
66
|
+
|
67
|
+
# Add parenthesis
|
68
|
+
post.gsub!(/^(\w+)\s+([\w|\.|\,|\(.*\)|\'|\"|\:|@| ]+)(\})/, '\1(\2)\3') # inside a block
|
69
|
+
post.gsub!(/^(redirect_to)\s+(.*)/, '\1(\2)') # redirect_to, which often has http:
|
70
|
+
post.gsub!(/^(\w+)\s+([\w|\.|\,|\(.*\)|\{.*\}|\'|\"|\:|@| ]+)/, '\1(\2)')
|
71
|
+
post.gsub!(/(\s+\))/, ')')
|
72
|
+
post.gsub!(/\)\}/, ') }')
|
73
|
+
post.gsub!(/^(\w+)\s+(\/.*\/)/, '\1(\2)') #regexps
|
74
|
+
line = "#{pre}#{should} #{post}"
|
75
|
+
end
|
76
|
+
|
77
|
+
line
|
78
|
+
end
|
79
|
+
|
80
|
+
def standard_matcher?(matcher)
|
81
|
+
patterns = [
|
82
|
+
/^be/,
|
83
|
+
/^be_close/,
|
84
|
+
/^eql/,
|
85
|
+
/^equal/,
|
86
|
+
/^has/,
|
87
|
+
/^have/,
|
88
|
+
/^change/,
|
89
|
+
/^include/,
|
90
|
+
/^match/,
|
91
|
+
/^raise_error/,
|
92
|
+
/^respond_to/,
|
93
|
+
/^redirect_to/,
|
94
|
+
/^satisfy/,
|
95
|
+
/^throw_symbol/,
|
96
|
+
# Extra ones that we use in spec_helper
|
97
|
+
/^pass/,
|
98
|
+
/^fail/,
|
99
|
+
/^fail_with/,
|
100
|
+
]
|
101
|
+
matched = patterns.detect{ |p| matcher =~ p }
|
102
|
+
!matched.nil?
|
103
|
+
end
|
104
|
+
|
105
|
+
end
|
106
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Spec
|
2
|
+
module VERSION
|
3
|
+
unless defined? MAJOR
|
4
|
+
MAJOR = 1
|
5
|
+
MINOR = 0
|
6
|
+
TINY = 5
|
7
|
+
RELEASE_CANDIDATE = nil
|
8
|
+
|
9
|
+
# RANDOM_TOKEN: 0.956731547671535
|
10
|
+
REV = "$LastChangedRevision: 2081 $".match(/LastChangedRevision: (\d+)/)[1]
|
11
|
+
|
12
|
+
STRING = [MAJOR, MINOR, TINY].join('.')
|
13
|
+
TAG = "REL_#{[MAJOR, MINOR, TINY, RELEASE_CANDIDATE].compact.join('_')}".upcase.gsub(/\.|-/, '_')
|
14
|
+
FULL_VERSION = "#{[MAJOR, MINOR, TINY, RELEASE_CANDIDATE].compact.join('.')} (r#{REV})"
|
15
|
+
|
16
|
+
NAME = "RSpec"
|
17
|
+
URL = "http://rspec.rubyforge.org/"
|
18
|
+
|
19
|
+
DESCRIPTION = "#{NAME}-#{FULL_VERSION} - BDD for Ruby\n#{URL}"
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|