diff options
Diffstat (limited to 'activerecord/lib/active_record/test_case.rb')
-rw-r--r-- | activerecord/lib/active_record/test_case.rb | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/test_case.rb b/activerecord/lib/active_record/test_case.rb new file mode 100644 index 0000000000..d5126849be --- /dev/null +++ b/activerecord/lib/active_record/test_case.rb @@ -0,0 +1,35 @@ +require "active_support/test_case" + +module ActiveRecord + class TestCase < ActiveSupport::TestCase #:nodoc: + self.fixture_path = FIXTURES_ROOT + self.use_instantiated_fixtures = false + + def create_fixtures(*table_names, &block) + Fixtures.create_fixtures(FIXTURES_ROOT, table_names, {}, &block) + end + + def assert_date_from_db(expected, actual, message = nil) + # SQL Server doesn't have a separate column type just for dates, + # so the time is in the string and incorrectly formatted + if current_adapter?(:SQLServerAdapter) + assert_equal expected.strftime("%Y/%m/%d 00:00:00"), actual.strftime("%Y/%m/%d 00:00:00") + elsif current_adapter?(:SybaseAdapter) + assert_equal expected.to_s, actual.to_date.to_s, message + else + assert_equal expected.to_s, actual.to_s, message + end + end + + def assert_queries(num = 1) + $query_count = 0 + yield + ensure + assert_equal num, $query_count, "#{$query_count} instead of #{num} queries were executed." + end + + def assert_no_queries(&block) + assert_queries(0, &block) + end + end +end |