Sha256: 32a9d4c1f8b92fdf0618bf92080eff8337185f1d6530cc10642b18f5d7a0c122
Contents?: true
Size: 1.6 KB
Versions: 2
Compression:
Stored size: 1.6 KB
Contents
require 'spec_helper' class CmFooSlaveConnection < ActiveRecord::Base establish_managed_connection(:slave_1_cm_test) end describe ConnectionManager::Using do it "should add sub class to current class with the name of the connection" do Fruit.send(:fetch_duplicate_class,"CmFooSlaveConnection") lambda { "Fruit::CmFooSlaveConnectionDup".constantize}.should_not raise_error end describe '#using' do it "should return an ActiveRecord::Relation" do Fruit.using("CmFooSlaveConnection").should be_kind_of(ActiveRecord::Relation) end it "should change the connection" do Fruit.using("CmFooSlaveConnection").connection.config.should_not eql(Fruit.connection.config) end it "should create the exact same sql if called from model or from relation" do class_sql = Fruit.using("CmFooSlaveConnection").where(:name => "malarky").to_sql relation_sql = Fruit.where(:name => "malarky").using("CmFooSlaveConnection").to_sql class_sql.should eql(relation_sql) end it "should have the same connection if called from model or from relation" do Fruit.where(:name => "malarky").using("CmFooSlaveConnection").connection.config.should eql( Fruit.using("CmFooSlaveConnection").where(:name => "malarky").connection.config) Fruit.using("CmFooSlaveConnection").where(:name => "malarky").connection.config.should_not eql( Fruit.where(:name => "malarky").connection.config) Fruit.where(:name => "malarky").using("CmFooSlaveConnection").connection.config.should_not eql( Fruit.where(:name => "malarky").connection.config) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
connection_manager-1.0.3 | spec/lib/using_spec.rb |
connection_manager-1.0.2 | spec/lib/using_spec.rb |