Sha256: d311b0fed7fd92e6ccea23db695c9c7e0c6793e6a93f66deea154a119cbdb248

Contents?: true

Size: 641 Bytes

Versions: 9

Compression:

Stored size: 641 Bytes

Contents

module DatabaseCleaner
  module Mongoid
    module Mongo1TruncationMixin
      def clean
        if @only
          collections.each { |c| c.send(truncate_method_name) if @only.include?(c.name) }
        else
          collections.each { |c| c.send(truncate_method_name) unless @tables_to_exclude.include?(c.name) }
        end
        true
      end

      private

      def collections
        database.collections.select { |c| c.name !~ /^system\./ }
      end

      def truncate_method_name
        # This constant only exists in the 2.x series.
        defined?(::Mongo::VERSION) ? :delete_many : :remove
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
database_cleaner-mongoid-1.99.0 lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-1.99.0 adapters/database_cleaner-mongoid/lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-1.99.0.beta adapters/database_cleaner-mongoid/lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-mongoid-1.99.0.beta lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-1.8.5 adapters/database_cleaner-mongoid/lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-1.8.4 adapters/database_cleaner-mongoid/lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-1.8.3 adapters/database_cleaner-mongoid/lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-1.8.2 adapters/database_cleaner-mongoid/lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb
database_cleaner-mongoid-1.8.1 lib/database_cleaner/mongoid/mongo1_truncation_mixin.rb