Sha256: 4586f841b2a7a4b84f7621a49b69782233a0857964f901b2c59ed9be3738913c

Contents?: true

Size: 1.68 KB

Versions: 33

Compression:

Stored size: 1.68 KB

Contents

require File.join(File.dirname(__FILE__), '/../../spec_helper')

describe ItIsA do
  
  before(:all) do
    Trait1 = Trait
    Trait2 = Trait
  end
  
  before(:each) do
    @class = Class.new do
      include ItIsA
      def self.to_s
        "TestClass"
      end
    end
  end
  
  it "should define a it_is_a method that calls include" do
    @class.should_receive(:include).once.with Trait
    
    @class.it_is_a Trait
  end
  it "should take multiple traits" do
    @class.should_receive(:include).once.with Trait1
    @class.should_receive(:include).once.with Trait2
    
    @class.it_is_a Trait1, Trait2
  end
  it "should call a given block on the instance" do
    @class.it_is_a Trait1, Trait2 do
      self.to_s.should == "TestClass"
    end
  end
  
  it "should define a it_is method that calls include" do
    @class.should_receive(:include).once.with Trait
    
    @class.it_is Trait
  end
  it "should take multiple traits" do
    @class.should_receive(:include).once.with Trait1
    @class.should_receive(:include).once.with Trait2
    
    @class.it_is Trait1, Trait2
  end
  it "should call a given block on the instance" do
    @class.it_is Trait1, Trait2 do
      self.to_s.should == "TestClass"
    end
  end
  
  it "should define a it_has method that calls include" do
    @class.should_receive(:include).once.with Trait
    
    @class.it_has Trait
  end
  it "should take multiple traits" do
    @class.should_receive(:include).once.with Trait
    @class.should_receive(:include).once.with Trait2
    
    @class.it_has Trait1, Trait2
  end
  it "should call a given block on the instance" do
    @class.it_has Trait1, Trait2 do
      self.to_s.should == "TestClass"
    end
  end
  
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
gosu_extensions-0.3.8 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.7 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.6 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.5 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.4 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.3 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.2 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.1 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.3.0 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.9 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.8 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.7 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.6 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.5 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.4 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.3 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.2 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.1 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.2.0 spec/lib/core/it_is_a_spec.rb
gosu_extensions-0.1.28 spec/lib/core/it_is_a_spec.rb