/usr/lib/ruby/vendor_ruby/database_cleaner/mongo2/truncation_mixin.rb is in ruby-database-cleaner 1.5.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | module DatabaseCleaner
module Mongo2
module TruncationMixin
def clean
if @only
collections.each { |c| database[c].find.delete_many if @only.include?(c) }
else
collections.each { |c| database[c].find.delete_many unless @tables_to_exclude.include?(c) }
end
true
end
private
def database
if @db.nil? || @db == :default
::Mongoid::Clients.default
else
::Mongoid::Clients.with_name(@db)
end
end
def collections
if db != :default
database.use(db)
end
database['system.namespaces'].find(:name => { '$not' => /\.system\.|\$/ }).to_a.map do |collection|
_, name = collection['name'].split('.', 2)
name
end
end
end
end
end
|