Sha256: 8cdb4832de4c0a3672332a754a9376f3a9e725cbde91a5547b475c8964df80d3

Contents?: true

Size: 800 Bytes

Versions: 3

Compression:

Stored size: 800 Bytes

Contents

require "spec_helper"

module Schizo
  module Facade

    describe(ObjectBuilder) do

      let(:base) do
        Class.new do
        end
      end

      let(:role) do
        Module.new do
          extend Role
          def bar(v)
            @bar = v
          end
        end
      end

      let(:object) do
        base.new
      end

      let(:builder) do
        ObjectBuilder.new(object, role)
      end

      context "#initialize" do

        it "sets object and role" do
          builder.object.should == object
          builder.role.should == role
        end

      end

      context "#product" do

        it "returns a facade object" do
          builder.product.should be_a(base)
          builder.product.should be_instance_of(base)
        end

      end

    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
schizo-0.1.3 spec/facade/object_builder_spec.rb
schizo-0.1.2 spec/facade/object_builder_spec.rb
schizo-0.1.1 spec/facade/object_builder_spec.rb