Sha256: a3298e197516a37b555441a0db97c098f9e5042c235502fb125166c0e10ca44a

Contents?: true

Size: 1.59 KB

Versions: 9

Compression:

Stored size: 1.59 KB

Contents

require "spec_helper"

describe Mongoid::Associations::MetaData do

  before do
    @extension = lambda { "Test" }
  end

  let(:association) do
    Mongoid::Associations::HasManyRelated
  end

  let(:options) do
    Mongoid::Associations::Options.new(
      :name => :games,
      :extend => @extension,
      :foreign_key => "person_id",
      :inverse_of => :people
    )
  end

  let(:metadata) do
    Mongoid::Associations::MetaData.new(association, options)
  end

  describe "#extension" do

    it "delegates to the options" do
      metadata.extension.should == @extension
    end
  end

  describe "#foreign_key" do

    it "delegates to the options" do
      metadata.foreign_key.should == "person_id"
    end
  end

  describe "#inverse_of" do

    it "delegates to the options" do
      metadata.inverse_of.should == :people
    end
  end

  describe "#klass" do

    it "returns the associated klass" do
      metadata.klass.should == Game
    end
  end

  describe "#macro" do

    it "returns the association macro" do
      metadata.macro.should == :has_many_related
    end
  end

  describe "#name" do

    it "delegates to the options" do
      metadata.name.should == "games"
    end
  end

  describe "#options" do

    it "returns the association options" do
      metadata.options.should == options
    end
  end

  describe "#polymorphic" do

    it "delegates to the options" do
      metadata.polymorphic.should be_false
    end
  end

  describe "#association" do

    it "returns the association type" do
      metadata.association.should == Mongoid::Associations::HasManyRelated
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
mongoid-pre-2.0.0.beta1 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-2.0.0.alpha spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.14 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.13 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.12 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.11 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.10 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.9 spec/unit/mongoid/associations/meta_data_spec.rb
mongoid-1.2.8 spec/unit/mongoid/associations/meta_data_spec.rb