Sha256: 62be5ea14e0e3075ed6a3b434947256ac3d10b1405c8dc5f2c9e40c1baca7d43
Contents?: true
Size: 1.25 KB
Versions: 5
Compression:
Stored size: 1.25 KB
Contents
require 'header' require 'ar_schema' require File.expand_path("lib/lolita-translation/builder/active_record_builder") require File.expand_path("lib/lolita-translation/configuration") ARSchema.connect! describe Lolita::Translation::Builder::ActiveRecordBuilder do let(:klass) { Lolita::Translation::Builder::ActiveRecordBuilder } let(:config){ Lolita::Translation::Configuration.new(Product) } before(:each) do Object.send(:remove_const, :Product) if Object.const_defined?(:Product) a_klass = Class.new(ActiveRecord::Base) Object.const_set(:Product, a_klass) end after(:each) do Object.send(:remove_const, :Product) rescue nil end it "should build class with ActiveRecord::Base as superclass" do obj = klass.new(Product) obj.build obj.klass.superclass.should eq(ActiveRecord::Base) end it "should call class methods on klass" do obj = klass.new(Product, config) obj.stub(:association_name).and_return(:product) obj.build obj.klass.reflections.keys.should include(:product) end it "should update base class" do obj = klass.new(Product,config) obj.stub(:translations_association_name).and_return(:translations) obj.build Product.reflections.keys.should include(:translations) end end
Version data entries
5 entries across 5 versions & 1 rubygems