Sha256: 036dbfb962f09c14f249833e2a2077d8dfb15189e678993291f2ed6f8ea66d5c

Contents?: true

Size: 1.81 KB

Versions: 4

Compression:

Stored size: 1.81 KB

Contents

require 'active_record/base'
require 'active_record/connection_adapters/abstract_adapter'
require "database_cleaner/generic/truncation"
require 'database_cleaner/active_record/base'
require 'database_cleaner/active_record/truncation'
# This file may seem to have duplication with that of truncation, but by keeping them separate
# we avoiding loading this code when it is not being used (which is the common case).

module ActiveRecord
  module ConnectionAdapters

    class MysqlAdapter < MYSQL_ADAPTER_PARENT
      def delete_table(table_name)
        execute("DELETE FROM #{quote_table_name(table_name)};")
      end
    end

    class Mysql2Adapter < MYSQL2_ADAPTER_PARENT
      def delete_table(table_name)
        execute("DELETE FROM #{quote_table_name(table_name)};")
      end
    end

    class JdbcAdapter < AbstractAdapter
      def delete_table(table_name)
          execute("DELETE FROM #{quote_table_name(table_name)};")
      end
    end

    class PostgreSQLAdapter < AbstractAdapter
      def delete_table(table_name)
        execute("DELETE FROM #{quote_table_name(table_name)};")
      end
    end

    class SQLServerAdapter < AbstractAdapter
      def delete_table(table_name)
        execute("DELETE FROM #{quote_table_name(table_name)};")
      end
    end

    class OracleEnhancedAdapter < AbstractAdapter
      def delete_table(table_name)
        execute("DELETE FROM #{quote_table_name(table_name)}")
      end
    end

  end
end


module DatabaseCleaner::ActiveRecord
  class Deletion < Truncation

    def clean
      connection = connection_klass.connection
      connection.disable_referential_integrity do
        tables_to_truncate(connection).each do |table_name|
          connection.delete_table table_name
        end
      end
    end

  end
end


Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
surgical_strike-0.7.7 lib/database_cleaner/active_record/deletion.rb
surgical_strike-0.7.6 lib/database_cleaner/active_record/deletion.rb
surgical_strike-0.7.5 lib/database_cleaner/active_record/deletion.rb
surgical_strike-0.7.4 lib/database_cleaner/active_record/deletion.rb