You are viewing a plain text version of this content. The canonical link for it is here.
Posted to olio-commits@incubator.apache.org by ws...@apache.org on 2008/12/11 01:34:30 UTC

svn commit: r725524 [6/14] - in /incubator/olio/webapp/rails/trunk: app/controllers/ app/models/ app/views/events/ config/ config/environments/ spec/controllers/ spec/models/ vendor/plugins/attachment_fu/ vendor/plugins/attachment_fu/lib/ vendor/plugin...

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Manifest.txt
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Manifest.txt?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Manifest.txt (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Manifest.txt Wed Dec 10 17:34:18 2008
@@ -0,0 +1,389 @@
+.autotest
+History.txt
+License.txt
+Manifest.txt
+README.txt
+Rakefile
+TODO.txt
+bin/autospec
+bin/spec
+examples/failing/README.txt
+examples/failing/diffing_spec.rb
+examples/failing/failing_autogenerated_docstrings_example.rb
+examples/failing/failure_in_setup.rb
+examples/failing/failure_in_teardown.rb
+examples/failing/mocking_example.rb
+examples/failing/mocking_with_flexmock.rb
+examples/failing/mocking_with_mocha.rb
+examples/failing/mocking_with_rr.rb
+examples/failing/partial_mock_example.rb
+examples/failing/predicate_example.rb
+examples/failing/raising_example.rb
+examples/failing/spec_helper.rb
+examples/failing/syntax_error_example.rb
+examples/failing/team_spec.rb
+examples/failing/timeout_behaviour.rb
+examples/passing/autogenerated_docstrings_example.rb
+examples/passing/before_and_after_example.rb
+examples/passing/behave_as_example.rb
+examples/passing/custom_expectation_matchers.rb
+examples/passing/custom_formatter.rb
+examples/passing/dynamic_spec.rb
+examples/passing/file_accessor.rb
+examples/passing/file_accessor_spec.rb
+examples/passing/greeter_spec.rb
+examples/passing/helper_method_example.rb
+examples/passing/io_processor.rb
+examples/passing/io_processor_spec.rb
+examples/passing/legacy_spec.rb
+examples/passing/mocking_example.rb
+examples/passing/multi_threaded_behaviour_runner.rb
+examples/passing/nested_classes_example.rb
+examples/passing/partial_mock_example.rb
+examples/passing/pending_example.rb
+examples/passing/predicate_example.rb
+examples/passing/priority.txt
+examples/passing/shared_example_group_example.rb
+examples/passing/shared_stack_examples.rb
+examples/passing/simple_matcher_example.rb
+examples/passing/spec_helper.rb
+examples/passing/stack.rb
+examples/passing/stack_spec.rb
+examples/passing/stack_spec_with_nested_example_groups.rb
+examples/passing/stubbing_example.rb
+examples/passing/yielding_example.rb
+init.rb
+lib/autotest/discover.rb
+lib/autotest/rspec.rb
+lib/spec.rb
+lib/spec/adapters.rb
+lib/spec/adapters/ruby_engine.rb
+lib/spec/adapters/ruby_engine/mri.rb
+lib/spec/adapters/ruby_engine/rubinius.rb
+lib/spec/dsl.rb
+lib/spec/dsl/main.rb
+lib/spec/example.rb
+lib/spec/example/before_and_after_hooks.rb
+lib/spec/example/configuration.rb
+lib/spec/example/errors.rb
+lib/spec/example/example_group.rb
+lib/spec/example/example_group_factory.rb
+lib/spec/example/example_group_methods.rb
+lib/spec/example/example_matcher.rb
+lib/spec/example/example_methods.rb
+lib/spec/example/module_reopening_fix.rb
+lib/spec/example/pending.rb
+lib/spec/example/shared_example_group.rb
+lib/spec/expectations.rb
+lib/spec/expectations/differs/default.rb
+lib/spec/expectations/errors.rb
+lib/spec/expectations/extensions.rb
+lib/spec/expectations/extensions/object.rb
+lib/spec/expectations/extensions/string_and_symbol.rb
+lib/spec/expectations/handler.rb
+lib/spec/expectations/wrap_expectation.rb
+lib/spec/interop/test.rb
+lib/spec/interop/test/unit/autorunner.rb
+lib/spec/interop/test/unit/testcase.rb
+lib/spec/interop/test/unit/testresult.rb
+lib/spec/interop/test/unit/testsuite_adapter.rb
+lib/spec/interop/test/unit/ui/console/testrunner.rb
+lib/spec/matchers.rb
+lib/spec/matchers/be.rb
+lib/spec/matchers/be_close.rb
+lib/spec/matchers/change.rb
+lib/spec/matchers/eql.rb
+lib/spec/matchers/equal.rb
+lib/spec/matchers/errors.rb
+lib/spec/matchers/exist.rb
+lib/spec/matchers/generated_descriptions.rb
+lib/spec/matchers/has.rb
+lib/spec/matchers/have.rb
+lib/spec/matchers/include.rb
+lib/spec/matchers/match.rb
+lib/spec/matchers/match_array.rb
+lib/spec/matchers/method_missing.rb
+lib/spec/matchers/operator_matcher.rb
+lib/spec/matchers/raise_error.rb
+lib/spec/matchers/respond_to.rb
+lib/spec/matchers/satisfy.rb
+lib/spec/matchers/simple_matcher.rb
+lib/spec/matchers/throw_symbol.rb
+lib/spec/mocks.rb
+lib/spec/mocks/argument_constraints.rb
+lib/spec/mocks/argument_expectation.rb
+lib/spec/mocks/error_generator.rb
+lib/spec/mocks/errors.rb
+lib/spec/mocks/extensions.rb
+lib/spec/mocks/extensions/object.rb
+lib/spec/mocks/framework.rb
+lib/spec/mocks/message_expectation.rb
+lib/spec/mocks/methods.rb
+lib/spec/mocks/mock.rb
+lib/spec/mocks/order_group.rb
+lib/spec/mocks/proxy.rb
+lib/spec/mocks/space.rb
+lib/spec/mocks/spec_methods.rb
+lib/spec/rake/spectask.rb
+lib/spec/rake/verify_rcov.rb
+lib/spec/runner.rb
+lib/spec/runner/backtrace_tweaker.rb
+lib/spec/runner/class_and_arguments_parser.rb
+lib/spec/runner/command_line.rb
+lib/spec/runner/drb_command_line.rb
+lib/spec/runner/example_group_runner.rb
+lib/spec/runner/formatter/base_formatter.rb
+lib/spec/runner/formatter/base_text_formatter.rb
+lib/spec/runner/formatter/failing_example_groups_formatter.rb
+lib/spec/runner/formatter/failing_examples_formatter.rb
+lib/spec/runner/formatter/html_formatter.rb
+lib/spec/runner/formatter/nested_text_formatter.rb
+lib/spec/runner/formatter/profile_formatter.rb
+lib/spec/runner/formatter/progress_bar_formatter.rb
+lib/spec/runner/formatter/snippet_extractor.rb
+lib/spec/runner/formatter/specdoc_formatter.rb
+lib/spec/runner/formatter/story/html_formatter.rb
+lib/spec/runner/formatter/story/plain_text_formatter.rb
+lib/spec/runner/formatter/story/progress_bar_formatter.rb
+lib/spec/runner/formatter/text_mate_formatter.rb
+lib/spec/runner/heckle_runner.rb
+lib/spec/runner/heckle_runner_unsupported.rb
+lib/spec/runner/option_parser.rb
+lib/spec/runner/options.rb
+lib/spec/runner/reporter.rb
+lib/spec/runner/spec_parser.rb
+lib/spec/story.rb
+lib/spec/story/extensions.rb
+lib/spec/story/extensions/main.rb
+lib/spec/story/extensions/regexp.rb
+lib/spec/story/extensions/string.rb
+lib/spec/story/given_scenario.rb
+lib/spec/story/runner.rb
+lib/spec/story/runner/plain_text_story_runner.rb
+lib/spec/story/runner/scenario_collector.rb
+lib/spec/story/runner/scenario_runner.rb
+lib/spec/story/runner/story_mediator.rb
+lib/spec/story/runner/story_parser.rb
+lib/spec/story/runner/story_runner.rb
+lib/spec/story/scenario.rb
+lib/spec/story/step.rb
+lib/spec/story/step_group.rb
+lib/spec/story/step_mother.rb
+lib/spec/story/story.rb
+lib/spec/story/world.rb
+lib/spec/version.rb
+plugins/mock_frameworks/flexmock.rb
+plugins/mock_frameworks/mocha.rb
+plugins/mock_frameworks/rr.rb
+plugins/mock_frameworks/rspec.rb
+rake_tasks/examples.rake
+rake_tasks/examples_with_rcov.rake
+rake_tasks/failing_examples_with_html.rake
+rake_tasks/verify_rcov.rake
+rspec.gemspec
+spec/README.jruby
+spec/autotest/autotest_helper.rb
+spec/autotest/autotest_matchers.rb
+spec/autotest/discover_spec.rb
+spec/autotest/failed_results_re_spec.rb
+spec/autotest/rspec_spec.rb
+spec/rspec_suite.rb
+spec/ruby_forker.rb
+spec/spec.opts
+spec/spec/adapters/ruby_engine_spec.rb
+spec/spec/dsl/main_spec.rb
+spec/spec/example/configuration_spec.rb
+spec/spec/example/example_group_class_definition_spec.rb
+spec/spec/example/example_group_factory_spec.rb
+spec/spec/example/example_group_methods_spec.rb
+spec/spec/example/example_group_spec.rb
+spec/spec/example/example_matcher_spec.rb
+spec/spec/example/example_methods_spec.rb
+spec/spec/example/example_runner_spec.rb
+spec/spec/example/helper_method_spec.rb
+spec/spec/example/nested_example_group_spec.rb
+spec/spec/example/pending_module_spec.rb
+spec/spec/example/predicate_matcher_spec.rb
+spec/spec/example/shared_example_group_spec.rb
+spec/spec/example/subclassing_example_group_spec.rb
+spec/spec/expectations/differs/default_spec.rb
+spec/spec/expectations/extensions/object_spec.rb
+spec/spec/expectations/fail_with_spec.rb
+spec/spec/expectations/wrap_expectation_spec.rb
+spec/spec/interop/test/unit/resources/spec_that_fails.rb
+spec/spec/interop/test/unit/resources/spec_that_passes.rb
+spec/spec/interop/test/unit/resources/spec_with_errors.rb
+spec/spec/interop/test/unit/resources/spec_with_options_hash.rb
+spec/spec/interop/test/unit/resources/test_case_that_fails.rb
+spec/spec/interop/test/unit/resources/test_case_that_passes.rb
+spec/spec/interop/test/unit/resources/test_case_with_errors.rb
+spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb
+spec/spec/interop/test/unit/spec_spec.rb
+spec/spec/interop/test/unit/test_unit_spec_helper.rb
+spec/spec/interop/test/unit/testcase_spec.rb
+spec/spec/interop/test/unit/testsuite_adapter_spec.rb
+spec/spec/matchers/be_close_spec.rb
+spec/spec/matchers/be_spec.rb
+spec/spec/matchers/change_spec.rb
+spec/spec/matchers/description_generation_spec.rb
+spec/spec/matchers/eql_spec.rb
+spec/spec/matchers/equal_spec.rb
+spec/spec/matchers/exist_spec.rb
+spec/spec/matchers/handler_spec.rb
+spec/spec/matchers/has_spec.rb
+spec/spec/matchers/have_spec.rb
+spec/spec/matchers/include_spec.rb
+spec/spec/matchers/match_array_spec.rb
+spec/spec/matchers/match_spec.rb
+spec/spec/matchers/matcher_methods_spec.rb
+spec/spec/matchers/mock_constraint_matchers_spec.rb
+spec/spec/matchers/operator_matcher_spec.rb
+spec/spec/matchers/raise_error_spec.rb
+spec/spec/matchers/respond_to_spec.rb
+spec/spec/matchers/satisfy_spec.rb
+spec/spec/matchers/simple_matcher_spec.rb
+spec/spec/matchers/throw_symbol_spec.rb
+spec/spec/mocks/any_number_of_times_spec.rb
+spec/spec/mocks/argument_expectation_spec.rb
+spec/spec/mocks/at_least_spec.rb
+spec/spec/mocks/at_most_spec.rb
+spec/spec/mocks/bug_report_10260_spec.rb
+spec/spec/mocks/bug_report_10263_spec.rb
+spec/spec/mocks/bug_report_11545_spec.rb
+spec/spec/mocks/bug_report_15719_spec.rb
+spec/spec/mocks/bug_report_496.rb
+spec/spec/mocks/bug_report_600_spec.rb
+spec/spec/mocks/bug_report_7611_spec.rb
+spec/spec/mocks/bug_report_7805_spec.rb
+spec/spec/mocks/bug_report_8165_spec.rb
+spec/spec/mocks/bug_report_8302_spec.rb
+spec/spec/mocks/failing_mock_argument_constraints_spec.rb
+spec/spec/mocks/hash_including_matcher_spec.rb
+spec/spec/mocks/mock_ordering_spec.rb
+spec/spec/mocks/mock_space_spec.rb
+spec/spec/mocks/mock_spec.rb
+spec/spec/mocks/multiple_return_value_spec.rb
+spec/spec/mocks/nil_expectation_warning_spec.rb
+spec/spec/mocks/null_object_mock_spec.rb
+spec/spec/mocks/once_counts_spec.rb
+spec/spec/mocks/options_hash_spec.rb
+spec/spec/mocks/partial_mock_spec.rb
+spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb
+spec/spec/mocks/passing_mock_argument_constraints_spec.rb
+spec/spec/mocks/precise_counts_spec.rb
+spec/spec/mocks/record_messages_spec.rb
+spec/spec/mocks/stub_spec.rb
+spec/spec/mocks/twice_counts_spec.rb
+spec/spec/package/bin_spec_spec.rb
+spec/spec/runner/class_and_argument_parser_spec.rb
+spec/spec/runner/command_line_spec.rb
+spec/spec/runner/drb_command_line_spec.rb
+spec/spec/runner/empty_file.txt
+spec/spec/runner/examples.txt
+spec/spec/runner/failed.txt
+spec/spec/runner/formatter/base_formatter_spec.rb
+spec/spec/runner/formatter/base_text_formatter_spec.rb
+spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb
+spec/spec/runner/formatter/failing_examples_formatter_spec.rb
+spec/spec/runner/formatter/html_formatted-1.8.4.html
+spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html
+spec/spec/runner/formatter/html_formatted-1.8.5.html
+spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html
+spec/spec/runner/formatter/html_formatted-1.8.6.html
+spec/spec/runner/formatter/html_formatter_spec.rb
+spec/spec/runner/formatter/nested_text_formatter_spec.rb
+spec/spec/runner/formatter/profile_formatter_spec.rb
+spec/spec/runner/formatter/progress_bar_formatter_spec.rb
+spec/spec/runner/formatter/snippet_extractor_spec.rb
+spec/spec/runner/formatter/spec_mate_formatter_spec.rb
+spec/spec/runner/formatter/specdoc_formatter_spec.rb
+spec/spec/runner/formatter/story/html_formatter_spec.rb
+spec/spec/runner/formatter/story/plain_text_formatter_spec.rb
+spec/spec/runner/formatter/story/progress_bar_formatter_spec.rb
+spec/spec/runner/formatter/text_mate_formatted-1.8.4.html
+spec/spec/runner/formatter/text_mate_formatted-1.8.6.html
+spec/spec/runner/heckle_runner_spec.rb
+spec/spec/runner/heckler_spec.rb
+spec/spec/runner/noisy_backtrace_tweaker_spec.rb
+spec/spec/runner/option_parser_spec.rb
+spec/spec/runner/options_spec.rb
+spec/spec/runner/output_one_time_fixture.rb
+spec/spec/runner/output_one_time_fixture_runner.rb
+spec/spec/runner/output_one_time_spec.rb
+spec/spec/runner/quiet_backtrace_tweaker_spec.rb
+spec/spec/runner/reporter_spec.rb
+spec/spec/runner/resources/a_bar.rb
+spec/spec/runner/resources/a_foo.rb
+spec/spec/runner/resources/a_spec.rb
+spec/spec/runner/spec.opts
+spec/spec/runner/spec_drb.opts
+spec/spec/runner/spec_parser/spec_parser_fixture.rb
+spec/spec/runner/spec_parser_spec.rb
+spec/spec/runner/spec_spaced.opts
+spec/spec/runner_spec.rb
+spec/spec/spec_classes.rb
+spec/spec/spec_spec.rb
+spec/spec/story/builders.rb
+spec/spec/story/extensions/main_spec.rb
+spec/spec/story/extensions_spec.rb
+spec/spec/story/given_scenario_spec.rb
+spec/spec/story/runner/plain_text_story_runner_spec.rb
+spec/spec/story/runner/scenario_collector_spec.rb
+spec/spec/story/runner/scenario_runner_spec.rb
+spec/spec/story/runner/story_mediator_spec.rb
+spec/spec/story/runner/story_parser_spec.rb
+spec/spec/story/runner/story_runner_spec.rb
+spec/spec/story/runner_spec.rb
+spec/spec/story/scenario_spec.rb
+spec/spec/story/step_group_spec.rb
+spec/spec/story/step_mother_spec.rb
+spec/spec/story/step_spec.rb
+spec/spec/story/story_helper.rb
+spec/spec/story/story_spec.rb
+spec/spec/story/world_spec.rb
+spec/spec_helper.rb
+stories/all.rb
+stories/configuration/before_blocks.story
+stories/configuration/stories.rb
+stories/example_groups/autogenerated_docstrings
+stories/example_groups/example_group_with_should_methods
+stories/example_groups/nested_groups
+stories/example_groups/output
+stories/example_groups/stories.rb
+stories/helper.rb
+stories/interop/examples_and_tests_together
+stories/interop/stories.rb
+stories/interop/test_but_not_test_unit
+stories/interop/test_case_with_should_methods
+stories/mock_framework_integration/stories.rb
+stories/mock_framework_integration/use_flexmock.story
+stories/pending_stories/README
+stories/resources/helpers/cmdline.rb
+stories/resources/helpers/story_helper.rb
+stories/resources/matchers/smart_match.rb
+stories/resources/spec/before_blocks_example.rb
+stories/resources/spec/example_group_with_should_methods.rb
+stories/resources/spec/simple_spec.rb
+stories/resources/spec/spec_with_flexmock.rb
+stories/resources/steps/running_rspec.rb
+stories/resources/stories/failing_story.rb
+stories/resources/test/spec_and_test_together.rb
+stories/resources/test/spec_including_test_but_not_unit.rb
+stories/resources/test/test_case_with_should_methods.rb
+stories/stories/multiline_steps.story
+stories/stories/steps/multiline_steps.rb
+stories/stories/stories.rb
+story_server/prototype/javascripts/builder.js
+story_server/prototype/javascripts/controls.js
+story_server/prototype/javascripts/dragdrop.js
+story_server/prototype/javascripts/effects.js
+story_server/prototype/javascripts/prototype.js
+story_server/prototype/javascripts/rspec.js
+story_server/prototype/javascripts/scriptaculous.js
+story_server/prototype/javascripts/slider.js
+story_server/prototype/javascripts/sound.js
+story_server/prototype/javascripts/unittest.js
+story_server/prototype/lib/server.rb
+story_server/prototype/stories.html
+story_server/prototype/stylesheets/rspec.css
+story_server/prototype/stylesheets/test.css

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/README.txt
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/README.txt?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/README.txt (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/README.txt Wed Dec 10 17:34:18 2008
@@ -0,0 +1,39 @@
+= RSpec
+
+* http://rspec.info
+* http://rspec.info/rdoc/
+* http://rubyforge.org/projects/rspec
+* http://github.com/dchelimsky/rspec/wikis
+* mailto:rspec-devel@rubyforge.org
+
+== DESCRIPTION:
+
+RSpec is a Behaviour Driven Development framework with tools to express User
+Stories with Executable Scenarios and Executable Examples at the code level.
+
+== FEATURES:
+
+* Spec::Story provides a framework for expressing User Stories and Scenarios
+* Spec::Example provides a framework for expressing Isolated Examples
+* Spec::Matchers provides Expression Matchers for use with Spec::Expectations and Spec::Mocks.
+
+== SYNOPSIS:
+
+Spec::Expectations supports setting expectations on your objects so you
+can do things like:
+
+  result.should equal(expected_result)
+  
+Spec::Mocks supports creating Mock Objects, Stubs, and adding Mock/Stub
+behaviour to your existing objects.
+
+== INSTALL:
+
+  [sudo] gem install rspec
+
+ or
+
+  git clone git://github.com/dchelimsky/rspec.git
+  cd rspec
+  rake gem
+  rake install_gem

Modified: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Rakefile
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Rakefile?rev=725524&r1=725523&r2=725524&view=diff
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Rakefile (original)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/Rakefile Wed Dec 10 17:34:18 2008
@@ -1,105 +1,60 @@
-$:.unshift('lib')
+# -*- ruby -*-
+
+$:.unshift(File.join(File.dirname(__FILE__), 'lib'))
 require 'rubygems'
-require 'rake/gempackagetask'
-require 'rake/contrib/rubyforgepublisher'
-require 'rake/clean'
-require 'rake/rdoctask'
-require 'rake/testtask'
+require 'hoe'
 require 'spec/version'
-dir = File.dirname(__FILE__)
+require 'spec/rake/spectask'
+
+class Hoe
+  def extra_deps
+    @extra_deps.reject! { |x| Array(x).first == 'hoe' }
+    @extra_deps
+  end
+end
 
-# Some of the tasks are in separate files since they are also part of the website documentation
+Hoe.new('rspec', Spec::VERSION::STRING) do |p|
+  p.summary = Spec::VERSION::SUMMARY
+  p.url = 'http://rspec.info/'
+  p.description = "Behaviour Driven Development for Ruby."
+  p.rubyforge_name = 'rspec'
+  p.developer('RSpec Development Team', 'rspec-devel@rubyforge.org')
+  p.remote_rdoc_dir = "rspec/#{Spec::VERSION::STRING}"
+end
+
+['audit','test','test_deps','default','post_blog'].each do |task|
+  Rake.application.instance_variable_get('@tasks').delete(task)
+end
+
+task :verify_rcov => [:spec, :stories]
+task :default => :verify_rcov
+
+# # Some of the tasks are in separate files since they are also part of the website documentation
 load File.dirname(__FILE__) + '/rake_tasks/examples.rake'
 load File.dirname(__FILE__) + '/rake_tasks/examples_with_rcov.rake'
 load File.dirname(__FILE__) + '/rake_tasks/failing_examples_with_html.rake'
 load File.dirname(__FILE__) + '/rake_tasks/verify_rcov.rake'
 
-PKG_NAME = "rspec"
-PKG_VERSION   = Spec::VERSION::STRING
-PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}"
-PKG_FILES = FileList[
-  '[A-Z]*',
-  'lib/**/*.rb', 
-  'spec/**/*',
-  'examples/**/*',
-  'failing_examples/**/*',
-  'plugins/**/*',
-  'stories/**/*',
-  'rake_tasks/**/*'
-]
-
-task :default => [:verify_rcov]
-task :verify_rcov => [:spec, :stories]
-
 desc "Run all specs"
 Spec::Rake::SpecTask.new do |t|
   t.spec_files = FileList['spec/**/*_spec.rb']
   t.spec_opts = ['--options', 'spec/spec.opts']
   unless ENV['NO_RCOV']
     t.rcov = true
-    t.rcov_dir = '../doc/output/coverage'
-    t.rcov_opts = ['--exclude', 'lib/spec.rb,lib/spec/runner.rb,spec\/spec,bin\/spec,examples,\/var\/lib\/gems,\/Library\/Ruby,\.autotest']
+    t.rcov_dir = 'coverage'
+    t.rcov_opts = ['--text-report', '--exclude', "lib/spec.rb,lib/spec/runner.rb,spec\/spec,bin\/spec,examples,\/var\/lib\/gems,\/Library\/Ruby,\.autotest,#{ENV['GEM_HOME']}"]
   end
 end
 
 desc "Run all stories"
 task :stories do
-  html = 'story_server/prototype/rspec_stories.html'
-  ruby "stories/all.rb --colour --format plain --format html:#{html}"
-  unless IO.read(html) =~ /<span class="param">/m
-    raise 'highlighted parameters are broken in story HTML'
-  end
-end
-
-desc "Run all specs and store html output in doc/output/report.html"
-Spec::Rake::SpecTask.new('spec_html') do |t|
-  t.spec_files = FileList['spec/**/*_spec.rb']
-  t.spec_opts = ['--format html:../../../../doc/output/report.html', '--format progress','--backtrace']
+  ruby "stories/all.rb --colour --format plain"
 end
 
-desc "Run all failing examples"
+desc "Run failing examples (see failure output)"
 Spec::Rake::SpecTask.new('failing_examples') do |t|
   t.spec_files = FileList['failing_examples/**/*_spec.rb']
-end
-
-desc 'Generate RDoc'
-rd = Rake::RDocTask.new do |rdoc|
-  rdoc.rdoc_dir = '../doc/output/rdoc'
-  rdoc.options << '--title' << 'RSpec' << '--line-numbers' << '--inline-source' << '--main' << 'README'
-  rdoc.rdoc_files.include('README', 'CHANGES', 'MIT-LICENSE', 'UPGRADE', 'lib/**/*.rb')
-end
-
-spec = Gem::Specification.new do |s|
-  s.name = PKG_NAME
-  s.version = PKG_VERSION
-  s.summary = Spec::VERSION::DESCRIPTION
-  s.description = <<-EOF
-    RSpec is a behaviour driven development (BDD) framework for Ruby.  RSpec was
-    created in response to Dave Astels' article _A New Look at Test Driven Development_
-    which can be read at: http://daveastels.com/index.php?p=5  RSpec is intended to
-    provide the features discussed in Dave's article.
-  EOF
-
-  s.files = PKG_FILES.to_a
-  s.require_path = 'lib'
-
-  s.has_rdoc = true
-  s.rdoc_options = rd.options
-  s.extra_rdoc_files = rd.rdoc_files.reject { |fn| fn =~ /\.rb$|^EXAMPLES.rd$/ }.to_a
-
-  s.bindir = 'bin'
-  s.executables = ['spec', 'spec_translator']
-  s.default_executable = 'spec'
-  s.author = "RSpec Development Team"
-  s.email = "rspec-devel@rubyforge.org"
-  s.homepage = "http://rspec.rubyforge.org"
-  s.platform = Gem::Platform::RUBY
-  s.rubyforge_project = "rspec"
-end
-
-Rake::GemPackageTask.new(spec) do |pkg|
-  pkg.need_zip = true
-  pkg.need_tar = true
+  t.spec_opts = ['--options', 'spec/spec.opts']
 end
 
 def egrep(pattern)
@@ -121,7 +76,8 @@
   egrep /(FIXME|TODO|TBD)/
 end
 
-task :release => [:verify_committed, :verify_user, :spec, :publish_packages, :tag, :publish_news]
+desc "verify_committed, verify_rcov, post_news, release"
+task :complete_release => [:verify_committed, :verify_rcov, :post_news, :release]
 
 desc "Verifies that there is no uncommitted code"
 task :verify_committed do
@@ -130,133 +86,4 @@
       raise "\n!!! Do a git commit first !!!\n\n" if line =~ /^#\s*modified:/
     end
   end
-end
-
-desc "Creates a tag in svn"
-task :tag do
-  # from = `svn info #{File.dirname(__FILE__)}`.match(/URL: (.*)\/rspec/n)[1]
-  # to = from.gsub(/trunk/, "tags/#{Spec::VERSION::TAG}")
-  # current = from.gsub(/trunk/, "tags/CURRENT")
-  # 
-  # puts "Creating tag in SVN"
-  # tag_cmd = "svn cp #{from} #{to} -m \"Tag release #{Spec::VERSION::FULL_VERSION}\""
-  # `#{tag_cmd}` ; raise "ERROR: #{tag_cmd}" unless $? == 0
-  # 
-  # puts "Removing CURRENT"
-  # remove_current_cmd = "svn rm #{current} -m \"Remove tags/CURRENT\""
-  # `#{remove_current_cmd}` ; raise "ERROR: #{remove_current_cmd}" unless $? == 0
-  # 
-  # puts "Re-Creating CURRENT"
-  # create_current_cmd = "svn cp #{to} #{current} -m \"Copy #{Spec::VERSION::TAG} to tags/CURRENT\""
-  # `#{create_current_cmd}` ; "ERROR: #{create_current_cmd}" unless $? == 0
-end
-
-task :verify_user do
-  raise "RUBYFORGE_USER environment variable not set!" unless ENV['RUBYFORGE_USER']
-end
-
-desc "Upload Website to RubyForge"
-task :publish_website => [:verify_user, :website] do
-  unless Spec::VERSION::RELEASE_CANDIDATE
-    publisher = Rake::SshDirPublisher.new(
-      "rspec-website@rubyforge.org",
-      "/var/www/gforge-projects/#{PKG_NAME}",
-      "../doc/output"
-    )
-    publisher.upload
-  else
-    puts "** Not publishing packages to RubyForge - this is a prerelease"
-  end
-end
-
-desc "Upload Website archive to RubyForge"
-task :archive_website => [:verify_user, :website] do
-  publisher = Rake::SshDirPublisher.new(
-    "rspec-website@rubyforge.org",
-    "/var/www/gforge-projects/#{PKG_NAME}/#{Spec::VERSION::TAG}",
-    "../doc/output"
-  )
-  publisher.upload
-end
-
-desc "Package the Rails plugin"
-task :package_rspec_on_rails do
-  mkdir 'pkg' rescue nil
-  rm_rf "pkg/rspec-rails-#{PKG_VERSION}" rescue nil
-  `git clone ../rspec-rails pkg/rspec-rails-#{PKG_VERSION}`
-  rm_rf "pkg/rspec-rails-#{PKG_VERSION}/.git"
-  Dir.chdir 'pkg' do
-    `tar cvzf rspec-rails-#{PKG_VERSION}.tgz rspec-rails-#{PKG_VERSION}`
-  end
-end
-task :pkg => :package_rspec_on_rails
-
-desc "Package the RSpec.tmbundle"
-task :package_tmbundle do
-  mkdir 'pkg' rescue nil
-  rm_rf "pkg/RSpec-#{PKG_VERSION}.tmbundle" rescue nil
-  `git clone ../../../../RSpec.tmbundle pkg/RSpec-#{PKG_VERSION}.tmbundle`
-  rm_rf "pkg/RSpec-#{PKG_VERSION}.tmbundle/.git"
-  Dir.chdir 'pkg' do
-    `tar cvzf RSpec-#{PKG_VERSION}.tmbundle.tgz RSpec-#{PKG_VERSION}.tmbundle`
-  end
-end
-task :pkg => :package_tmbundle
-
-desc "Publish gem+tgz+zip on RubyForge. You must make sure lib/version.rb is aligned with the CHANGELOG file"
-task :publish_packages => [:verify_user, :package, :pkg] do
-  release_files = FileList[
-    "pkg/#{PKG_FILE_NAME}.gem",
-    "pkg/#{PKG_FILE_NAME}.tgz",
-    "pkg/rspec-rails-#{PKG_VERSION}.tgz",
-    "pkg/#{PKG_FILE_NAME}.zip",
-    "pkg/RSpec-#{PKG_VERSION}.tmbundle.tgz"
-  ]
-  unless Spec::VERSION::RELEASE_CANDIDATE
-    require 'meta_project'
-    require 'rake/contrib/xforge'
-
-    Rake::XForge::Release.new(MetaProject::Project::XForge::RubyForge.new(PKG_NAME)) do |xf|
-      # Never hardcode user name and password in the Rakefile!
-      xf.user_name = ENV['RUBYFORGE_USER']
-      xf.files = release_files.to_a
-      xf.release_name = "RSpec #{PKG_VERSION}"
-    end
-  else
-    puts "SINCE THIS IS A PRERELEASE, FILES ARE UPLOADED WITH SSH, NOT TO THE RUBYFORGE FILE SECTION"
-    puts "YOU MUST TYPE THE PASSWORD #{release_files.length} TIMES..."
-
-    host = "rspec-website@rubyforge.org"
-    remote_dir = "/var/www/gforge-projects/#{PKG_NAME}"
-
-    publisher = Rake::SshFilePublisher.new(
-      host,
-      remote_dir,
-      File.dirname(__FILE__),
-      *release_files
-    )
-    publisher.upload
-
-    puts "UPLADED THE FOLLOWING FILES:"
-    release_files.each do |file|
-      name = file.match(/pkg\/(.*)/)[1]
-      puts "* http://rspec.rubyforge.org/#{name}"
-    end
-
-    puts "They are not linked to anywhere, so don't forget to tell people!"
-  end
-end
-
-desc "Publish news on RubyForge"
-task :publish_news => [:verify_user] do
-  unless Spec::VERSION::RELEASE_CANDIDATE
-    require 'meta_project'
-    require 'rake/contrib/xforge'
-    Rake::XForge::NewsPublisher.new(MetaProject::Project::XForge::RubyForge.new(PKG_NAME)) do |news|
-      # Never hardcode user name and password in the Rakefile!
-      news.user_name = ENV['RUBYFORGE_USER']
-    end
-  else
-    puts "** Not publishing news to RubyForge - this is a prerelease"
-  end
 end
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/TODO.txt
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/TODO.txt?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/TODO.txt (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/TODO.txt Wed Dec 10 17:34:18 2008
@@ -0,0 +1,10 @@
+== Future
+
+* do SOMETHING with the website
+* extract spec/story to rspec-stories (new gem)
+* remove the ruby engine adapter unless Rubinius team plans to use it
+* rename top level namespace to Rspec and commands to 'rspec' and 'autorspec'
+  * continue to support Spec 'spec' and 'autospec' as aliases for a reasonable time
+* separate the underlying framework from the DSL
+  * be able to do everything with classes and methods
+* tweak raise_error rdoc to show only one arg
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/autospec
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/autospec?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/autospec (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/autospec Wed Dec 10 17:34:18 2008
@@ -0,0 +1,4 @@
+#!/usr/bin/env ruby
+ENV['RSPEC'] = 'true'     # allows autotest to discover rspec
+ENV['AUTOTEST'] = 'true'  # allows autotest to run w/ color on linux
+system (RUBY_PLATFORM =~ /mswin|mingw/ ? 'autotest.bat' : 'autotest'), *ARGV
\ No newline at end of file

Propchange: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/autospec
------------------------------------------------------------------------------
    svn:executable = *

Modified: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/spec
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/spec?rev=725524&r1=725523&r2=725524&view=diff
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/spec (original)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/bin/spec Wed Dec 10 17:34:18 2008
@@ -1,4 +1,4 @@
 #!/usr/bin/env ruby
 $LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + "/../lib"))
 require 'spec'
-exit ::Spec::Runner::CommandLine.run(rspec_options)
+exit ::Spec::Runner::CommandLine.run

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/README.txt
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/README.txt?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/README.txt (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/README.txt Wed Dec 10 17:34:18 2008
@@ -0,0 +1,7 @@
+"Why have failing examples?", you might ask.
+
+They allow us to see failure messages. RSpec wants to provide meaningful and helpful failure messages. The failures in this directory not only provide you a way of seeing the failure messages, but they provide RSpec's own specs a way of describing what they should look like and ensuring they stay correct.
+
+To see the types of messages you can expect, stand in this directory and run:
+
+../bin/spec ./*.rb
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/diffing_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/diffing_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/diffing_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/diffing_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,36 @@
+describe "Running specs with --diff" do
+  it "should print diff of different strings" do
+    uk = <<-EOF
+RSpec is a
+behaviour driven development
+framework for Ruby
+EOF
+    usa = <<-EOF
+RSpec is a
+behavior driven development
+framework for Ruby
+EOF
+    usa.should == uk
+  end
+
+  class Animal
+    def initialize(name,species)
+      @name,@species = name,species
+    end
+
+    def inspect
+      <<-EOA
+<Animal
+name=#{@name},
+species=#{@species}
+>
+      EOA
+    end
+  end
+
+  it "should print diff of different objects' pretty representation" do
+    expected = Animal.new "bob", "giraffe"
+    actual   = Animal.new "bob", "tortoise"
+    expected.should eql(actual)
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failing_autogenerated_docstrings_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failing_autogenerated_docstrings_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failing_autogenerated_docstrings_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failing_autogenerated_docstrings_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,19 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+# Run spec w/ -fs to see the output of this file
+
+describe "Failing examples with no descriptions" do
+  
+  # description is auto-generated as "should equal(5)" based on the last #should
+  it do
+    3.should equal(2)
+    5.should equal(5)
+  end
+  
+  it { 3.should be > 5 }
+  
+  it { ["a"].should include("b") }
+  
+  it { [1,2,3].should_not respond_to(:size) }
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_setup.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_setup.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_setup.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_setup.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,10 @@
+describe "This example" do
+  
+  before(:each) do
+    NonExistentClass.new
+  end
+  
+  it "should be listed as failing in setup" do
+  end
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_teardown.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_teardown.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_teardown.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/failure_in_teardown.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,10 @@
+describe "This example" do
+  
+  it "should be listed as failing in teardown" do
+  end
+  
+  after(:each) do
+    NonExistentClass.new
+  end
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,40 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "Mocker" do
+
+  it "should be able to call mock()" do
+    mock = mock("poke me")
+    mock.should_receive(:poke)
+    mock.poke
+  end
+
+  it "should fail when expected message not received" do
+    mock = mock("poke me")
+    mock.should_receive(:poke)
+  end
+  
+  it "should fail when messages are received out of order" do
+    mock = mock("one two three")
+    mock.should_receive(:one).ordered
+    mock.should_receive(:two).ordered
+    mock.should_receive(:three).ordered
+    mock.one
+    mock.three
+    mock.two
+  end
+
+  it "should get yelled at when sending unexpected messages" do
+    mock = mock("don't talk to me")
+    mock.should_not_receive(:any_message_at_all)
+    mock.any_message_at_all
+  end
+
+  it "has a bug we need to fix" do
+    pending "here is the bug" do
+      # Actually, no. It's fixed. This will fail because it passes :-)
+      mock = mock("Bug")
+      mock.should_receive(:hello)
+      mock.hello
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_flexmock.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_flexmock.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_flexmock.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_flexmock.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,26 @@
+# stub frameworks like to gum up Object, so this is deliberately
+# set NOT to run so that you don't accidentally run it when you
+# run this dir.
+
+# To run it, stand in this directory and say:
+#
+#   RUN_FLEXMOCK_EXAMPLE=true ruby ../bin/spec mocking_with_flexmock.rb
+
+if ENV['RUN_FLEXMOCK_EXAMPLE']
+  Spec::Runner.configure do |config|
+    config.mock_with :flexmock
+  end
+
+  describe "Flexmocks" do
+    it "should fail when the expected message is received with wrong arguments" do
+      m = flexmock("now flex!")
+      m.should_receive(:msg).with("arg").once
+      m.msg("other arg")
+    end
+
+    it "should fail when the expected message is not received at all" do
+      m = flexmock("now flex!")
+      m.should_receive(:msg).with("arg").once
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_mocha.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_mocha.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_mocha.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_mocha.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,25 @@
+# stub frameworks like to gum up Object, so this is deliberately
+# set NOT to run so that you don't accidentally run it when you
+# run this dir.
+
+# To run it, stand in this directory and say:
+#
+#   RUN_MOCHA_EXAMPLE=true ruby ../bin/spec mocking_with_mocha.rb
+
+if ENV['RUN_MOCHA_EXAMPLE']
+  Spec::Runner.configure do |config|
+    config.mock_with :mocha
+  end
+  describe "Mocha framework" do
+    it "should should be made available by saying config.mock_with :mocha" do
+      m = mock()
+      m.expects(:msg).with("arg")
+      m.msg
+    end
+    it "should should be made available by saying config.mock_with :mocha" do
+      o = Object.new
+      o.expects(:msg).with("arg")
+      o.msg
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_rr.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_rr.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_rr.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/mocking_with_rr.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,27 @@
+# stub frameworks like to gum up Object, so this is deliberately
+# set NOT to run so that you don't accidentally run it when you
+# run this dir.
+
+# To run it, stand in this directory and say:
+#
+#   RUN_RR_EXAMPLE=true ruby ../bin/spec mocking_with_rr.rb
+
+if ENV['RUN_RR_EXAMPLE']
+  Spec::Runner.configure do |config|
+    config.mock_with :rr
+  end
+  describe "RR framework" do
+    it "should should be made available by saying config.mock_with :rr" do
+      o = Object.new
+      mock(o).msg("arg")
+      o.msg
+    end
+    it "should should be made available by saying config.mock_with :rr" do
+      o = Object.new
+      mock(o) do |m|
+        m.msg("arg")
+      end
+      o.msg
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/partial_mock_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/partial_mock_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/partial_mock_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/partial_mock_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,20 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+class MockableClass
+  def self.find id
+    return :original_return
+  end
+end
+
+describe "A partial mock" do
+
+  it "should work at the class level (but fail here due to the type mismatch)" do
+    MockableClass.should_receive(:find).with(1).and_return {:stub_return}
+    MockableClass.find("1").should equal(:stub_return)
+  end
+
+  it "should revert to the original after each spec" do
+    MockableClass.find(1).should equal(:original_return)
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/predicate_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/predicate_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/predicate_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/predicate_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,34 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+class BddFramework
+  def intuitive?
+    true
+  end
+
+  def adopted_quickly?
+    #this will cause failures because it reallly SHOULD be adopted quickly
+    false
+  end
+end
+
+describe "BDD framework" do
+
+  before(:each) do
+    @bdd_framework = BddFramework.new
+  end
+
+  it "should be adopted quickly" do
+    #this will fail because it reallly SHOULD be adopted quickly
+    @bdd_framework.should be_adopted_quickly
+  end
+
+  it "should be intuitive" do
+    @bdd_framework.should be_intuitive
+  end
+
+  it "should not respond to test" do
+    #this will fail
+    @bdd_framework.test
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/raising_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/raising_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/raising_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/raising_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,47 @@
+describe "This example" do
+  
+  it "should show that a NoMethodError is raised but an Exception was expected" do
+    proc { ''.nonexistent_method }.should raise_error
+  end
+  
+  it "should pass" do
+    proc { ''.nonexistent_method }.should raise_error(NoMethodError)
+  end
+  
+  it "should show that a NoMethodError is raised but a SyntaxError was expected" do
+    proc { ''.nonexistent_method }.should raise_error(SyntaxError)
+  end
+  
+  it "should show that nothing is raised when SyntaxError was expected" do
+    proc { }.should raise_error(SyntaxError)
+  end
+
+  it "should show that a NoMethodError is raised but a Exception was expected" do
+    proc { ''.nonexistent_method }.should_not raise_error
+  end
+  
+  it "should show that a NoMethodError is raised" do
+    proc { ''.nonexistent_method }.should_not raise_error(NoMethodError)
+  end
+  
+  it "should also pass" do
+    proc { ''.nonexistent_method }.should_not raise_error(SyntaxError)
+  end
+  
+  it "should show that a NoMethodError is raised when nothing expected" do
+    proc { ''.nonexistent_method }.should_not raise_error(Exception)
+  end
+  
+  it "should show that the wrong message was received" do
+    proc { raise StandardError.new("what is an enterprise?") }.should raise_error(StandardError, "not this")
+  end
+  
+  it "should show that the unexpected error/message was thrown" do
+    proc { raise StandardError.new("abc") }.should_not raise_error(StandardError, "abc")
+  end
+  
+  it "should pass too" do
+    proc { raise StandardError.new("abc") }.should_not raise_error(StandardError, "xyz")
+  end
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/spec_helper.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/spec_helper.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/spec_helper.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/spec_helper.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,3 @@
+lib_path = File.expand_path(File.dirname(__FILE__) + "/../../lib")
+$LOAD_PATH.unshift lib_path unless $LOAD_PATH.include?(lib_path)
+require "spec"

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/syntax_error_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/syntax_error_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/syntax_error_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/syntax_error_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,7 @@
+describe "when passing a block to a matcher" do
+  it "you should use {} instead of do/end" do
+    Object.new.should satisfy do
+      "this block is being passed to #should instead of #satisfy - use {} instead"
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/team_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/team_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/team_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/team_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,44 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+
+class Team
+  attr_reader :players
+  def initialize
+    @players = Players.new
+  end
+end
+
+class Players
+  def initialize
+    @players = []
+  end
+  def size
+    @players.size
+  end
+  def include? player
+    raise "player must be a string" unless player.is_a?(String)
+    @players.include? player
+  end
+end
+
+describe "A new team" do
+  
+  before(:each) do
+    @team = Team.new
+  end
+  
+  it "should have 3 players (failing example)" do
+    @team.should have(3).players
+  end
+  
+  it "should include some player (failing example)" do
+    @team.players.should include("Some Player")
+  end
+
+  it "should include 5 (failing example)" do
+    @team.players.should include(5)
+  end
+  
+  it "should have no players"
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/timeout_behaviour.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/timeout_behaviour.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/timeout_behaviour.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/failing/timeout_behaviour.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,7 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "Something really slow" do
+  it "should be failed by RSpec when it takes longer than --timeout" do
+    sleep(2)
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/autogenerated_docstrings_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/autogenerated_docstrings_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/autogenerated_docstrings_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/autogenerated_docstrings_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,25 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+# Run spec w/ -fs to see the output of this file
+
+describe "Examples with no descriptions" do
+  
+  # description is auto-generated as "should equal(5)" based on the last #should
+  specify do
+    3.should equal(3)
+    5.should equal(5)
+  end
+  
+  specify { 3.should be < 5 }
+  
+  specify { ["a"].should include("a") }
+  
+  specify { [1,2,3].should respond_to(:size) }
+  
+end
+
+describe "the number 1" do
+  subject { 1 }
+  it { should == 1 }
+  it { should be < 2}
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/before_and_after_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/before_and_after_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/before_and_after_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/before_and_after_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,40 @@
+require File.dirname(__FILE__) + '/spec_helper'
+$global = 0
+
+describe "State created in before(:all)" do
+  before :all do
+    @sideeffect = 1
+    $global +=1
+  end
+
+  before :each do
+    @isolated = 1
+  end
+  
+  it "should be accessible from example" do
+    @sideeffect.should == 1
+    $global.should == 1
+    @isolated.should == 1
+
+    @sideeffect += 1
+    @isolated += 1
+  end
+
+  it "should not have sideffects" do
+    @sideeffect.should == 1
+    $global.should == 2
+    @isolated.should == 1
+
+    @sideeffect += 1
+    @isolated += 1
+  end
+
+  after :each do
+    $global += 1
+  end
+  
+  after :all do
+    $global.should == 3
+    $global = 0
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/behave_as_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/behave_as_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/behave_as_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/behave_as_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,45 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+def behave_as_electric_musician
+  respond_to(:read_notes, :turn_down_amp)
+end
+
+def behave_as_musician
+  respond_to(:read_notes)
+end
+
+module BehaveAsExample
+  
+  class BluesGuitarist
+    def read_notes; end
+    def turn_down_amp; end
+  end
+  
+  class RockGuitarist
+    def read_notes; end
+    def turn_down_amp; end
+  end
+  
+  class ClassicGuitarist
+    def read_notes; end
+  end
+  
+  describe BluesGuitarist do
+    it "should behave as guitarist" do
+      BluesGuitarist.new.should behave_as_electric_musician
+    end
+  end
+
+  describe RockGuitarist do
+    it "should behave as guitarist" do
+      RockGuitarist.new.should behave_as_electric_musician
+    end
+  end
+
+  describe ClassicGuitarist do
+    it "should not behave as guitarist" do
+      ClassicGuitarist.new.should behave_as_musician
+    end
+  end
+  
+end

Propchange: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/behave_as_example.rb
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_expectation_matchers.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_expectation_matchers.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_expectation_matchers.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_expectation_matchers.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,54 @@
+module AnimalSpecHelper
+  class Eat
+    def initialize(food)
+      @food = food
+    end
+    
+    def matches?(animal)
+      @animal = animal
+      @animal.eats?(@food)
+    end
+    
+    def failure_message
+      "expected #{@animal} to eat #{@food}, but it does not"
+    end
+    
+    def negative_failure_message
+      "expected #{@animal} not to eat #{@food}, but it does"
+    end
+  end
+    
+  def eat(food)
+    Eat.new(food)
+  end
+end
+
+module Animals
+  class Animal
+    def eats?(food)
+      return foods_i_eat.include?(food)
+    end
+  end
+  
+  class Mouse < Animal
+    def foods_i_eat
+      [:cheese]
+    end
+  end
+
+  describe Mouse do
+    include AnimalSpecHelper
+    before(:each) do
+      @mouse = Animals::Mouse.new
+    end
+  
+    it "should eat cheese" do
+      @mouse.should eat(:cheese)
+    end
+  
+    it "should not eat cat" do
+      @mouse.should_not eat(:cat)
+    end
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_formatter.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_formatter.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_formatter.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/custom_formatter.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,12 @@
+require File.dirname(__FILE__) + '/spec_helper'
+require 'spec/runner/formatter/progress_bar_formatter'
+
+# Example of a formatter with custom bactrace printing. Run me with:
+# ruby bin/spec examples/failing -r examples/passing/custom_formatter.rb -f CustomFormatter
+class CustomFormatter < Spec::Runner::Formatter::ProgressBarFormatter
+  def backtrace_line(line)
+    line.gsub(/([^:]*\.rb):(\d*)/) do
+      "<a href=\"file://#{File.expand_path($1)}\">#{$1}:#{$2}</a> "
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/dynamic_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/dynamic_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/dynamic_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/dynamic_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,9 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "The square root" do
+  (1..10).each do |n|
+    it "of #{n*n} should be #{n}" do
+      Math.sqrt(n*n).should == n
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,19 @@
+require File.dirname(__FILE__) + '/spec_helper'
+class FileAccessor
+  def open_and_handle_with(pathname, processor)
+    pathname.open do |io|
+      processor.process(io)
+    end
+  end
+end
+
+if __FILE__ == $0
+  require File.dirname(__FILE__) + '/io_processor'
+  require 'pathname'
+  
+  accessor = FileAccessor.new
+  io_processor = IoProcessor.new
+  file = Pathname.new ARGV[0]
+
+  accessor.open_and_handle_with(file, io_processor)
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/file_accessor_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,38 @@
+require File.dirname(__FILE__) + '/spec_helper'
+require File.dirname(__FILE__) + '/file_accessor'
+require 'stringio'
+
+describe "A FileAccessor" do
+  # This sequence diagram illustrates what this spec specifies.
+  #
+  #                  +--------------+     +----------+     +-------------+
+  #                  | FileAccessor |     | Pathname |     | IoProcessor |
+  #                  +--------------+     +----------+     +-------------+
+  #                         |                  |                  |
+  #   open_and_handle_with  |                  |                  |
+  #   -------------------->| |           open  |                  |
+  #                        | |--------------->| |                 |
+  #                        | | io             | |                 |
+  #                        | |<...............| |                 |
+  #                        | |                 |     process(io)  |
+  #                        | |---------------------------------->| |
+  #                        | |                 |                 | |
+  #                        | |<..................................| |
+  #                         |                  |                  |
+  #
+  it "should open a file and pass it to the processor's process method" do
+    # This is the primary actor
+    accessor = FileAccessor.new
+
+    # These are the primary actor's neighbours, which we mock.
+    file = mock "Pathname"
+    io_processor = mock "IoProcessor"
+    
+    io = StringIO.new "whatever"
+    file.should_receive(:open).and_yield io
+    io_processor.should_receive(:process).with(io)
+    
+    accessor.open_and_handle_with(file, io_processor)
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/greeter_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/greeter_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/greeter_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/greeter_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,31 @@
+require File.dirname(__FILE__) + '/spec_helper'
+# greeter.rb
+#
+# Based on http://glu.ttono.us/articles/2006/12/19/tormenting-your-tests-with-heckle
+#
+# Run with:
+#
+#   spec greeter_spec.rb --heckle Greeter
+#
+class Greeter
+  def initialize(person = nil)
+    @person = person
+  end
+
+  def greet
+    @person.nil? ? "Hi there!" : "Hi #{@person}!"
+  end
+end
+
+describe "Greeter" do
+  it "should say Hi to person" do
+    greeter = Greeter.new("Kevin")
+    greeter.greet.should == "Hi Kevin!"
+  end
+
+  it "should say Hi to nobody" do
+    greeter = Greeter.new
+    # Uncomment the next line to make Heckle happy
+    #greeter.greet.should == "Hi there!"
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/helper_method_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/helper_method_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/helper_method_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/helper_method_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,14 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+module HelperMethodExample
+  describe "an example group with helper a method" do
+    def helper_method
+      "received call"
+    end
+  
+    it "should make that method available to specs" do
+      helper_method.should == "received call"
+    end
+  end
+end
+

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,8 @@
+class DataTooShort < StandardError; end
+
+class IoProcessor
+  # Does some fancy stuff unless the length of +io+ is shorter than 32
+  def process(io)
+    raise DataTooShort if io.read.length < 32
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/io_processor_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,21 @@
+require File.dirname(__FILE__) + '/spec_helper'
+require File.dirname(__FILE__) + '/io_processor'
+require 'stringio'
+
+describe "An IoProcessor" do
+  before(:each) do
+    @processor = IoProcessor.new
+  end
+
+  it "should raise nothing when the file is exactly 32 bytes" do
+    lambda {
+      @processor.process(StringIO.new("z"*32))
+    }.should_not raise_error
+  end
+
+  it "should raise an exception when the file length is less than 32 bytes" do
+    lambda {
+      @processor.process(StringIO.new("z"*31))
+    }.should raise_error(DataTooShort)
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/legacy_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/legacy_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/legacy_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/legacy_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,11 @@
+require File.dirname(__FILE__) + '/spec_helper'
+context "A legacy spec" do
+  setup do
+  end
+  
+  specify "should work fine" do
+  end
+  
+  teardown do
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/mocking_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/mocking_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/mocking_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/mocking_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,27 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "A consumer of a mock" do
+  it "should be able to send messages to the mock" do
+    mock = mock("poke me")
+    mock.should_receive(:poke)
+    mock.poke
+  end
+end
+
+describe "a mock" do
+  it "should be able to mock the same message twice w/ different args" do
+    mock = mock("mock")
+    mock.should_receive(:msg).with(:arg1).and_return(:val1)
+    mock.should_receive(:msg).with(:arg2).and_return(:val2)
+    mock.msg(:arg1).should eql(:val1)
+    mock.msg(:arg2).should eql(:val2)
+  end
+
+  it "should be able to mock the same message twice w/ different args in reverse order" do
+    mock = mock("mock")
+    mock.should_receive(:msg).with(:arg1).and_return(:val1)
+    mock.should_receive(:msg).with(:arg2).and_return(:val2)
+    mock.msg(:arg2).should eql(:val2)
+    mock.msg(:arg1).should eql(:val1)
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/multi_threaded_behaviour_runner.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/multi_threaded_behaviour_runner.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/multi_threaded_behaviour_runner.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/multi_threaded_behaviour_runner.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,28 @@
+class MultiThreadedExampleGroupRunner < Spec::Runner::ExampleGroupRunner
+  def initialize(options, arg)
+    super(options)
+    # configure these
+    @thread_count = 4
+    @thread_wait = 0
+  end
+
+  def run
+    @threads = []
+    q = Queue.new
+    example_groups.each { |b| q << b}
+    success = true
+    @thread_count.times do
+      @threads << Thread.new(q) do |queue|
+        while not queue.empty?
+          example_group = queue.pop
+          success &= example_group.suite.run(nil)
+        end
+      end
+      sleep @thread_wait
+    end
+    @threads.each {|t| t.join}
+    success
+  end
+end
+
+MultiThreadedBehaviourRunner = MultiThreadedExampleGroupRunner
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/nested_classes_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/nested_classes_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/nested_classes_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/nested_classes_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,36 @@
+require File.dirname(__FILE__) + '/spec_helper'
+require File.dirname(__FILE__) + '/stack'
+
+class StackExamples < Spec::ExampleGroup
+  describe(Stack)
+  before(:each) do
+    @stack = Stack.new
+  end
+end
+
+class EmptyStackExamples < StackExamples
+  describe("when empty")
+  it "should be empty" do
+    @stack.should be_empty
+  end
+end
+
+class AlmostFullStackExamples < StackExamples
+  describe("when almost full")
+  before(:each) do
+    (1..9).each {|n| @stack.push n}
+  end
+  it "should be full" do
+    @stack.should_not be_full
+  end
+end
+
+class FullStackExamples < StackExamples
+  describe("when full")
+  before(:each) do
+    (1..10).each {|n| @stack.push n}
+  end
+  it "should be full" do
+    @stack.should be_full
+  end
+end
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/partial_mock_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/partial_mock_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/partial_mock_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/partial_mock_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,29 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+class MockableClass
+  def self.find id
+    return :original_return
+  end
+end
+
+describe "A partial mock" do
+
+  it "should work at the class level" do
+    MockableClass.should_receive(:find).with(1).and_return {:stub_return}
+    MockableClass.find(1).should equal(:stub_return)
+  end
+
+  it "should revert to the original after each spec" do
+    MockableClass.find(1).should equal(:original_return)
+  end
+
+  it "can be mocked w/ ordering" do
+    MockableClass.should_receive(:msg_1).ordered
+    MockableClass.should_receive(:msg_2).ordered
+    MockableClass.should_receive(:msg_3).ordered
+    MockableClass.msg_1
+    MockableClass.msg_2
+    MockableClass.msg_3
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/pending_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/pending_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/pending_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/pending_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,20 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "pending example (using pending method)" do
+  it %Q|should be reported as "PENDING: for some reason"| do
+    pending("for some reason")
+  end
+end
+
+describe "pending example (with no block)" do
+  it %Q|should be reported as "PENDING: Not Yet Implemented"|
+end
+
+describe "pending example (with block for pending)" do
+  it %Q|should have a failing block, passed to pending, reported as "PENDING: for some reason"| do
+    pending("for some reason") do
+      raise "some reason"
+    end
+  end
+end
+

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/predicate_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/predicate_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/predicate_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/predicate_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,27 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+class BddFramework
+  def intuitive?
+    true
+  end
+  
+  def adopted_quickly?
+    true
+  end
+end
+
+describe "BDD framework" do
+
+  before(:each) do
+    @bdd_framework = BddFramework.new
+  end
+
+  it "should be adopted quickly" do
+    @bdd_framework.should be_adopted_quickly
+  end
+  
+  it "should be intuitive" do
+    @bdd_framework.should be_intuitive
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/priority.txt
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/priority.txt?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/priority.txt (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/priority.txt Wed Dec 10 17:34:18 2008
@@ -0,0 +1 @@
+examples/custom_expectation_matchers.rb
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_example_group_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_example_group_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_example_group_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_example_group_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,81 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+module SharedExampleGroupExample
+  class OneThing
+    def what_things_do
+      "stuff"
+    end
+  end
+  
+  class AnotherThing
+    def what_things_do
+      "stuff"
+    end
+  end
+  
+  class YetAnotherThing
+    def what_things_do
+      "stuff"
+    end
+  end
+  
+  # A SharedExampleGroup is an example group that doesn't get run.
+  # You can create one like this:
+  share_examples_for "most things" do
+    def helper_method
+      "helper method"
+    end
+    
+    it "should do what things do" do
+      @thing.what_things_do.should == "stuff"
+    end
+  end
+
+  # A SharedExampleGroup is also a module. If you create one like this it gets
+  # assigned to the constant MostThings
+  share_as :MostThings do
+    def helper_method
+      "helper method"
+    end
+    
+    it "should do what things do" do
+      @thing.what_things_do.should == "stuff"
+    end
+  end
+  
+  describe OneThing do
+    # Now you can include the shared example group like this, which 
+    # feels more like what you might say ...
+    it_should_behave_like "most things"
+    
+    before(:each) { @thing = OneThing.new }
+    
+    it "should have access to helper methods defined in the shared example group" do
+      helper_method.should == "helper method"
+    end
+  end
+
+  describe AnotherThing do
+    # ... or you can include the example group like this, which
+    # feels more like the programming language we love.
+    it_should_behave_like MostThings
+    
+    before(:each) { @thing = AnotherThing.new }
+
+    it "should have access to helper methods defined in the shared example group" do
+      helper_method.should == "helper method"
+    end
+  end
+
+  describe YetAnotherThing do
+    # ... or you can include the example group like this, which
+    # feels more like the programming language we love.
+    include MostThings
+    
+    before(:each) { @thing = AnotherThing.new }
+
+    it "should have access to helper methods defined in the shared example group" do
+      helper_method.should == "helper method"
+    end
+  end
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_stack_examples.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_stack_examples.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_stack_examples.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/shared_stack_examples.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,36 @@
+shared_examples_for "non-empty Stack" do
+
+  it { @stack.should_not be_empty }
+  
+  it "should return the top item when sent #peek" do
+    @stack.peek.should == @last_item_added
+  end
+  
+  it "should NOT remove the top item when sent #peek" do
+    @stack.peek.should == @last_item_added
+    @stack.peek.should == @last_item_added
+  end
+  
+  it "should return the top item when sent #pop" do
+    @stack.pop.should == @last_item_added
+  end
+  
+  it "should remove the top item when sent #pop" do
+    @stack.pop.should == @last_item_added
+    unless @stack.empty?
+      @stack.pop.should_not == @last_item_added
+    end
+  end
+  
+end
+
+shared_examples_for "non-full Stack" do
+
+  it { @stack.should_not be_full }
+
+  it "should add to the top when sent #push" do
+    @stack.push "newly added top item"
+    @stack.peek.should == "newly added top item"
+  end
+
+end
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/simple_matcher_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/simple_matcher_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/simple_matcher_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/simple_matcher_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,31 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "arrays" do
+  def contain_same_elements_as(expected)
+    simple_matcher "array with same elements in any order as #{expected.inspect}" do |actual|
+      if actual.size == expected.size
+        a, e = actual.dup, expected.dup
+        until e.empty? do
+          if i = a.index(e.pop) then a.delete_at(i) end
+        end
+        a.empty?
+      else
+        false
+      end
+    end
+  end
+  
+  describe "can be matched by their contents disregarding order" do
+    subject { [1,2,2,3] }
+    it { should contain_same_elements_as([1,2,2,3]) }
+    it { should contain_same_elements_as([2,3,2,1]) }
+    it { should_not contain_same_elements_as([3,3,2,1]) }
+  end
+  
+  describe "fail the match with different contents" do
+    subject { [1,2,3] }
+    it { should_not contain_same_elements_as([2,3,4])}
+    it { should_not contain_same_elements_as([1,2,2,3])}
+    it { should_not contain_same_elements_as([1,2])}
+  end
+end
\ No newline at end of file

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/spec_helper.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/spec_helper.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/spec_helper.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/spec_helper.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,3 @@
+lib_path = File.expand_path("#{File.dirname(__FILE__)}/../../lib")
+$LOAD_PATH.unshift lib_path unless $LOAD_PATH.include?(lib_path)
+require 'spec'

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,36 @@
+class StackUnderflowError < RuntimeError
+end
+
+class StackOverflowError < RuntimeError
+end
+
+class Stack
+  
+  def initialize
+    @items = []
+  end
+  
+  def push object
+    raise StackOverflowError if @items.length == 10
+    @items.push object
+  end
+  
+  def pop
+    raise StackUnderflowError if @items.empty?
+    @items.delete @items.last
+  end
+  
+  def peek
+    raise StackUnderflowError if @items.empty?
+    @items.last
+  end
+  
+  def empty?
+    @items.empty?
+  end
+
+  def full?
+    @items.length == 10
+  end
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,64 @@
+require File.dirname(__FILE__) + '/spec_helper'
+require File.dirname(__FILE__) + "/stack"
+require File.dirname(__FILE__) + '/shared_stack_examples'
+
+describe Stack, " (empty)" do
+  before(:each) do
+    @stack = Stack.new
+  end
+  
+  # This uses @stack (because the described class is Stack) auto-generates the
+  # description "should be empty"
+  it { should be_empty }
+  
+  it_should_behave_like "non-full Stack"
+  
+  it "should complain when sent #peek" do
+    lambda { @stack.peek }.should raise_error(StackUnderflowError)
+  end
+  
+  it "should complain when sent #pop" do
+    lambda { @stack.pop }.should raise_error(StackUnderflowError)
+  end
+end
+
+describe Stack, " (with one item)" do
+  before(:each) do
+    @stack = Stack.new
+    @stack.push 3
+    @last_item_added = 3
+  end
+
+  it_should_behave_like "non-empty Stack"
+  it_should_behave_like "non-full Stack"
+
+end
+
+describe Stack, " (with one item less than capacity)" do
+  before(:each) do
+    @stack = Stack.new
+    (1..9).each { |i| @stack.push i }
+    @last_item_added = 9
+  end
+  
+  it_should_behave_like "non-empty Stack"
+  it_should_behave_like "non-full Stack"
+end
+
+describe Stack, " (full)" do
+  before(:each) do
+    @stack = Stack.new
+    (1..10).each { |i| @stack.push i }
+    @last_item_added = 10
+  end
+
+  # NOTE that this one auto-generates the description "should be full"
+  it { @stack.should be_full }  
+
+  it_should_behave_like "non-empty Stack"
+
+  it "should complain on #push" do
+    lambda { @stack.push Object.new }.should raise_error(StackOverflowError)
+  end
+  
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec_with_nested_example_groups.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec_with_nested_example_groups.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec_with_nested_example_groups.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stack_spec_with_nested_example_groups.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,67 @@
+require File.dirname(__FILE__) + '/spec_helper'
+require File.dirname(__FILE__) + '/stack'
+require File.dirname(__FILE__) + '/shared_stack_examples'
+
+describe Stack do
+  
+  before(:each) do
+    @stack = Stack.new
+  end
+
+  describe "(empty)" do
+
+    it { @stack.should be_empty }
+  
+    it_should_behave_like "non-full Stack"
+  
+    it "should complain when sent #peek" do
+      lambda { @stack.peek }.should raise_error(StackUnderflowError)
+    end
+  
+    it "should complain when sent #pop" do
+      lambda { @stack.pop }.should raise_error(StackUnderflowError)
+    end
+
+  end
+
+  describe "(with one item)" do
+    
+    before(:each) do
+      @stack.push 3
+      @last_item_added = 3
+    end
+
+    it_should_behave_like "non-empty Stack"
+    it_should_behave_like "non-full Stack"
+
+  end
+
+  describe "(with one item less than capacity)" do
+    
+    before(:each) do
+      (1..9).each { |i| @stack.push i }
+      @last_item_added = 9
+    end
+  
+    it_should_behave_like "non-empty Stack"
+    it_should_behave_like "non-full Stack"
+  end
+
+  describe "(full)" do
+    
+    before(:each) do
+      (1..10).each { |i| @stack.push i }
+      @last_item_added = 10
+    end
+
+    it { @stack.should be_full }  
+
+    it_should_behave_like "non-empty Stack"
+
+    it "should complain on #push" do
+      lambda { @stack.push Object.new }.should raise_error(StackOverflowError)
+    end
+  
+  end
+
+end

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stubbing_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stubbing_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stubbing_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/stubbing_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,69 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+describe "A consumer of a stub" do
+  it "should be able to stub methods on any Object" do
+    obj = Object.new
+    obj.stub!(:foobar).and_return {:return_value}
+    obj.foobar.should equal(:return_value)
+  end
+end
+
+class StubbableClass
+  def self.find id
+    return :original_return
+  end
+end
+
+describe "A stubbed method on a class" do
+  it "should return the stubbed value" do
+    StubbableClass.stub!(:find).and_return(:stub_return)
+    StubbableClass.find(1).should equal(:stub_return)
+  end
+  
+  it "should revert to the original method after each spec" do
+    StubbableClass.find(1).should equal(:original_return)
+  end
+
+  it "can stub! and mock the same message" do
+    StubbableClass.stub!(:msg).and_return(:stub_value)
+    StubbableClass.should_receive(:msg).with(:arg).and_return(:mock_value)
+
+    StubbableClass.msg.should equal(:stub_value)
+    StubbableClass.msg(:other_arg).should equal(:stub_value)
+    StubbableClass.msg(:arg).should equal(:mock_value)
+    StubbableClass.msg(:another_arg).should equal(:stub_value)
+    StubbableClass.msg(:yet_another_arg).should equal(:stub_value)
+    StubbableClass.msg.should equal(:stub_value)
+  end
+end
+
+describe "A mock" do
+  it "can stub!" do
+    mock = mock("stubbing mock")
+    mock.stub!(:msg).and_return(:value)
+    (1..10).each {mock.msg.should equal(:value)}
+  end
+  
+  it "can stub! and mock" do
+    mock = mock("stubbing mock")
+    mock.stub!(:stub_message).and_return(:stub_value)
+    mock.should_receive(:mock_message).once.and_return(:mock_value)
+    (1..10).each {mock.stub_message.should equal(:stub_value)}
+    mock.mock_message.should equal(:mock_value)
+    (1..10).each {mock.stub_message.should equal(:stub_value)}
+  end
+  
+  it "can stub! and mock the same message" do
+    mock = mock("stubbing mock")
+    mock.stub!(:msg).and_return(:stub_value)
+    mock.should_receive(:msg).with(:arg).and_return(:mock_value)
+    mock.msg.should equal(:stub_value)
+    mock.msg(:other_arg).should equal(:stub_value)
+    mock.msg(:arg).should equal(:mock_value)
+    mock.msg(:another_arg).should equal(:stub_value)
+    mock.msg(:yet_another_arg).should equal(:stub_value)
+    mock.msg.should equal(:stub_value)
+  end
+end
+
+    

Added: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/yielding_example.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/yielding_example.rb?rev=725524&view=auto
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/yielding_example.rb (added)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/examples/passing/yielding_example.rb Wed Dec 10 17:34:18 2008
@@ -0,0 +1,33 @@
+require File.dirname(__FILE__) + '/spec_helper'
+
+class MessageAppender
+  
+  def initialize(appendage)
+    @appendage = appendage
+  end
+  
+  def append_to(message)
+    if_told_to_yield do
+      message << @appendage
+    end
+  end
+    
+end
+
+describe "a message expectation yielding to a block" do
+  it "should yield if told to" do
+    appender = MessageAppender.new("appended to")
+    appender.should_receive(:if_told_to_yield).and_yield
+    message = ""
+    appender.append_to(message)
+    message.should == "appended to"
+  end
+
+  it "should not yield if not told to" do
+    appender = MessageAppender.new("appended to")
+    appender.should_receive(:if_told_to_yield)
+    message = ""
+    appender.append_to(message)
+    message.should == ""
+  end
+end
\ No newline at end of file

Modified: incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/lib/autotest/discover.rb
URL: http://svn.apache.org/viewvc/incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/lib/autotest/discover.rb?rev=725524&r1=725523&r2=725524&view=diff
==============================================================================
--- incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/lib/autotest/discover.rb (original)
+++ incubator/olio/webapp/rails/trunk/vendor/plugins/rspec/lib/autotest/discover.rb Wed Dec 10 17:34:18 2008
@@ -1,3 +1,3 @@
 Autotest.add_discovery do
-  "rspec" if File.exist?('spec')
+  "rspec" if File.directory?('spec') && ENV['RSPEC']
 end