]> git.openstreetmap.org Git - rails.git/blob - vendor/gems/rspec-1.1.2/spec/spec/mocks/mock_space_spec.rb
23ffd01bc3132fc22fd89e6e68f7a63bfb0cc3bd
[rails.git] / vendor / gems / rspec-1.1.2 / spec / spec / mocks / mock_space_spec.rb
1 require File.dirname(__FILE__) + '/../../spec_helper.rb'
2 require 'spec/mocks'
3
4 module Spec
5   module Mocks
6     describe Space do
7       before :each do
8         @space = Space.new
9         klazz = Class.new do
10           def rspec_verify
11             @verified = true
12           end
13           def verified?
14             @verified
15           end
16           def rspec_reset
17             @reset = true
18           end
19           def reset?
20             @reset
21           end
22         end
23         @m1 = klazz.new
24         @m2 = klazz.new
25       end
26       it "should verify all mocks within" do
27         @space.add(@m1)
28         @space.add(@m2)
29         @space.verify_all
30         @m1.should be_verified
31         @m2.should be_verified
32       end
33       it "should reset all mocks within" do
34         @space.add(m1 = mock("mock1"))
35         @space.add(m2 = mock("mock2"))
36         m1.should_receive(:rspec_reset)
37         m2.should_receive(:rspec_reset)
38         @space.reset_all
39       end
40       it "should clear internal mocks on reset_all" do
41         @space.add(m = mock("mock"))
42         @space.reset_all
43         @space.instance_eval { mocks.empty? }.should be_true
44       end
45       it "should only add an instance once" do
46         @space.add(m1 = mock("mock1"))
47         @space.add(m1)
48         m1.should_receive(:rspec_verify)
49         @space.verify_all
50       end
51     end
52   end
53 end
54