]> gitweb.michael.orlitzky.com - mailshears.git/blobdiff - lib/prune/prune_dummy_runner.rb
Make pruning use the correct config and clean up *before* running tests, too.
[mailshears.git] / lib / prune / prune_dummy_runner.rb
index 4274bef8f08db79990e9e98cc42e15d2c129619e..d488f7ea155c7a77633212aeee3776d844921bbe 100644 (file)
@@ -1,32 +1,24 @@
 require 'common/runner'
-
-# This is always needed, regardless of which plugin is running.
 require 'prune/plugins/postfixadmin'
+require 'rm/rm_dummy_runner'
 
 class PruneDummyRunner
   include Runner
 
-  def run(plugin)
+  def run(cfg, plugin)
     # We don't want to check the PostfixAdmin database against itself.
     return if plugin.class == PostfixadminPrune
 
-    pfa = PostfixadminPrune.new()
+    pfa = PostfixadminPrune.new(cfg)
 
     db_users = pfa.list_users()
     db_domains = pfa.list_domains()
 
-    leftover_users = plugin.get_leftover_accounts(db_users)
-    leftover_domains = plugin.get_leftover_domains(db_domains)
-
-    leftover_users.each do |user|
-      user_description = plugin.describe_account(user)
-      report(plugin, "Would remove user: #{user} (#{user_description})")
-    end
+    leftovers  = plugin.get_leftover_users(db_users)
+    leftovers += plugin.get_leftover_domains(db_domains)
 
-    leftover_domains.each do |domain|
-      domain_description = plugin.describe_domain(domain)
-      report(plugin, "Would remove domain: #{domain} (#{domain_description})")
-    end
+    rm_dummy_runner = RmDummyRunner.new()
+    rm_dummy_runner.run(cfg, plugin, *leftovers)
   end
 
 end