public
Description: Ruby on Rails
Homepage: http://rubyonrails.org
Clone URL: git://github.com/rails/rails.git
Search Repo:
* Continue evolution toward ActiveSupport::TestCase and friends.  #10679 
[Josh Peek]

* TestCase: introduce declared setup and teardown callbacks. Pass a list 
of methods and an optional block to call before setup or after teardown. 
Setup callbacks are run in the order declared; teardown callbacks are run 
in reverse.  [Jeremy Kemper]


git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8570 
5ecf4fe2-1ee6-0310-87b1-e25e094e27de
jeremy (author)
Sat Jan 05 05:34:15 -0800 2008
commit  139b92495fa7697cdd619c549d4c7b263562b761
tree    20589f9f23d3b19697fed12bb1bf5ce48ef595af
parent  fe66397adfb5a8057db78afcabd4d7eb0f13a783
...
8
9
10
11
12
 
13
14
15
 
 
 
16
17
18
...
33
34
35
36
37
38
39
40
41
42
43
44
45
 
 
 
 
 
 
46
47
48
49
50
51
52
53
54
55
 
 
 
 
56
57
58
59
60
...
8
9
10
 
 
11
12
13
14
15
16
17
18
19
20
...
35
36
37
 
 
 
 
 
 
 
 
 
 
38
39
40
41
42
43
44
 
 
 
 
 
 
 
 
 
45
46
47
48
49
 
50
51
52
0
@@ -8,11 +8,13 @@ module ActionMailer
0
         "test case definition"
0
     end
0
   end
0
- # New Test Super class for forward compatibility.
0
- # To override
0
+
0
   class TestCase < ActiveSupport::TestCase
0
     include ActionMailer::Quoting
0
 
0
+ setup :initialize_test_deliveries
0
+ setup :set_expected_mail
0
+
0
     class << self
0
       def tests(mailer)
0
         write_inheritable_attribute(:mailer_class, mailer)
0
@@ -33,28 +35,18 @@ module ActionMailer
0
       end
0
     end
0
 
0
- def setup_with_mailer
0
- ActionMailer::Base.delivery_method = :test
0
- ActionMailer::Base.perform_deliveries = true
0
- ActionMailer::Base.deliveries = []
0
-
0
- @expected = TMail::Mail.new
0
- @expected.set_content_type "text", "plain", { "charset" => charset }
0
- @expected.mime_version = '1.0'
0
- end
0
- alias_method :setup, :setup_with_mailer
0
+ protected
0
+ def initialize_test_deliveries
0
+ ActionMailer::Base.delivery_method = :test
0
+ ActionMailer::Base.perform_deliveries = true
0
+ ActionMailer::Base.deliveries = []
0
+ end
0
 
0
- def self.method_added(method)
0
- if method.to_s == 'setup'
0
- unless method_defined?(:setup_without_mailer)
0
- alias_method :setup_without_mailer, :setup
0
- define_method(:setup) do
0
- setup_with_mailer
0
- setup_without_mailer
0
- end
0
- end
0
+ def set_expected_mail
0
+ @expected = TMail::Mail.new
0
+ @expected.set_content_type "text", "plain", { "charset" => charset }
0
+ @expected.mime_version = '1.0'
0
       end
0
- end
0
 
0
     private
0
       def charset
...
9
10
11
12
13
14
15
...
117
118
119
120
121
122
123
124
125
126
127
128
 
129
130
131
132
133
 
134
135
...
9
10
11
 
12
13
14
...
116
117
118
 
119
120
121
 
122
123
124
 
125
126
 
 
 
 
127
128
129
0
@@ -9,7 +9,6 @@ class TestHelperMailer < ActionMailer::Base
0
 end
0
 
0
 class TestHelperMailerTest < ActionMailer::TestCase
0
-
0
   def test_setup_sets_right_action_mailer_options
0
     assert_equal :test, ActionMailer::Base.delivery_method
0
     assert ActionMailer::Base.perform_deliveries
0
@@ -117,19 +116,14 @@ class TestHelperMailerTest < ActionMailer::TestCase
0
 end
0
 
0
 class AnotherTestHelperMailerTest < ActionMailer::TestCase
0
-
0
   tests TestHelperMailer
0
 
0
   def setup
0
- # Should not override ActionMailer setup methods
0
     @test_var = "a value"
0
   end
0
 
0
- def test_should_still_setup_mailer
0
+ def test_setup_shouldnt_conflict_with_mailer_setup
0
     assert @expected.is_a?(TMail::Mail)
0
- end
0
-
0
- def test_should_run_overridden_setup_method
0
- assert @test_var
0
+ assert_equal 'a value', @test_var
0
   end
0
 end
...
10
11
12
 
 
 
 
 
 
 
 
13
 
14
15
16
...
25
26
27
28
 
29
30
31
...
36
37
38
39
40
41
42
43
 
44
45
46
47
 
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
...
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
...
34
35
36
 
37
38
39
40
...
45
46
47
 
 
 
 
 
48
49
50
51
 
52
53
54
55
56
 
 
 
 
 
 
 
 
 
 
 
 
 
57
58
0
@@ -10,7 +10,16 @@ module ActionController
0
   end
0
 
0
   class TestCase < ActiveSupport::TestCase
0
+ module RaiseActionExceptions
0
+ def rescue_action(e)
0
+ raise e
0
+ end
0
+ end
0
+
0
+ setup :setup_controller_request_and_response
0
+
0
     @@controller_class = nil
0
+
0
     class << self
0
       def tests(controller_class)
0
         self.controller_class = controller_class
0
@@ -25,7 +34,7 @@ module ActionController
0
         if current_controller_class = read_inheritable_attribute(:controller_class)
0
           current_controller_class
0
         else
0
- self.controller_class= determine_default_controller_class(name)
0
+ self.controller_class = determine_default_controller_class(name)
0
         end
0
       end
0
 
0
@@ -36,31 +45,14 @@ module ActionController
0
       end
0
 
0
       def prepare_controller_class(new_class)
0
- new_class.class_eval do
0
- def rescue_action(e)
0
- raise e
0
- end
0
- end
0
+ new_class.send :include, RaiseActionExceptions
0
       end
0
     end
0
 
0
- def setup_with_controller
0
+ def setup_controller_request_and_response
0
       @controller = self.class.controller_class.new
0
       @request = TestRequest.new
0
       @response = TestResponse.new
0
     end
0
- alias_method :setup, :setup_with_controller
0
-
0
- def self.method_added(method)
0
- if method.to_s == 'setup'
0
- unless method_defined?(:setup_without_controller)
0
- alias_method :setup_without_controller, :setup
0
- define_method(:setup) do
0
- setup_with_controller
0
- setup_without_controller
0
- end
0
- end
0
- end
0
- end
0
  end
0
 end
...
1
 
2
3
4
...
1
2
3
4
5
0
@@ -1,4 +1,5 @@
0
 require 'action_controller/assertions'
0
+require 'action_controller/test_case'
0
 
0
 module ActionController #:nodoc:
0
   class Base
...
84
85
86
87
 
88
89
90
...
84
85
86
 
87
88
89
90
0
@@ -84,7 +84,7 @@ class ActiveRecordTestConnector
0
   end
0
 end
0
 
0
-class ActiveRecordTestCase < Test::Unit::TestCase
0
+class ActiveRecordTestCase < ActiveSupport::TestCase
0
   # Set our fixture path
0
   if ActiveRecordTestConnector.able_to_connect
0
     self.fixture_path = "#{File.dirname(__FILE__)}/fixtures/"
...
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
 
628
629
630
...
613
614
615
 
 
 
 
 
 
 
 
 
 
616
617
618
619
620
621
0
@@ -613,18 +613,9 @@ class InferringClassNameTest < Test::Unit::TestCase
0
     end
0
 end
0
 
0
-class ContentControllerTest < ActionController::TestCase
0
- def setup
0
- # Should not override ActionController setup methods
0
- end
0
-
0
- def test_should_still_setup_controller
0
- assert_kind_of(ContentController, @controller)
0
- end
0
-end
0
-
0
 class CrazyNameTest < ActionController::TestCase
0
   tests ContentController
0
+
0
   def test_controller_class_can_be_set_manually_not_just_inferred
0
     assert_equal ContentController, self.class.controller_class
0
   end
...
1
2
3
 
4
5
6
7
8
 
 
 
 
 
 
9
10
11
...
29
30
31
32
 
33
34
35
...
89
90
91
92
 
93
94
95
...
115
116
117
118
 
119
120
121
...
125
126
127
128
 
129
130
131
...
191
192
193
194
 
195
196
197
...
842
843
844
 
 
 
845
846
847
...
857
858
859
860
861
862
863
864
865
866
867
868
869
 
 
 
870
871
872
873
874
875
 
 
 
 
 
 
 
876
877
878
879
880
881
882
883
884
 
 
 
 
 
 
 
 
 
 
 
 
 
 
885
886
887
888
889
890
891
892
 
 
 
 
893
894
895
 
 
896
897
 
898
899
900
 
 
901
902
903
904
905
 
 
 
 
 
906
907
908
909
 
 
910
911
912
913
914
915
916
917
 
 
 
 
918
919
920
921
 
 
 
 
922
923
924
...
926
927
928
929
930
 
 
931
932
933
...
955
956
957
958
959
960
961
 
 
962
963
964
...
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
...
1
2
3
4
5
 
 
 
 
6
7
8
9
10
11
12
13
14
...
32
33
34
 
35
36
37
38
...
92
93
94
 
95
96
97
98
...
118
119
120
 
121
122
123
124
...
128
129
130
 
131
132
133
134
...
194
195
196
 
197
198
199
200
...
845
846
847
848
849
850
851
852
853
...
863
864
865
 
 
 
 
 
 
 
 
 
 
866
867
868
869
870
 
 
 
 
871
872
873
874
875
876
877
878
 
 
 
 
 
 
 
 
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
 
895
 
 
 
 
896
897
898
899
900
 
 
901
902
903
 
904
905
 
 
906
907
908
 
 
 
 
909
910
911
912
913
914
 
915
 
916
917
918
919
 
920
 
 
 
 
921
922
923
924
925
 
 
 
926
927
928
929
930
931
932
...
934
935
936
 
 
937
938
939
940
941
...
963
964
965
 
966
 
 
967
968
969
970
971
...
978
979
980
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
981
982
983
0
@@ -1,11 +1,14 @@
0
 require 'erb'
0
 require 'yaml'
0
 require 'csv'
0
+require 'active_support/test_case'
0
 
0
-module YAML #:nodoc:
0
- class Omap #:nodoc:
0
- def keys; map { |k, v| k } end
0
- def values; map { |k, v| v } end
0
+if RUBY_VERSION < '1.9'
0
+ module YAML #:nodoc:
0
+ class Omap #:nodoc:
0
+ def keys; map { |k, v| k } end
0
+ def values; map { |k, v| v } end
0
+ end
0
   end
0
 end
0
 
0
@@ -29,7 +32,7 @@ end
0
 # in a non-verbose, human-readable format. It ships with Ruby 1.8.1+.
0
 #
0
 # Unlike single-file fixtures, YAML fixtures are stored in a single file per model, which are placed in the directory appointed
0
-# by <tt>Test::Unit::TestCase.fixture_path=(path)</tt> (this is automatically configured for Rails, so you can just
0
+# by <tt>ActiveSupport::TestCase.fixture_path=(path)</tt> (this is automatically configured for Rails, so you can just
0
 # put your files in <your-rails-app>/test/fixtures/). The fixture file ends with the .yml file extension (Rails example:
0
 # "<your-rails-app>/test/fixtures/web_sites.yml"). The format of a YAML fixture file looks like this:
0
 #
0
@@ -89,7 +92,7 @@ end
0
 #
0
 # This type of fixture was the original format for Active Record that has since been deprecated in favor of the YAML and CSV formats.
0
 # Fixtures for this format are created by placing text files in a sub-directory (with the name of the model) to the directory
0
-# appointed by <tt>Test::Unit::TestCase.fixture_path=(path)</tt> (this is automatically configured for Rails, so you can just
0
+# appointed by <tt>ActiveSupport::TestCase.fixture_path=(path)</tt> (this is automatically configured for Rails, so you can just
0
 # put your files in <your-rails-app>/test/fixtures/<your-model-name>/ -- like <your-rails-app>/test/fixtures/web_sites/ for the WebSite
0
 # model).
0
 #
0
@@ -115,7 +118,7 @@ end
0
 #
0
 # require 'web_site'
0
 #
0
-# class WebSiteTest < Test::Unit::TestCase
0
+# class WebSiteTest < ActiveSupport::TestCase
0
 # def test_web_site_count
0
 # assert_equal 2, WebSite.count
0
 # end
0
@@ -125,7 +128,7 @@ end
0
 # easiest way to add fixtures to the database:
0
 #
0
 # ...
0
-# class WebSiteTest < Test::Unit::TestCase
0
+# class WebSiteTest < ActiveSupport::TestCase
0
 # fixtures :web_sites # add more by separating the symbols with commas
0
 # ...
0
 #
0
@@ -191,7 +194,7 @@ end
0
 # TestCases can use begin+rollback to isolate their changes to the database instead of having to delete+insert for every test case.
0
 # They can also turn off auto-instantiation of fixture data since the feature is costly and often unused.
0
 #
0
-# class FooTest < Test::Unit::TestCase
0
+# class FooTest < ActiveSupport::TestCase
0
 # self.use_transactional_fixtures = true
0
 # self.use_instantiated_fixtures = false
0
 #
0
@@ -842,6 +845,9 @@ end
0
 module Test #:nodoc:
0
   module Unit #:nodoc:
0
     class TestCase #:nodoc:
0
+ setup :setup_fixtures
0
+ teardown :teardown_fixtures
0
+
0
       superclass_delegating_accessor :fixture_path
0
       superclass_delegating_accessor :fixture_table_names
0
       superclass_delegating_accessor :fixture_class_names
0
@@ -857,68 +863,70 @@ module Test #:nodoc:
0
       @@already_loaded_fixtures = {}
0
       self.fixture_class_names = {}
0
 
0
- def self.set_fixture_class(class_names = {})
0
- self.fixture_class_names = self.fixture_class_names.merge(class_names)
0
- end
0
-
0
- def self.fixtures(*table_names)
0
- if table_names.first == :all
0
- table_names = Dir["#{fixture_path}/*.yml"] + Dir["#{fixture_path}/*.csv"]
0
- table_names.map! { |f| File.basename(f).split('.')[0..-2].join('.') }
0
- else
0
- table_names = table_names.flatten.map { |n| n.to_s }
0
+ class << self
0
+ def set_fixture_class(class_names = {})
0
+ self.fixture_class_names = self.fixture_class_names.merge(class_names)
0
         end
0
 
0
- self.fixture_table_names |= table_names
0
- require_fixture_classes(table_names)
0
- setup_fixture_accessors(table_names)
0
- end
0
+ def fixtures(*table_names)
0
+ if table_names.first == :all
0
+ table_names = Dir["#{fixture_path}/*.yml"] + Dir["#{fixture_path}/*.csv"]
0
+ table_names.map! { |f| File.basename(f).split('.')[0..-2].join('.') }
0
+ else
0
+ table_names = table_names.flatten.map { |n| n.to_s }
0
+ end
0
 
0
- def self.require_fixture_classes(table_names = nil)
0
- (table_names || fixture_table_names).each do |table_name|
0
- file_name = table_name.to_s
0
- file_name = file_name.singularize if ActiveRecord::Base.pluralize_table_names
0
- begin
0
- require_dependency file_name
0
- rescue LoadError
0
- # Let's hope the developer has included it himself
0
+ self.fixture_table_names |= table_names
0
+ require_fixture_classes(table_names)
0
+ setup_fixture_accessors(table_names)
0
+ end
0
+
0
+ def require_fixture_classes(table_names = nil)
0
+ (table_names || fixture_table_names).each do |table_name|
0
+ file_name = table_name.to_s
0
+ file_name = file_name.singularize if ActiveRecord::Base.pluralize_table_names
0
+ begin
0
+ require_dependency file_name
0
+ rescue LoadError
0
+ # Let's hope the developer has included it himself
0
+ end
0
           end
0
         end
0
- end
0
 
0
- def self.setup_fixture_accessors(table_names = nil)
0
- table_names = [table_names] if table_names && !table_names.respond_to?(:each)
0
- (table_names || fixture_table_names).each do |table_name|
0
- table_name = table_name.to_s.tr('.', '_')
0
+ def setup_fixture_accessors(table_names = nil)
0
+ table_names = [table_names] if table_names && !table_names.respond_to?(:each)
0
+ (table_names || fixture_table_names).each do |table_name|
0
+ table_name = table_name.to_s.tr('.', '_')
0
 
0
- define_method(table_name) do |*fixtures|
0
- force_reload = fixtures.pop if fixtures.last == true || fixtures.last == :reload
0
+ define_method(table_name) do |*fixtures|
0
+ force_reload = fixtures.pop if fixtures.last == true || fixtures.last == :reload
0
 
0
- @fixture_cache[table_name] ||= {}
0
+ @fixture_cache[table_name] ||= {}
0
 
0
- instances = fixtures.map do |fixture|
0
- @fixture_cache[table_name].delete(fixture) if force_reload
0
+ instances = fixtures.map do |fixture|
0
+ @fixture_cache[table_name].delete(fixture) if force_reload
0
 
0
- if @loaded_fixtures[table_name][fixture.to_s]
0
- @fixture_cache[table_name][fixture] ||= @loaded_fixtures[table_name][fixture.to_s].find
0
- else
0
- raise StandardError, "No fixture with name '#{fixture}' found for table '#{table_name}'"
0
+ if @loaded_fixtures[table_name][fixture.to_s]
0
+ @fixture_cache[table_name][fixture] ||= @loaded_fixtures[table_name][fixture.to_s].find
0
+ else
0
+ raise StandardError, "No fixture with name '#{fixture}' found for table '#{table_name}'"
0
+ end
0
               end
0
- end
0
 
0
- instances.size == 1 ? instances.first : instances
0
+ instances.size == 1 ? instances.first : instances
0
+ end
0
           end
0
         end
0
- end
0
 
0
- def self.uses_transaction(*methods)
0
- @uses_transaction = [] unless defined?(@uses_transaction)
0
- @uses_transaction.concat methods.map(&:to_s)
0
- end
0
+ def uses_transaction(*methods)
0
+ @uses_transaction = [] unless defined?(@uses_transaction)
0
+ @uses_transaction.concat methods.map(&:to_s)
0
+ end
0
 
0
- def self.uses_transaction?(method)
0
- @uses_transaction = [] unless defined?(@uses_transaction)
0
- @uses_transaction.include?(method.to_s)
0
+ def uses_transaction?(method)
0
+ @uses_transaction = [] unless defined?(@uses_transaction)
0
+ @uses_transaction.include?(method.to_s)
0
+ end
0
       end
0
 
0
       def use_transactional_fixtures?
0
@@ -926,8 +934,8 @@ module Test #:nodoc:
0
           !self.class.uses_transaction?(method_name)
0
       end
0
 
0
- def setup_with_fixtures
0
- return unless defined?(ActiveRecord::Base) && !ActiveRecord::Base.configurations.blank?
0
+ def setup_fixtures
0
+ return unless defined?(ActiveRecord) && !ActiveRecord::Base.configurations.blank?
0
 
0
         if pre_loaded_fixtures && !use_transactional_fixtures
0
           raise RuntimeError, 'pre_loaded_fixtures requires use_transactional_fixtures'
0
@@ -955,10 +963,9 @@ module Test #:nodoc:
0
         # Instantiate fixtures for every test if requested.
0
         instantiate_fixtures if use_instantiated_fixtures
0
       end
0
- alias_method :setup, :setup_with_fixtures
0
 
0
- def teardown_with_fixtures
0
- return unless defined?(ActiveRecord::Base) && !ActiveRecord::Base.configurations.blank?
0
+ def teardown_fixtures
0
+ return unless defined?(ActiveRecord) && !ActiveRecord::Base.configurations.blank?
0
 
0
         unless use_transactional_fixtures?
0
           Fixtures.reset_cache
0
@@ -971,28 +978,6 @@ module Test #:nodoc:
0
         end
0
         ActiveRecord::Base.verify_active_connections!
0
       end
0
- alias_method :teardown, :teardown_with_fixtures
0
-
0
- def self.method_added(method)
0
- case method.to_s
0
- when 'setup'
0
- unless method_defined?(:setup_without_fixtures)
0
- alias_method :setup_without_fixtures, :setup
0
- define_method(:setup) do
0
- setup_with_fixtures
0
- setup_without_fixtures
0
- end
0
- end
0
- when 'teardown'
0
- unless method_defined?(:teardown_without_fixtures)
0
- alias_method :teardown_without_fixtures, :teardown
0
- define_method(:teardown) do
0
- teardown_without_fixtures
0
- teardown_with_fixtures
0
- end
0
- end
0
- end
0
- end
0
 
0
       private
0
         def load_fixtures
...
1
2
3
4
 
5
6
7
...
1
2
3
 
4
5
6
7
0
@@ -1,7 +1,7 @@
0
 # The filename begins with "aaa" to ensure this is the first test.
0
 require 'abstract_unit'
0
 
0
-class AAACreateTablesTest < Test::Unit::TestCase
0
+class AAACreateTablesTest < ActiveSupport::TestCase
0
   self.use_transactional_fixtures = false
0
 
0
   def setup
...
13
14
15
16
 
17
18
19
...
13
14
15
 
16
17
18
19
0
@@ -13,7 +13,7 @@ ActiveSupport::Deprecation.debug = true
0
 
0
 QUOTED_TYPE = ActiveRecord::Base.connection.quote_column_name('type') unless Object.const_defined?(:QUOTED_TYPE)
0
 
0
-class Test::Unit::TestCase #:nodoc:
0
+class ActiveSupport::TestCase #:nodoc:
0
   self.fixture_path = File.dirname(__FILE__) + "/fixtures/"
0
   self.use_instantiated_fixtures = false
0
   self.use_transactional_fixtures = (ENV['AR_NO_TX_FIXTURES'] != "yes")
...
1
2
3
 
4
5
6
...
1
2
 
3
4
5
6
0
@@ -1,6 +1,6 @@
0
 require 'abstract_unit'
0
 
0
-class ActiveSchemaTest < Test::Unit::TestCase
0
+class ActiveSchemaTest < ActiveSupport::TestCase
0
   def setup
0
     ActiveRecord::ConnectionAdapters::MysqlAdapter.class_eval do
0
       alias_method :execute_without_stub, :execute
...
1
2
3
 
4
5
6
...
1
2
 
3
4
5
6
0
@@ -1,6 +1,6 @@
0
 require 'abstract_unit'
0
 
0
-class AdapterTest < Test::Unit::TestCase
0
+class AdapterTest < ActiveSupport::TestCase
0
   def setup
0
     @connection = ActiveRecord::Base.connection
0
   end
...
3
4
5
6
 
7
8
9
...
3
4
5
 
6
7
8
9
0
@@ -3,7 +3,7 @@ require 'fixtures/default'
0
 require 'fixtures/post'
0
 require 'fixtures/task'
0
 
0
-class SqlServerAdapterTest < Test::Unit::TestCase
0
+class SqlServerAdapterTest < ActiveSupport::TestCase
0
   class TableWithRealColumn < ActiveRecord::Base; end
0
 
0
   fixtures :posts, :tasks
...
1
2
3
4
 
5
6
7
...
109
110
111
112
 
113
114
115
...
1
2
3
 
4
5
6
7
...
109
110
111
 
112
113
114
115
0
@@ -1,7 +1,7 @@
0
 require 'abstract_unit'
0
 require 'fixtures/customer'
0
 
0
-class AggregationsTest < Test::Unit::TestCase
0
+class AggregationsTest < ActiveSupport::TestCase
0
   fixtures :customers
0
 
0
   def test_find_single_value_object
0
@@ -109,7 +109,7 @@ class AggregationsTest < Test::Unit::TestCase
0
   end
0
 end
0
 
0
-class OverridingAggregationsTest < Test::Unit::TestCase
0
+class OverridingAggregationsTest < ActiveSupport::TestCase
0
   class Name; end
0
   class DifferentName; end
0
 
...
3
4
5
6
 
7
8
9
...
3
4
5
 
6
7
8
9
0
@@ -3,7 +3,7 @@ require "#{File.dirname(__FILE__)}/../lib/active_record/schema"
0
 
0
 if ActiveRecord::Base.connection.supports_migrations?
0
 
0
- class ActiveRecordSchemaTest < Test::Unit::TestCase
0
+ class ActiveRecordSchemaTest < ActiveSupport::TestCase
0
     self.use_transactional_fixtures = false
0
 
0
     def setup
...
1
2
3
4
 
5
6
7
...
1
2
3
 
4
5
6
7
0
@@ -1,7 +1,7 @@
0
 require 'abstract_unit'
0
 require 'fixtures/company'
0
 
0
-class AssociationInheritanceReloadTest < Test::Unit::TestCase
0
+class AssociationInheritanceReloadTest < ActiveSupport::TestCase
0
   fixtures :companies
0
 
0
   def test_set_attributes
0