Sha256: ba122a057bc6095e46355d8a37efb73ca911f26e730e749c95716594882b40dd

Contents?: true

Size: 784 Bytes

Versions: 1

Compression:

Stored size: 784 Bytes

Contents

require 'spec_helper'

describe DataMapper::Property::Class do
  before :all do
    Object.send(:remove_const, :Foo) if defined?(Foo)
    Object.send(:remove_const, :Bar) if defined?(Bar)

    class ::Foo; end
    class ::Bar; end

    @name          = :type
    @type          = described_class
    @value         = Foo
    @other_value   = Bar
    @invalid_value = 1
  end

  it_should_behave_like 'A semipublic Property'

  describe '#typecast' do
    it 'returns same value if a class' do
      @property.typecast(@model).should equal(@model)
    end

    it 'returns the class if found' do
      @property.typecast(@model.name).should eql(@model)
    end

    it 'does not typecast non-class values' do
      @property.typecast('NoClass').should eql('NoClass')
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ghost_dm-core-1.3.0.beta spec/semipublic/property/class_spec.rb