Sha256: 02112a03a8c77a1d46d5f6f49918e2c9e4c35a1dceee6f98066b602c46f46c53

Contents?: true

Size: 743 Bytes

Versions: 4

Compression:

Stored size: 743 Bytes

Contents

require 'database_cleaner/redis/base'
require 'database_cleaner/generic/truncation'

module DatabaseCleaner
  module Redis
    class Truncation
      include ::DatabaseCleaner::Redis::Base
      include ::DatabaseCleaner::Generic::Truncation

      def clean
        if @only
          @only.each do |term|
            connection.keys(term).each { |k| connection.del k }
          end
        elsif @tables_to_exclude
          keys_except = []
          @tables_to_exclude.each { |term| keys_except += connection.keys(term) }
          connection.keys.each { |k| connection.del(k) unless keys_except.include?(k) }
        else
          connection.flushdb
        end
        connection.quit unless db == :default
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
database_cleaner-1.99.0 adapters/database_cleaner-redis/lib/database_cleaner/redis/truncation.rb
database_cleaner-redis-1.99.0 lib/database_cleaner/redis/truncation.rb
database_cleaner-1.99.0.beta adapters/database_cleaner-redis/lib/database_cleaner/redis/truncation.rb
database_cleaner-redis-1.99.0.beta lib/database_cleaner/redis/truncation.rb