aboutsummaryrefslogblamecommitdiffstats
path: root/activerecord/test/ar_schema_test.rb
blob: c3dca54a949a9636a6e7ef76bf8ea11f0a107c15 (plain) (tree)
1
2
3
4
5
6
7
8




                                                               
                                                        

                                           











                                                   
                                                                             











                                                                                               
require 'abstract_unit'
require "#{File.dirname(__FILE__)}/../lib/active_record/schema"

if ActiveRecord::Base.connection.supports_migrations? 

  class ActiveRecordSchemaTest < ActiveSupport::TestCase
    self.use_transactional_fixtures = false

    def setup
      @connection = ActiveRecord::Base.connection
    end

    def teardown
      @connection.drop_table :fruits rescue nil
    end

    def test_schema_define
      ActiveRecord::Schema.define(:version => 7) do
        create_table :fruits do |t|
          t.column :color, :string
          t.column :fruit_size, :string  # NOTE: "size" is reserved in Oracle
          t.column :texture, :string
          t.column :flavor, :string
        end
      end

      assert_nothing_raised { @connection.select_all "SELECT * FROM fruits" }
      assert_nothing_raised { @connection.select_all "SELECT * FROM schema_info" }
      assert_equal 7, @connection.select_one("SELECT version FROM schema_info")['version'].to_i
    end
  end

end