dchelimsky-rspec 1.1.10
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 +1192 -0
- data/License.txt +22 -0
- data/Manifest.txt +403 -0
- data/README.txt +39 -0
- data/Rakefile +90 -0
- data/TODO.txt +10 -0
- data/bin/autospec +4 -0
- data/bin/spec +4 -0
- data/examples/pure/autogenerated_docstrings_example.rb +19 -0
- data/examples/pure/before_and_after_example.rb +40 -0
- data/examples/pure/behave_as_example.rb +45 -0
- data/examples/pure/custom_expectation_matchers.rb +54 -0
- data/examples/pure/custom_formatter.rb +12 -0
- data/examples/pure/dynamic_spec.rb +9 -0
- data/examples/pure/file_accessor.rb +19 -0
- data/examples/pure/file_accessor_spec.rb +38 -0
- data/examples/pure/greeter_spec.rb +31 -0
- data/examples/pure/helper_method_example.rb +14 -0
- data/examples/pure/io_processor.rb +8 -0
- data/examples/pure/io_processor_spec.rb +21 -0
- data/examples/pure/legacy_spec.rb +11 -0
- data/examples/pure/mocking_example.rb +27 -0
- data/examples/pure/multi_threaded_behaviour_runner.rb +28 -0
- data/examples/pure/nested_classes_example.rb +36 -0
- data/examples/pure/partial_mock_example.rb +29 -0
- data/examples/pure/pending_example.rb +20 -0
- data/examples/pure/predicate_example.rb +27 -0
- data/examples/pure/priority.txt +1 -0
- data/examples/pure/shared_example_group_example.rb +81 -0
- data/examples/pure/shared_stack_examples.rb +38 -0
- data/examples/pure/spec_helper.rb +3 -0
- data/examples/pure/stack.rb +36 -0
- data/examples/pure/stack_spec.rb +63 -0
- data/examples/pure/stack_spec_with_nested_example_groups.rb +67 -0
- data/examples/pure/stubbing_example.rb +69 -0
- data/examples/pure/yielding_example.rb +33 -0
- data/examples/stories/adder.rb +13 -0
- data/examples/stories/addition +34 -0
- data/examples/stories/addition.rb +9 -0
- data/examples/stories/calculator.rb +65 -0
- data/examples/stories/game-of-life/.loadpath +5 -0
- data/examples/stories/game-of-life/README.txt +21 -0
- data/examples/stories/game-of-life/behaviour/everything.rb +6 -0
- data/examples/stories/game-of-life/behaviour/examples/examples.rb +3 -0
- data/examples/stories/game-of-life/behaviour/examples/game_behaviour.rb +35 -0
- data/examples/stories/game-of-life/behaviour/examples/grid_behaviour.rb +66 -0
- data/examples/stories/game-of-life/behaviour/stories/CellsWithLessThanTwoNeighboursDie.story +21 -0
- data/examples/stories/game-of-life/behaviour/stories/CellsWithMoreThanThreeNeighboursDie.story +21 -0
- data/examples/stories/game-of-life/behaviour/stories/EmptySpacesWithThreeNeighboursCreateACell.story +42 -0
- data/examples/stories/game-of-life/behaviour/stories/ICanCreateACell.story +42 -0
- data/examples/stories/game-of-life/behaviour/stories/ICanKillACell.story +17 -0
- data/examples/stories/game-of-life/behaviour/stories/TheGridWraps.story +53 -0
- data/examples/stories/game-of-life/behaviour/stories/create_a_cell.rb +52 -0
- data/examples/stories/game-of-life/behaviour/stories/helper.rb +6 -0
- data/examples/stories/game-of-life/behaviour/stories/kill_a_cell.rb +26 -0
- data/examples/stories/game-of-life/behaviour/stories/steps.rb +5 -0
- data/examples/stories/game-of-life/behaviour/stories/stories.rb +3 -0
- data/examples/stories/game-of-life/behaviour/stories/stories.txt +22 -0
- data/examples/stories/game-of-life/life/game.rb +23 -0
- data/examples/stories/game-of-life/life/grid.rb +43 -0
- data/examples/stories/game-of-life/life.rb +3 -0
- data/examples/stories/helper.rb +9 -0
- data/examples/stories/steps/addition_steps.rb +18 -0
- data/failing_examples/README.txt +7 -0
- data/failing_examples/diffing_spec.rb +36 -0
- data/failing_examples/failing_autogenerated_docstrings_example.rb +19 -0
- data/failing_examples/failure_in_setup.rb +10 -0
- data/failing_examples/failure_in_teardown.rb +10 -0
- data/failing_examples/mocking_example.rb +40 -0
- data/failing_examples/mocking_with_flexmock.rb +26 -0
- data/failing_examples/mocking_with_mocha.rb +25 -0
- data/failing_examples/mocking_with_rr.rb +27 -0
- data/failing_examples/partial_mock_example.rb +20 -0
- data/failing_examples/predicate_example.rb +29 -0
- data/failing_examples/raising_example.rb +47 -0
- data/failing_examples/spec_helper.rb +3 -0
- data/failing_examples/syntax_error_example.rb +7 -0
- data/failing_examples/team_spec.rb +44 -0
- data/failing_examples/timeout_behaviour.rb +7 -0
- data/init.rb +9 -0
- data/lib/autotest/discover.rb +3 -0
- data/lib/autotest/rspec.rb +46 -0
- data/lib/spec/adapters/ruby_engine/mri.rb +8 -0
- data/lib/spec/adapters/ruby_engine/rubinius.rb +8 -0
- data/lib/spec/adapters/ruby_engine.rb +26 -0
- data/lib/spec/adapters.rb +1 -0
- data/lib/spec/example/before_and_after_hooks.rb +93 -0
- data/lib/spec/example/configuration.rb +167 -0
- data/lib/spec/example/errors.rb +30 -0
- data/lib/spec/example/example_group.rb +25 -0
- data/lib/spec/example/example_group_factory.rb +81 -0
- data/lib/spec/example/example_group_methods.rb +368 -0
- data/lib/spec/example/example_matcher.rb +44 -0
- data/lib/spec/example/example_methods.rb +105 -0
- data/lib/spec/example/module_reopening_fix.rb +21 -0
- data/lib/spec/example/pending.rb +18 -0
- data/lib/spec/example/shared_example_group.rb +52 -0
- data/lib/spec/example.rb +12 -0
- data/lib/spec/expectations/differs/default.rb +66 -0
- data/lib/spec/expectations/errors.rb +12 -0
- data/lib/spec/expectations/extensions/object.rb +63 -0
- data/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
- data/lib/spec/expectations/extensions.rb +2 -0
- data/lib/spec/expectations/handler.rb +52 -0
- data/lib/spec/expectations.rb +56 -0
- data/lib/spec/extensions/class.rb +24 -0
- data/lib/spec/extensions/main.rb +87 -0
- data/lib/spec/extensions/metaclass.rb +7 -0
- data/lib/spec/extensions/object.rb +6 -0
- data/lib/spec/extensions.rb +4 -0
- data/lib/spec/interop/test/unit/autorunner.rb +6 -0
- data/lib/spec/interop/test/unit/testcase.rb +71 -0
- data/lib/spec/interop/test/unit/testresult.rb +6 -0
- data/lib/spec/interop/test/unit/testsuite_adapter.rb +34 -0
- data/lib/spec/interop/test/unit/ui/console/testrunner.rb +61 -0
- data/lib/spec/interop/test.rb +12 -0
- data/lib/spec/matchers/be.rb +221 -0
- data/lib/spec/matchers/be_close.rb +37 -0
- data/lib/spec/matchers/change.rb +148 -0
- data/lib/spec/matchers/eql.rb +43 -0
- data/lib/spec/matchers/equal.rb +43 -0
- data/lib/spec/matchers/exist.rb +22 -0
- data/lib/spec/matchers/has.rb +34 -0
- data/lib/spec/matchers/have.rb +150 -0
- data/lib/spec/matchers/include.rb +77 -0
- data/lib/spec/matchers/match.rb +41 -0
- data/lib/spec/matchers/operator_matcher.rb +79 -0
- data/lib/spec/matchers/raise_error.rb +132 -0
- data/lib/spec/matchers/respond_to.rb +46 -0
- data/lib/spec/matchers/satisfy.rb +47 -0
- data/lib/spec/matchers/simple_matcher.rb +132 -0
- data/lib/spec/matchers/throw_symbol.rb +74 -0
- data/lib/spec/matchers.rb +162 -0
- data/lib/spec/mocks/argument_constraints.rb +165 -0
- data/lib/spec/mocks/argument_expectation.rb +49 -0
- data/lib/spec/mocks/error_generator.rb +84 -0
- data/lib/spec/mocks/errors.rb +10 -0
- data/lib/spec/mocks/extensions/object.rb +3 -0
- data/lib/spec/mocks/extensions.rb +1 -0
- data/lib/spec/mocks/framework.rb +15 -0
- data/lib/spec/mocks/message_expectation.rb +331 -0
- data/lib/spec/mocks/methods.rb +51 -0
- data/lib/spec/mocks/mock.rb +56 -0
- data/lib/spec/mocks/order_group.rb +29 -0
- data/lib/spec/mocks/proxy.rb +224 -0
- data/lib/spec/mocks/space.rb +28 -0
- data/lib/spec/mocks/spec_methods.rb +46 -0
- data/lib/spec/mocks.rb +200 -0
- data/lib/spec/rake/spectask.rb +227 -0
- data/lib/spec/rake/verify_rcov.rb +52 -0
- data/lib/spec/runner/backtrace_tweaker.rb +56 -0
- data/lib/spec/runner/class_and_arguments_parser.rb +16 -0
- data/lib/spec/runner/command_line.rb +17 -0
- data/lib/spec/runner/drb_command_line.rb +20 -0
- data/lib/spec/runner/example_group_runner.rb +59 -0
- data/lib/spec/runner/formatter/base_formatter.rb +79 -0
- data/lib/spec/runner/formatter/base_text_formatter.rb +126 -0
- data/lib/spec/runner/formatter/failing_example_groups_formatter.rb +27 -0
- data/lib/spec/runner/formatter/failing_examples_formatter.rb +20 -0
- data/lib/spec/runner/formatter/html_formatter.rb +337 -0
- data/lib/spec/runner/formatter/nested_text_formatter.rb +65 -0
- data/lib/spec/runner/formatter/profile_formatter.rb +51 -0
- data/lib/spec/runner/formatter/progress_bar_formatter.rb +34 -0
- data/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
- data/lib/spec/runner/formatter/specdoc_formatter.rb +39 -0
- data/lib/spec/runner/formatter/story/html_formatter.rb +174 -0
- data/lib/spec/runner/formatter/story/plain_text_formatter.rb +194 -0
- data/lib/spec/runner/formatter/story/progress_bar_formatter.rb +42 -0
- data/lib/spec/runner/formatter/text_mate_formatter.rb +16 -0
- data/lib/spec/runner/heckle_runner.rb +72 -0
- data/lib/spec/runner/heckle_runner_unsupported.rb +10 -0
- data/lib/spec/runner/option_parser.rb +205 -0
- data/lib/spec/runner/options.rb +320 -0
- data/lib/spec/runner/reporter.rb +167 -0
- data/lib/spec/runner/spec_parser.rb +71 -0
- data/lib/spec/runner.rb +213 -0
- data/lib/spec/story/extensions/main.rb +86 -0
- data/lib/spec/story/extensions/regexp.rb +9 -0
- data/lib/spec/story/extensions/string.rb +9 -0
- data/lib/spec/story/extensions.rb +3 -0
- data/lib/spec/story/given_scenario.rb +14 -0
- data/lib/spec/story/runner/plain_text_story_runner.rb +48 -0
- data/lib/spec/story/runner/scenario_collector.rb +18 -0
- data/lib/spec/story/runner/scenario_runner.rb +54 -0
- data/lib/spec/story/runner/story_mediator.rb +137 -0
- data/lib/spec/story/runner/story_parser.rb +247 -0
- data/lib/spec/story/runner/story_runner.rb +70 -0
- data/lib/spec/story/runner.rb +59 -0
- data/lib/spec/story/scenario.rb +14 -0
- data/lib/spec/story/step.rb +70 -0
- data/lib/spec/story/step_group.rb +89 -0
- data/lib/spec/story/step_mother.rb +38 -0
- data/lib/spec/story/story.rb +39 -0
- data/lib/spec/story/world.rb +128 -0
- data/lib/spec/story.rb +10 -0
- data/lib/spec/version.rb +13 -0
- data/lib/spec.rb +32 -0
- data/plugins/mock_frameworks/flexmock.rb +23 -0
- data/plugins/mock_frameworks/mocha.rb +19 -0
- data/plugins/mock_frameworks/rr.rb +21 -0
- data/plugins/mock_frameworks/rspec.rb +20 -0
- data/rake_tasks/examples.rake +7 -0
- data/rake_tasks/examples_with_rcov.rake +9 -0
- data/rake_tasks/failing_examples_with_html.rake +9 -0
- data/rake_tasks/verify_rcov.rake +7 -0
- data/rspec.gemspec +42 -0
- data/spec/README.jruby +15 -0
- data/spec/autotest/autotest_helper.rb +6 -0
- data/spec/autotest/autotest_matchers.rb +47 -0
- data/spec/autotest/discover_spec.rb +19 -0
- data/spec/autotest/rspec_spec.rb +150 -0
- data/spec/rspec_suite.rb +6 -0
- data/spec/ruby_forker.rb +13 -0
- data/spec/spec/adapters/ruby_engine_spec.rb +16 -0
- data/spec/spec/example/configuration_spec.rb +296 -0
- data/spec/spec/example/example_group_class_definition_spec.rb +48 -0
- data/spec/spec/example/example_group_factory_spec.rb +165 -0
- data/spec/spec/example/example_group_methods_spec.rb +584 -0
- data/spec/spec/example/example_group_spec.rb +683 -0
- data/spec/spec/example/example_matcher_spec.rb +96 -0
- data/spec/spec/example/example_methods_spec.rb +169 -0
- data/spec/spec/example/example_runner_spec.rb +194 -0
- data/spec/spec/example/nested_example_group_spec.rb +71 -0
- data/spec/spec/example/pending_module_spec.rb +145 -0
- data/spec/spec/example/predicate_matcher_spec.rb +21 -0
- data/spec/spec/example/shared_example_group_spec.rb +281 -0
- data/spec/spec/example/subclassing_example_group_spec.rb +25 -0
- data/spec/spec/expectations/differs/default_spec.rb +127 -0
- data/spec/spec/expectations/extensions/object_spec.rb +95 -0
- data/spec/spec/expectations/fail_with_spec.rb +71 -0
- data/spec/spec/extensions/main_spec.rb +71 -0
- data/spec/spec/interop/test/unit/resources/spec_that_fails.rb +10 -0
- data/spec/spec/interop/test/unit/resources/spec_that_passes.rb +10 -0
- data/spec/spec/interop/test/unit/resources/spec_with_errors.rb +10 -0
- data/spec/spec/interop/test/unit/resources/spec_with_options_hash.rb +13 -0
- data/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +10 -0
- data/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +10 -0
- data/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +10 -0
- data/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +38 -0
- data/spec/spec/interop/test/unit/spec_spec.rb +52 -0
- data/spec/spec/interop/test/unit/test_unit_spec_helper.rb +14 -0
- data/spec/spec/interop/test/unit/testcase_spec.rb +49 -0
- data/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +9 -0
- data/spec/spec/matchers/be_close_spec.rb +39 -0
- data/spec/spec/matchers/be_spec.rb +248 -0
- data/spec/spec/matchers/change_spec.rb +329 -0
- data/spec/spec/matchers/description_generation_spec.rb +153 -0
- data/spec/spec/matchers/eql_spec.rb +28 -0
- data/spec/spec/matchers/equal_spec.rb +28 -0
- data/spec/spec/matchers/exist_spec.rb +57 -0
- data/spec/spec/matchers/handler_spec.rb +150 -0
- data/spec/spec/matchers/has_spec.rb +63 -0
- data/spec/spec/matchers/have_spec.rb +394 -0
- data/spec/spec/matchers/include_spec.rb +64 -0
- data/spec/spec/matchers/match_spec.rb +37 -0
- data/spec/spec/matchers/matcher_methods_spec.rb +78 -0
- data/spec/spec/matchers/mock_constraint_matchers_spec.rb +24 -0
- data/spec/spec/matchers/operator_matcher_spec.rb +191 -0
- data/spec/spec/matchers/raise_error_spec.rb +315 -0
- data/spec/spec/matchers/respond_to_spec.rb +54 -0
- data/spec/spec/matchers/satisfy_spec.rb +36 -0
- data/spec/spec/matchers/simple_matcher_spec.rb +93 -0
- data/spec/spec/matchers/throw_symbol_spec.rb +54 -0
- data/spec/spec/mocks/any_number_of_times_spec.rb +36 -0
- data/spec/spec/mocks/argument_expectation_spec.rb +23 -0
- data/spec/spec/mocks/at_least_spec.rb +97 -0
- data/spec/spec/mocks/at_most_spec.rb +93 -0
- data/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
- data/spec/spec/mocks/bug_report_10263_spec.rb +24 -0
- data/spec/spec/mocks/bug_report_11545_spec.rb +33 -0
- data/spec/spec/mocks/bug_report_15719_spec.rb +30 -0
- data/spec/spec/mocks/bug_report_496.rb +17 -0
- data/spec/spec/mocks/bug_report_7611_spec.rb +19 -0
- data/spec/spec/mocks/bug_report_7805_spec.rb +22 -0
- data/spec/spec/mocks/bug_report_8165_spec.rb +31 -0
- data/spec/spec/mocks/bug_report_8302_spec.rb +26 -0
- data/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +95 -0
- data/spec/spec/mocks/hash_including_matcher_spec.rb +53 -0
- data/spec/spec/mocks/mock_ordering_spec.rb +84 -0
- data/spec/spec/mocks/mock_space_spec.rb +54 -0
- data/spec/spec/mocks/mock_spec.rb +555 -0
- data/spec/spec/mocks/multiple_return_value_spec.rb +113 -0
- data/spec/spec/mocks/nil_expectation_warning_spec.rb +53 -0
- data/spec/spec/mocks/null_object_mock_spec.rb +54 -0
- data/spec/spec/mocks/once_counts_spec.rb +53 -0
- data/spec/spec/mocks/options_hash_spec.rb +35 -0
- data/spec/spec/mocks/partial_mock_spec.rb +149 -0
- data/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +66 -0
- data/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +130 -0
- data/spec/spec/mocks/precise_counts_spec.rb +52 -0
- data/spec/spec/mocks/record_messages_spec.rb +26 -0
- data/spec/spec/mocks/stub_spec.rb +188 -0
- data/spec/spec/mocks/twice_counts_spec.rb +67 -0
- data/spec/spec/package/bin_spec_spec.rb +22 -0
- data/spec/spec/runner/class_and_argument_parser_spec.rb +23 -0
- data/spec/spec/runner/command_line_spec.rb +141 -0
- data/spec/spec/runner/drb_command_line_spec.rb +97 -0
- data/spec/spec/runner/empty_file.txt +0 -0
- data/spec/spec/runner/examples.txt +2 -0
- data/spec/spec/runner/failed.txt +3 -0
- data/spec/spec/runner/formatter/base_formatter_spec.rb +112 -0
- data/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +45 -0
- data/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +33 -0
- data/spec/spec/runner/formatter/html_formatted-1.8.4.html +365 -0
- data/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +387 -0
- data/spec/spec/runner/formatter/html_formatted-1.8.5.html +371 -0
- data/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +381 -0
- data/spec/spec/runner/formatter/html_formatted-1.8.6.html +370 -0
- data/spec/spec/runner/formatter/html_formatter_spec.rb +61 -0
- data/spec/spec/runner/formatter/nested_text_formatter_spec.rb +318 -0
- data/spec/spec/runner/formatter/profile_formatter_spec.rb +65 -0
- data/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +155 -0
- data/spec/spec/runner/formatter/snippet_extractor_spec.rb +18 -0
- data/spec/spec/runner/formatter/spec_mate_formatter_spec.rb +103 -0
- data/spec/spec/runner/formatter/specdoc_formatter_spec.rb +159 -0
- data/spec/spec/runner/formatter/story/html_formatter_spec.rb +135 -0
- data/spec/spec/runner/formatter/story/plain_text_formatter_spec.rb +600 -0
- data/spec/spec/runner/formatter/story/progress_bar_formatter_spec.rb +82 -0
- data/spec/spec/runner/formatter/text_mate_formatted-1.8.4.html +365 -0
- data/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +370 -0
- data/spec/spec/runner/heckle_runner_spec.rb +78 -0
- data/spec/spec/runner/heckler_spec.rb +13 -0
- data/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +45 -0
- data/spec/spec/runner/option_parser_spec.rb +421 -0
- data/spec/spec/runner/options_spec.rb +450 -0
- data/spec/spec/runner/output_one_time_fixture.rb +7 -0
- data/spec/spec/runner/output_one_time_fixture_runner.rb +8 -0
- data/spec/spec/runner/output_one_time_spec.rb +16 -0
- data/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +62 -0
- data/spec/spec/runner/reporter_spec.rb +238 -0
- data/spec/spec/runner/resources/a_bar.rb +0 -0
- data/spec/spec/runner/resources/a_foo.rb +0 -0
- data/spec/spec/runner/resources/a_spec.rb +1 -0
- data/spec/spec/runner/spec.opts +2 -0
- data/spec/spec/runner/spec_drb.opts +1 -0
- data/spec/spec/runner/spec_parser/spec_parser_fixture.rb +70 -0
- data/spec/spec/runner/spec_parser_spec.rb +85 -0
- data/spec/spec/runner/spec_spaced.opts +2 -0
- data/spec/spec/runner_spec.rb +11 -0
- data/spec/spec/spec_classes.rb +133 -0
- data/spec/spec/story/builders.rb +46 -0
- data/spec/spec/story/extensions/main_spec.rb +161 -0
- data/spec/spec/story/extensions_spec.rb +14 -0
- data/spec/spec/story/given_scenario_spec.rb +27 -0
- data/spec/spec/story/runner/plain_text_story_runner_spec.rb +90 -0
- data/spec/spec/story/runner/scenario_collector_spec.rb +27 -0
- data/spec/spec/story/runner/scenario_runner_spec.rb +214 -0
- data/spec/spec/story/runner/story_mediator_spec.rb +143 -0
- data/spec/spec/story/runner/story_parser_spec.rb +401 -0
- data/spec/spec/story/runner/story_runner_spec.rb +294 -0
- data/spec/spec/story/runner_spec.rb +93 -0
- data/spec/spec/story/scenario_spec.rb +18 -0
- data/spec/spec/story/step_group_spec.rb +157 -0
- data/spec/spec/story/step_mother_spec.rb +84 -0
- data/spec/spec/story/step_spec.rb +272 -0
- data/spec/spec/story/story_helper.rb +2 -0
- data/spec/spec/story/story_spec.rb +84 -0
- data/spec/spec/story/world_spec.rb +423 -0
- data/spec/spec.opts +6 -0
- data/spec/spec_helper.rb +77 -0
- data/stories/all.rb +5 -0
- data/stories/configuration/before_blocks.story +21 -0
- data/stories/configuration/stories.rb +7 -0
- data/stories/example_groups/autogenerated_docstrings +45 -0
- data/stories/example_groups/example_group_with_should_methods +17 -0
- data/stories/example_groups/nested_groups +17 -0
- data/stories/example_groups/output +25 -0
- data/stories/example_groups/stories.rb +7 -0
- data/stories/helper.rb +6 -0
- data/stories/interop/examples_and_tests_together +30 -0
- data/stories/interop/stories.rb +7 -0
- data/stories/interop/test_case_with_should_methods +17 -0
- data/stories/mock_framework_integration/stories.rb +7 -0
- data/stories/mock_framework_integration/use_flexmock.story +9 -0
- data/stories/pending_stories/README +3 -0
- data/stories/resources/helpers/cmdline.rb +9 -0
- data/stories/resources/helpers/story_helper.rb +16 -0
- data/stories/resources/matchers/smart_match.rb +37 -0
- data/stories/resources/spec/before_blocks_example.rb +32 -0
- data/stories/resources/spec/example_group_with_should_methods.rb +12 -0
- data/stories/resources/spec/simple_spec.rb +8 -0
- data/stories/resources/spec/spec_with_flexmock.rb +18 -0
- data/stories/resources/steps/running_rspec.rb +50 -0
- data/stories/resources/stories/failing_story.rb +15 -0
- data/stories/resources/test/spec_and_test_together.rb +57 -0
- data/stories/resources/test/test_case_with_should_methods.rb +30 -0
- data/stories/stories/multiline_steps.story +23 -0
- data/stories/stories/steps/multiline_steps.rb +13 -0
- data/stories/stories/stories.rb +6 -0
- data/story_server/prototype/javascripts/builder.js +136 -0
- data/story_server/prototype/javascripts/controls.js +972 -0
- data/story_server/prototype/javascripts/dragdrop.js +976 -0
- data/story_server/prototype/javascripts/effects.js +1117 -0
- data/story_server/prototype/javascripts/prototype.js +4140 -0
- data/story_server/prototype/javascripts/rspec.js +149 -0
- data/story_server/prototype/javascripts/scriptaculous.js +58 -0
- data/story_server/prototype/javascripts/slider.js +276 -0
- data/story_server/prototype/javascripts/sound.js +55 -0
- data/story_server/prototype/javascripts/unittest.js +568 -0
- data/story_server/prototype/lib/server.rb +24 -0
- data/story_server/prototype/stories.html +176 -0
- data/story_server/prototype/stylesheets/rspec.css +136 -0
- data/story_server/prototype/stylesheets/test.css +90 -0
- metadata +495 -0
@@ -0,0 +1,25 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper'
|
2
|
+
|
3
|
+
module Spec
|
4
|
+
module Example
|
5
|
+
class GrandParentExampleGroup < Spec::Example::ExampleGroup
|
6
|
+
describe "Grandparent ExampleGroup"
|
7
|
+
end
|
8
|
+
|
9
|
+
class ParentExampleGroup < GrandParentExampleGroup
|
10
|
+
describe "Parent ExampleGroup"
|
11
|
+
it "should bar" do
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
class ChildExampleGroup < ParentExampleGroup
|
16
|
+
describe "Child ExampleGroup"
|
17
|
+
it "should bam" do
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
describe ChildExampleGroup do
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,127 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
2
|
+
|
3
|
+
module Spec
|
4
|
+
module Fixtures
|
5
|
+
class Animal
|
6
|
+
def initialize(name,species)
|
7
|
+
@name,@species = name,species
|
8
|
+
end
|
9
|
+
|
10
|
+
def inspect
|
11
|
+
<<-EOA
|
12
|
+
<Animal
|
13
|
+
name=#{@name},
|
14
|
+
species=#{@species}
|
15
|
+
>
|
16
|
+
EOA
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe "Diff" do
|
23
|
+
before(:each) do
|
24
|
+
@options = ::Spec::Runner::Options.new(StringIO.new, StringIO.new)
|
25
|
+
@differ = Spec::Expectations::Differs::Default.new(@options)
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should output unified diff of two strings" do
|
29
|
+
expected="foo\nbar\nzap\nthis\nis\nsoo\nvery\nvery\nequal\ninsert\na\nline\n"
|
30
|
+
actual="foo\nzap\nbar\nthis\nis\nsoo\nvery\nvery\nequal\ninsert\na\nanother\nline\n"
|
31
|
+
expected_diff= <<'EOD'
|
32
|
+
|
33
|
+
|
34
|
+
@@ -1,6 +1,6 @@
|
35
|
+
foo
|
36
|
+
-zap
|
37
|
+
bar
|
38
|
+
+zap
|
39
|
+
this
|
40
|
+
is
|
41
|
+
soo
|
42
|
+
@@ -9,6 +9,5 @@
|
43
|
+
equal
|
44
|
+
insert
|
45
|
+
a
|
46
|
+
-another
|
47
|
+
line
|
48
|
+
EOD
|
49
|
+
|
50
|
+
diff = @differ.diff_as_string(expected, actual)
|
51
|
+
diff.should eql(expected_diff)
|
52
|
+
end
|
53
|
+
|
54
|
+
it "should output unified diff message of two arrays" do
|
55
|
+
expected = [ :foo, 'bar', :baz, 'quux', :metasyntactic, 'variable', :delta, 'charlie', :width, 'quite wide' ]
|
56
|
+
actual = [ :foo, 'bar', :baz, 'quux', :metasyntactic, 'variable', :delta, 'tango' , :width, 'very wide' ]
|
57
|
+
|
58
|
+
expected_diff = <<'EOD'
|
59
|
+
|
60
|
+
|
61
|
+
@@ -5,7 +5,7 @@
|
62
|
+
:metasyntactic,
|
63
|
+
"variable",
|
64
|
+
:delta,
|
65
|
+
- "tango",
|
66
|
+
+ "charlie",
|
67
|
+
:width,
|
68
|
+
- "very wide"]
|
69
|
+
+ "quite wide"]
|
70
|
+
EOD
|
71
|
+
|
72
|
+
|
73
|
+
diff = @differ.diff_as_object(expected,actual)
|
74
|
+
diff.should == expected_diff
|
75
|
+
end
|
76
|
+
|
77
|
+
it "should output unified diff message of two objects" do
|
78
|
+
expected = Spec::Fixtures::Animal.new "bob", "giraffe"
|
79
|
+
actual = Spec::Fixtures::Animal.new "bob", "tortoise"
|
80
|
+
|
81
|
+
expected_diff = <<'EOD'
|
82
|
+
|
83
|
+
@@ -1,5 +1,5 @@
|
84
|
+
<Animal
|
85
|
+
name=bob,
|
86
|
+
- species=tortoise
|
87
|
+
+ species=giraffe
|
88
|
+
>
|
89
|
+
EOD
|
90
|
+
|
91
|
+
diff = @differ.diff_as_object(expected,actual)
|
92
|
+
diff.should == expected_diff
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
|
97
|
+
|
98
|
+
describe "Diff in context format" do
|
99
|
+
before(:each) do
|
100
|
+
@options = Spec::Runner::Options.new(StringIO.new, StringIO.new)
|
101
|
+
@options.diff_format = :context
|
102
|
+
@differ = Spec::Expectations::Differs::Default.new(@options)
|
103
|
+
end
|
104
|
+
|
105
|
+
it "should output unified diff message of two objects" do
|
106
|
+
expected = Spec::Fixtures::Animal.new "bob", "giraffe"
|
107
|
+
actual = Spec::Fixtures::Animal.new "bob", "tortoise"
|
108
|
+
|
109
|
+
expected_diff = <<'EOD'
|
110
|
+
|
111
|
+
***************
|
112
|
+
*** 1,5 ****
|
113
|
+
<Animal
|
114
|
+
name=bob,
|
115
|
+
! species=tortoise
|
116
|
+
>
|
117
|
+
--- 1,5 ----
|
118
|
+
<Animal
|
119
|
+
name=bob,
|
120
|
+
! species=giraffe
|
121
|
+
>
|
122
|
+
EOD
|
123
|
+
|
124
|
+
diff = @differ.diff_as_object(expected,actual)
|
125
|
+
diff.should == expected_diff
|
126
|
+
end
|
127
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../../spec_helper.rb'
|
2
|
+
|
3
|
+
describe Object, "#should" do
|
4
|
+
before(:each) do
|
5
|
+
@target = "target"
|
6
|
+
@matcher = mock("matcher")
|
7
|
+
@matcher.stub!(:matches?).and_return(true)
|
8
|
+
@matcher.stub!(:failure_message)
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should accept and interact with a matcher" do
|
12
|
+
@matcher.should_receive(:matches?).with(@target).and_return(true)
|
13
|
+
@target.should @matcher
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should ask for a failure_message when matches? returns false" do
|
17
|
+
@matcher.should_receive(:matches?).with(@target).and_return(false)
|
18
|
+
@matcher.should_receive(:failure_message).and_return("the failure message")
|
19
|
+
lambda {
|
20
|
+
@target.should @matcher
|
21
|
+
}.should fail_with("the failure message")
|
22
|
+
end
|
23
|
+
|
24
|
+
it "should raise error if it receives false directly" do
|
25
|
+
lambda {
|
26
|
+
@target.should false
|
27
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
28
|
+
end
|
29
|
+
|
30
|
+
it "should raise error if it receives false (evaluated)" do
|
31
|
+
lambda {
|
32
|
+
@target.should eql?("foo")
|
33
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
34
|
+
end
|
35
|
+
|
36
|
+
it "should raise error if it receives true" do
|
37
|
+
lambda {
|
38
|
+
@target.should true
|
39
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
40
|
+
end
|
41
|
+
|
42
|
+
it "should raise error if it receives no argument and it is not used as a left side of an operator" do
|
43
|
+
pending "Is it even possible to catch this?"
|
44
|
+
lambda {
|
45
|
+
@target.should
|
46
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
describe Object, "#should_not" do
|
51
|
+
before(:each) do
|
52
|
+
@target = "target"
|
53
|
+
@matcher = mock("matcher")
|
54
|
+
end
|
55
|
+
|
56
|
+
it "should accept and interact with a matcher" do
|
57
|
+
@matcher.should_receive(:matches?).with(@target).and_return(false)
|
58
|
+
@matcher.stub!(:negative_failure_message)
|
59
|
+
|
60
|
+
@target.should_not @matcher
|
61
|
+
end
|
62
|
+
|
63
|
+
it "should ask for a negative_failure_message when matches? returns true" do
|
64
|
+
@matcher.should_receive(:matches?).with(@target).and_return(true)
|
65
|
+
@matcher.should_receive(:negative_failure_message).and_return("the negative failure message")
|
66
|
+
lambda {
|
67
|
+
@target.should_not @matcher
|
68
|
+
}.should fail_with("the negative failure message")
|
69
|
+
end
|
70
|
+
|
71
|
+
it "should raise error if it receives false directly" do
|
72
|
+
lambda {
|
73
|
+
@target.should_not false
|
74
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
75
|
+
end
|
76
|
+
|
77
|
+
it "should raise error if it receives false (evaluated)" do
|
78
|
+
lambda {
|
79
|
+
@target.should_not eql?("foo")
|
80
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
81
|
+
end
|
82
|
+
|
83
|
+
it "should raise error if it receives true" do
|
84
|
+
lambda {
|
85
|
+
@target.should_not true
|
86
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
87
|
+
end
|
88
|
+
|
89
|
+
it "should raise error if it receives no argument and it is not used as a left side of an operator" do
|
90
|
+
pending "Is it even possible to catch this?"
|
91
|
+
lambda {
|
92
|
+
@target.should_not
|
93
|
+
}.should raise_error(Spec::Expectations::InvalidMatcherError)
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
2
|
+
|
3
|
+
describe Spec::Expectations, "#fail_with with no diff" do
|
4
|
+
before(:each) do
|
5
|
+
@old_differ = Spec::Expectations.differ
|
6
|
+
Spec::Expectations.differ = nil
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should handle just a message" do
|
10
|
+
lambda {
|
11
|
+
Spec::Expectations.fail_with "the message"
|
12
|
+
}.should fail_with("the message")
|
13
|
+
end
|
14
|
+
|
15
|
+
it "should handle an Array" do
|
16
|
+
lambda {
|
17
|
+
Spec::Expectations.fail_with ["the message","expected","actual"]
|
18
|
+
}.should fail_with("the message")
|
19
|
+
end
|
20
|
+
|
21
|
+
after(:each) do
|
22
|
+
Spec::Expectations.differ = @old_differ
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
describe Spec::Expectations, "#fail_with with diff" do
|
27
|
+
before(:each) do
|
28
|
+
@old_differ = Spec::Expectations.differ
|
29
|
+
@differ = mock("differ")
|
30
|
+
Spec::Expectations.differ = @differ
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should not call differ if no expected/actual" do
|
34
|
+
lambda {
|
35
|
+
Spec::Expectations.fail_with "the message"
|
36
|
+
}.should fail_with("the message")
|
37
|
+
end
|
38
|
+
|
39
|
+
it "should call differ if expected/actual are presented separately" do
|
40
|
+
@differ.should_receive(:diff_as_string).and_return("diff")
|
41
|
+
lambda {
|
42
|
+
Spec::Expectations.fail_with "the message", "expected", "actual"
|
43
|
+
}.should fail_with("the message\nDiff:diff")
|
44
|
+
end
|
45
|
+
|
46
|
+
it "should call differ if expected/actual are not strings" do
|
47
|
+
@differ.should_receive(:diff_as_object).and_return("diff")
|
48
|
+
lambda {
|
49
|
+
Spec::Expectations.fail_with "the message", :expected, :actual
|
50
|
+
}.should fail_with("the message\nDiff:diff")
|
51
|
+
end
|
52
|
+
|
53
|
+
it "should not call differ if expected or actual are procs" do
|
54
|
+
@differ.should_not_receive(:diff_as_string)
|
55
|
+
@differ.should_not_receive(:diff_as_object)
|
56
|
+
lambda {
|
57
|
+
Spec::Expectations.fail_with "the message", lambda {}, lambda {}
|
58
|
+
}.should fail_with("the message")
|
59
|
+
end
|
60
|
+
|
61
|
+
it "should call differ if expected/actual are presented in an Array with message" do
|
62
|
+
@differ.should_receive(:diff_as_string).with("actual","expected").and_return("diff")
|
63
|
+
lambda {
|
64
|
+
Spec::Expectations.fail_with(["the message", "expected", "actual"])
|
65
|
+
}.should fail_with(/the message\nDiff:diff/)
|
66
|
+
end
|
67
|
+
|
68
|
+
after(:each) do
|
69
|
+
Spec::Expectations.differ = @old_differ
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/../../spec_helper.rb'
|
2
|
+
|
3
|
+
module Spec
|
4
|
+
module Extensions
|
5
|
+
describe Main do
|
6
|
+
before(:each) do
|
7
|
+
@main = Class.new do; include Main; end
|
8
|
+
end
|
9
|
+
|
10
|
+
after(:each) do
|
11
|
+
$rspec_story_steps = @original_rspec_story_steps
|
12
|
+
end
|
13
|
+
|
14
|
+
[:describe, :context].each do |method|
|
15
|
+
describe "##{method}" do
|
16
|
+
specify {@main.should respond_to(method)}
|
17
|
+
|
18
|
+
it "should raise when no block is given to #{method}" do
|
19
|
+
lambda { @main.__send__ method, "foo" }.should raise_error(ArgumentError)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "should raise when no description is given to #{method}" do
|
23
|
+
lambda { @main.__send__ method do; end }.should raise_error(ArgumentError)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "should run registered ExampleGroups" do
|
27
|
+
example_group = @main.__send__ method, "The ExampleGroup" do end
|
28
|
+
Spec::Runner.options.example_groups.should include(example_group)
|
29
|
+
end
|
30
|
+
|
31
|
+
it "should not run unregistered ExampleGroups" do
|
32
|
+
example_group = @main.__send__ method, "The ExampleGroup" do unregister; end
|
33
|
+
Spec::Runner.options.example_groups.should_not include(example_group)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
describe "#share_examples_for" do
|
39
|
+
it "should create a shared ExampleGroup" do
|
40
|
+
group = @main.share_examples_for "all things" do end
|
41
|
+
group.should be_an_instance_of(Spec::Example::SharedExampleGroup)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
describe "#share_as" do
|
46
|
+
before(:each) do
|
47
|
+
$share_as_examples_example_module_number ||= 1
|
48
|
+
$share_as_examples_example_module_number += 1
|
49
|
+
@group_name = "Group#{$share_as_examples_example_module_number}"
|
50
|
+
end
|
51
|
+
|
52
|
+
it "should create a shared ExampleGroup" do
|
53
|
+
group = @main.share_as @group_name do end
|
54
|
+
group.should be_an_instance_of(Spec::Example::SharedExampleGroup)
|
55
|
+
end
|
56
|
+
|
57
|
+
it "should create a constant that points to a Module" do
|
58
|
+
group = @main.share_as @group_name do end
|
59
|
+
Object.const_get(@group_name).should equal(group)
|
60
|
+
end
|
61
|
+
|
62
|
+
it "should bark if you pass it something not-constantizable" do
|
63
|
+
lambda do
|
64
|
+
@group = @main.share_as "Non Constant" do end
|
65
|
+
end.should raise_error(NameError, /The first argument to share_as must be a legal name for a constant/)
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
rspec_lib = File.dirname(__FILE__) + "/../../../../../../lib"
|
2
|
+
$:.unshift rspec_lib unless $:.include?(rspec_lib)
|
3
|
+
require 'test/unit'
|
4
|
+
require 'spec'
|
5
|
+
|
6
|
+
describe "example group with passing examples" do
|
7
|
+
it "should pass" do
|
8
|
+
true.should be_true
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
rspec_lib = File.dirname(__FILE__) + "/../../../../../../lib"
|
2
|
+
$:.unshift rspec_lib unless $:.include?(rspec_lib)
|
3
|
+
require 'test/unit'
|
4
|
+
require 'spec'
|
5
|
+
|
6
|
+
describe "example group with errors" do
|
7
|
+
it "should raise errors" do
|
8
|
+
raise "error raised in example group with errors"
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
rspec_lib = File.dirname(__FILE__) + "/../../../../../../lib"
|
2
|
+
$:.unshift rspec_lib unless $:.include?(rspec_lib)
|
3
|
+
require 'test/unit'
|
4
|
+
require 'spec'
|
5
|
+
|
6
|
+
describe "options hash" do
|
7
|
+
describe "#options" do
|
8
|
+
it "should expose the options hash" do
|
9
|
+
group = describe("group", :this => 'hash') {}
|
10
|
+
group.options[:this].should == 'hash'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
rspec_lib = File.dirname(__FILE__) + "/../../../../../../lib"
|
2
|
+
$:.unshift rspec_lib unless $:.include?(rspec_lib)
|
3
|
+
require 'test/unit'
|
4
|
+
require 'spec'
|
5
|
+
|
6
|
+
class TestCaseThatFails < Test::Unit::TestCase
|
7
|
+
def test_that_fails
|
8
|
+
false.should be_true
|
9
|
+
end
|
10
|
+
end
|