Froze rails gems
[depot.git] / vendor / rails / activerecord / test / cases / associations / eager_load_includes_full_sti_class_test.rb
1 require 'cases/helper'
2 require 'models/post'
3 require 'models/tagging'
4
5 module Namespaced
6 class Post < ActiveRecord::Base
7 set_table_name 'posts'
8 has_one :tagging, :as => :taggable, :class_name => 'Tagging'
9 end
10 end
11
12 class EagerLoadIncludeFullStiClassNamesTest < ActiveRecord::TestCase
13
14 def setup
15 generate_test_objects
16 end
17
18 def generate_test_objects
19 post = Namespaced::Post.create( :title => 'Great stuff', :body => 'This is not', :author_id => 1 )
20 tagging = Tagging.create( :taggable => post )
21 end
22
23 def test_class_names
24 old = ActiveRecord::Base.store_full_sti_class
25
26 ActiveRecord::Base.store_full_sti_class = false
27 post = Namespaced::Post.find_by_title( 'Great stuff', :include => :tagging )
28 assert_nil post.tagging
29
30 ActiveRecord::Base.store_full_sti_class = true
31 post = Namespaced::Post.find_by_title( 'Great stuff', :include => :tagging )
32 assert_equal 'Tagging', post.tagging.class.name
33 ensure
34 ActiveRecord::Base.store_full_sti_class = old
35 end
36 end