Sha256: 6bfb47a1105e10ed8b2a9f7ff794692b499852900e687637c0aab641a28a88bd

Contents?: true

Size: 1.21 KB

Versions: 4

Compression:

Stored size: 1.21 KB

Contents

require 'test_helper'

class TestRailsCompatibility < Test::Unit::TestCase
  class BigStuff
    include MongoMapper::Document
  end
  
  class Item
    include MongoMapper::EmbeddedDocument
    key :for_all, String
  end

  class FirstItem < Item  
    key :first_only, String
    many :second_items
  end

  class SecondItem < Item
    key :second_only, String
  end
  
  context "EmbeddedDocument" do    
    should "alias many to has_many" do
      FirstItem.should respond_to(:has_many)
    end
    
    should "alias one to has_one" do
      FirstItem.should respond_to(:has_one)
    end
    
    should "have column names" do
      Item.column_names.sort.should == ['_id', '_type', 'for_all']
      FirstItem.column_names.sort.should == ['_id', '_type', 'first_only', 'for_all']
      SecondItem.column_names.sort.should == ['_id', '_type', 'for_all', 'second_only']
    end
    
    should "alias new to new_record?" do
      instance = Item.new
      instance.new_record?.should == instance.new?
    end
    
    should "implement human_name" do
      Item.human_name.should == 'Item'
    end
  end
  
  context "Document" do
    should "implement human_name" do
      BigStuff.human_name.should == 'Big Stuff'
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
mongo_mapper-0.7.5 test/unit/test_rails_compatibility.rb
mongo_mapper_ign-0.7.4 test/unit/test_rails_compatibility.rb
mongo_mapper-0.7.4 test/unit/test_rails_compatibility.rb
mongo_mapper-0.7.3 test/unit/test_rails_compatibility.rb