<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -40,7 +40,7 @@ Spec::Rake::SpecTask.new do |t|
   t.spec_opts = ['--options', 'spec/spec.opts']
   unless ENV['NO_RCOV']
     t.rcov = true
-    t.rcov_dir = '../doc/output/coverage'
+    t.rcov_dir = 'coverage'
     t.rcov_opts = ['--exclude', 'lib/spec.rb,lib/spec/runner.rb,spec\/spec,bin\/spec,examples,\/var\/lib\/gems,\/Library\/Ruby,\.autotest']
   end
 end</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -2,15 +2,8 @@ module Spec
   module Expectations
     class InvalidMatcherError &lt; ArgumentError; end        
     
-    module MatcherHandlerHelper
-      def describe_matcher(matcher)
-        matcher.respond_to?(:description) ? matcher.description : &quot;[#{matcher.class.name} does not provide a description]&quot;
-      end
-    end
-    
     class ExpectationMatcherHandler        
       class &lt;&lt; self
-        include MatcherHandlerHelper
         def handle_matcher(actual, matcher, &amp;block)
           ::Spec::Matchers.last_should = &quot;should&quot;
           return Spec::Matchers::PositiveOperatorMatcher.new(actual) if matcher.nil?
@@ -29,7 +22,6 @@ module Spec
 
     class NegativeExpectationMatcherHandler
       class &lt;&lt; self
-        include MatcherHandlerHelper
         def handle_matcher(actual, matcher, &amp;block)
           ::Spec::Matchers.last_should = &quot;should not&quot;
           return Spec::Matchers::NegativeOperatorMatcher.new(actual) if matcher.nil?</diff>
      <filename>lib/spec/expectations/handler.rb</filename>
    </modified>
    <modified>
      <diff>@@ -17,10 +17,8 @@ module Spec
     
       def method_missing(sym, *args, &amp;block)
         @collection_name = sym
-        if defined?(ActiveSupport::Inflector)
-          @plural_collection_name = ActiveSupport::Inflector.pluralize(sym.to_s)
-        elsif Object.const_defined?(:Inflector)
-          @plural_collection_name = Inflector.pluralize(sym.to_s)
+        if inflector = (defined?(ActiveSupport::Inflector) ? ActiveSupport::Inflector : (defined?(Inflector) ? Inflector : nil))
+          @plural_collection_name = inflector.pluralize(sym.to_s)
         end
         @args = args
         @block = block</diff>
      <filename>lib/spec/matchers/have.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,6 +4,6 @@ require 'spec/rake/spectask'
 desc &quot;Generate HTML report for failing examples&quot;
 Spec::Rake::SpecTask.new('failing_examples_with_html') do |t|
   t.spec_files = FileList['failing_examples/**/*.rb']
-  t.spec_opts = [&quot;--format&quot;, &quot;html:../doc/output/documentation/tools/failing_examples.html&quot;, &quot;--diff&quot;]
+  t.spec_opts = [&quot;--format&quot;, &quot;html:doc/reports/tools/failing_examples.html&quot;, &quot;--diff&quot;]
   t.fail_on_error = false
 end
\ No newline at end of file</diff>
      <filename>rake_tasks/failing_examples_with_html.rake</filename>
    </modified>
    <modified>
      <diff>@@ -3,5 +3,5 @@ require 'spec/rake/verify_rcov'
 
 RCov::VerifyTask.new(:verify_rcov =&gt; :spec) do |t|
   t.threshold = 100.0 # Make sure you have rcov 0.7 or higher!
-  t.index_html = '../doc/output/coverage/index.html'
+  t.index_html = 'coverage/index.html'
 end</diff>
      <filename>rake_tasks/verify_rcov.rake</filename>
    </modified>
    <modified>
      <diff>@@ -50,8 +50,9 @@ end
 describe 'should have(1).item when ActiveSupport::Inflector is defined' do
   include HaveSpecHelper
   
-  before do
+  before(:each) do
     unless defined?(ActiveSupport::Inflector)
+      @active_support_was_not_defined
       module ActiveSupport
         class Inflector
           def self.pluralize(string)
@@ -66,6 +67,38 @@ describe 'should have(1).item when ActiveSupport::Inflector is defined' do
     owner = create_collection_owner_with(1)
     owner.should have(1).item
   end
+  
+  after(:each) do
+    if @active_support_was_not_defined
+      Object.send :remove_const, :ActiveSupport
+    end
+  end
+end
+
+describe 'should have(1).item when Inflector is defined' do
+  include HaveSpecHelper
+  
+  before(:each) do
+    unless defined?(Inflector)
+      @inflector_was_not_defined
+      class Inflector
+        def self.pluralize(string)
+          string.to_s + 's'
+        end
+      end
+    end
+  end
+  
+  it 'should pluralize the collection name' do
+    owner = create_collection_owner_with(1)
+    owner.should have(1).item
+  end
+
+  after(:each) do
+    if @inflector_was_not_defined
+      Object.send :remove_const, :Inflector
+    end
+  end
 end
 
 describe &quot;should have(n).items where result responds to items but returns something other than a collection&quot; do</diff>
      <filename>spec/spec/matchers/have_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>6096e8d73757179b6e766e286ed97975e6b360ef</id>
    </parent>
  </parents>
  <author>
    <name>David Chelimsky</name>
    <email>dchelimsky@gmail.com</email>
  </author>
  <url>http://github.com/jpshackelford/rspec/commit/bee481078ad706ac8ab951703b20a8f1b924469d</url>
  <id>bee481078ad706ac8ab951703b20a8f1b924469d</id>
  <committed-date>2008-07-06T05:10:47-07:00</committed-date>
  <authored-date>2008-07-06T05:10:47-07:00</authored-date>
  <message>add example and fix coverage problem with have_spec</message>
  <tree>1c1f3418354c0a8046e4591b71b9cb240a2c7fd2</tree>
  <committer>
    <name>David Chelimsky</name>
    <email>dchelimsky@gmail.com</email>
  </committer>
</commit>
