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

                                           











                                                   
                                                                             











                                                                                               
require "cases/helper"
require 'active_record/schema'

if ActiveRecord::Base.connection.supports_migrations?

  class ActiveRecordSchemaTest < ActiveRecord::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