Sha256: 0a4746648d9964d9cd6aa41d2a773c6da2319a8b6249a587c6bff6e5167f4171

Contents?: true

Size: 1.06 KB

Versions: 3

Compression:

Stored size: 1.06 KB

Contents

module Autosuggest
  module TestCase
    module ActiveRecord
      def setup
        ::ActiveRecord::Base.establish_connection(:adapter => "sqlite3", :database => ":memory:")
        ::ActiveRecord::Schema.define(:version => 1) do
          create_table :tags do |t|
            t.string :name
          end
        end

        create_models

        @controller = RecipesController.new
      end

      def teardown
        destroy_models
        ::ActiveRecord::Base.connection.tables.each do |table|
          ::ActiveRecord::Base.connection.drop_table(table)
        end
      end

      private
      def create_models
        @tag_class = Object.const_set(:Tag, Class.new(::ActiveRecord::Base))
        @tag_class.class_eval do
          def display_name
            "Tag: #{name}"
          end
        end

        @tag1 = @tag_class.create(:name => 'Chinese')
        @tag2 = @tag_class.create(:name => 'Chicken')
        @tag3 = @tag_class.create(:name => 'Cajun')
      end

      def destroy_models
        Object.send(:remove_const, :Tag)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
autosuggest-rb-0.1.6 test/support/active_record.rb
autosuggest-rb-0.1.5 test/support/active_record.rb
autosuggest-rb-0.1.4 test/support/active_record.rb