Sha256: 4dd03fe8fd8c0fa6410387e662ff34a7372601b591f0cab1e1045f4c92f9e245
Contents?: true
Size: 1.3 KB
Versions: 28
Compression:
Stored size: 1.3 KB
Contents
require 'spec' require 'ruby_ext' require "mongo_mapper" require "#{File.dirname __FILE__}/../../lib/mongo_mapper_ext/micelaneous" require "#{File.dirname __FILE__}/../../lib/mongo_mapper_ext/plugins/micelaneous" describe "MongoMapper Default Scope" do before :all do class ::Post include MongoMapper::Document plugin MongoMapper::Plugins::Micelaneous key :comments_count, Integer, :default => 0 has_many :comments end class ::Comment include MongoMapper::Document plugin MongoMapper::Plugins::Micelaneous key :post_id belongs_to :post, :counter_cache => true end MongoMapper.database = 'test' end after :all do %w{Post Comment}.each do |obj_name| Object.send :remove_const, obj_name if Object.const_defined? obj_name end end before :each do [Post, Comment].every.delete_all end it "should increase count of comments" do post = Post.create! comment = post.comments.create! post.reload post.comments_count.should == 1 end it "should decrease count of comments" do post = Post.create! comment = post.comments.create! post.reload post.comments_count.should == 1 comment.destroy post.reload post.comments_count.should == 0 end end
Version data entries
28 entries across 25 versions & 2 rubygems