Sha256: e4ff8022a80d36588830d30742b247aafedd779b488e218d08bd136dd8fbf3a9

Contents?: true

Size: 714 Bytes

Versions: 1

Compression:

Stored size: 714 Bytes

Contents

require File.dirname(__FILE__) + "/spec_helper"

describe DataMapper::Base do
  
  it "should be able to add a dependency for a class not yet defined" do
    
    $happy_cow_defined = false
    
    DataMapper::Base.dependencies.add('HappyCow') do |klass|
      klass.should eql(Object.const_get('HappyCow'))
      database.table(klass).key.name.should eql(:name)
      $happy_cow_defined = true
    end
    
    class HappyCow < DataMapper::Base
      property :name, :string, :key => true
    end
    
    # Dependencies are not resolved until you try to access the key for a table...
    database.table(HappyCow).key
    
    raise 'Dependency not called for HappyCow :-(' unless $happy_cow_defined
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
datamapper-0.2.4 spec/dependency_spec.rb