summary refs log tree commit diff
path: root/lib/bacon.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/bacon.rb')
-rw-r--r--lib/bacon.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/bacon.rb b/lib/bacon.rb
index 884f6f2..80d5465 100644
--- a/lib/bacon.rb
+++ b/lib/bacon.rb
@@ -13,6 +13,19 @@ module Bacon
   RestrictName    = //  unless defined? RestrictName
   RestrictContext = //  unless defined? RestrictContext
 
+  def self.summary_on_exit
+    return  if Bacon::Counter[:installed_summary] > 0
+    at_exit {
+      Bacon.handle_summary
+      if $!
+        raise $!
+      elsif Bacon::Counter[:errors] + Bacon::Counter[:failed] > 0
+        exit 1
+      end
+    }
+    Bacon::Counter[:installed_summary] += 1
+  end
+
   module SpecDoxOutput
     def handle_specification(name)
       puts name