Sha256: ef6e38cb96556d31a7ea57b08ac54c34f83104eb19aea475c780e34de6ef820c

Contents?: true

Size: 1.59 KB

Versions: 2

Compression:

Stored size: 1.59 KB

Contents

require "spec/spec_helper"

module RR
  module Adapters
    describe Rspec do
      describe "#setup_mocks_for_rspec" do
        before do
          @fixture = Object.new
          @fixture.extend Rspec

          @subject = Object.new
          @method_name = :foobar
        end

        it "resets the double_injections" do
          RR.double_injection(@subject, @method_name)
          RR.double_injections.should_not be_empty

          @fixture.setup_mocks_for_rspec
          RR.double_injections.should be_empty
        end
      end

      describe "#verify_mocks_for_rspec" do
        before do
          @fixture = Object.new
          @fixture.extend Rspec

          @subject = Object.new
          @method_name = :foobar
        end

        it "verifies the double_injections" do
          double_injection = RR.double_injection(@subject, @method_name)
          double = RR::Double.new(double_injection)

          double.once

          lambda do
            @fixture.verify_mocks_for_rspec
          end.should raise_error(::RR::Errors::TimesCalledError)
          RR.double_injections.should be_empty
        end
      end

      describe "#teardown_mocks_for_rspec" do
        before do
          @fixture = Object.new
          @fixture.extend Rspec

          @subject = Object.new
          @method_name = :foobar
        end

        it "resets the double_injections" do
          RR.double_injection(@subject, @method_name)
          RR.double_injections.should_not be_empty

          @fixture.teardown_mocks_for_rspec
          RR.double_injections.should be_empty
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rr-0.4.10 spec/rr/rspec/rspec_adapter_spec.rb
rr-0.4.9 spec/rr/rspec/rspec_adapter_spec.rb