lib/generators/voluntary/install/templates/spec/support/mongo_database_cleaner.rb in voluntary-0.1.0 vs lib/generators/voluntary/install/templates/spec/support/mongo_database_cleaner.rb in voluntary-0.2.0

- old
+ new

@@ -1,17 +1,27 @@ class MongoDatabaseCleaner def self.clean - Dir["#{Rails.root}/app/models/**/*.*"].each do |path_name| - path_name.gsub!("#{Rails.root.to_s}/app/models/", '') + root = Rails.root + + Dir["#{root}/app/models/**/*.*"].each do |name| + path_name = name.gsub("#{root}/app/models/", '') path_name = path_name.split('/') + + next if path_name.try(:first) == 'concerns' + klass = path_name.pop.sub(/\.rb$/,'').camelize unless path_name.none? klass = [path_name.map(&:camelize).join('::'), klass].join('::') end - klass = klass.constantize - + begin + klass = klass.constantize + rescue Exception => e + raise e + raise [klass, root, name, path_name].inspect + end + next if klass.respond_to?(:table_name) || !klass.respond_to?(:delete_all) klass.delete_all end end \ No newline at end of file