Sha256: b8c66eb0a3d63d4fb041403aae8b6ee19ac69addf621ce8199f0049960e6ce04

Contents?: true

Size: 1.32 KB

Versions: 11

Compression:

Stored size: 1.32 KB

Contents

require 'spec_helper'


module OneAssociationSpec
  include MongoMapper::Plugins::Associations
  describe "OneAssociation" do

    context "type_key_name" do
      it "should be _type" do
        OneAssociation.new(:foo).type_key_name.should == '_type'
      end
    end

    context "embeddable?" do
      it "should be true if class is embeddable" do
        base = OneAssociation.new(:media)
        base.embeddable?.should be_truthy
      end

      it "should be false if class is not embeddable" do
        base = OneAssociation.new(:project)
        base.embeddable?.should be_falsey
      end
    end

    context "proxy_class" do
      it "should be OneProxy for one" do
        base = OneAssociation.new(:status)
        base.proxy_class.should == OneProxy
      end

      it "should be OneAsProxy for one with :as option" do
        base = OneAssociation.new(:message, :as => :messagable)
        base.proxy_class.should == OneAsProxy
      end

      it "should be OneEmbeddedProxy for one embedded" do
        base = OneAssociation.new(:media)
        base.proxy_class.should == OneEmbeddedProxy
      end

      it "should be OneEmbeddedPolymorphicProxy for polymorphic one embedded" do
        base = OneAssociation.new(:media, :polymorphic => true)
        base.proxy_class.should == OneEmbeddedPolymorphicProxy
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
mongo_mapper-0.17.0 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.16.0 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.6 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.5 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.4 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.3 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.2 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.1 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.15.0 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.14.0 spec/unit/associations/one_association_spec.rb
mongo_mapper-0.14.0.rc1 spec/unit/associations/one_association_spec.rb