<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -3,7 +3,7 @@ require 'rake/gempackagetask'
 require 'rubygems/specification'
 
 GEM = &quot;micronaut&quot;
-GEM_VERSION = &quot;0.1.4.4&quot;
+GEM_VERSION = &quot;0.1.5&quot;
 AUTHOR = &quot;Chad Humphries&quot;
 EMAIL = &quot;chad@spicycode.com&quot;
 HOMEPAGE = &quot;http://spicycode.com&quot;</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,4 @@
 #!/usr/bin/env ruby
-$LOAD_PATH.unshift(File.dirname(__FILE__) + '/../lib')
+$LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__) + '/../lib'))
 require 'micronaut'
 Micronaut.configuration.autorun!
\ No newline at end of file</diff>
      <filename>bin/micronaut</filename>
    </modified>
    <modified>
      <diff>@@ -57,12 +57,12 @@ describe Micronaut::Formatters::ProgressFormatter do
      @output.string.should == &quot;&quot;
    end
    
-   it &quot;should ensure two ':' in the first backtrace&quot; do
+   it &quot;should ensure ':' in the first backtrace&quot; do
      backtrace = [&quot;/tmp/x.rb:1&quot;, &quot;/tmp/x.rb:2&quot;, &quot;/tmp/x.rb:3&quot;]
-     @formatter.format_backtrace(backtrace).should == &quot;/tmp/x.rb:1&quot;
+     @formatter.format_backtrace(backtrace).should == backtrace
    
      backtrace = [&quot;/tmp/x.rb:1: message&quot;, &quot;/tmp/x.rb:2&quot;, &quot;/tmp/x.rb:3&quot;]
-     @formatter.format_backtrace(backtrace).should == &quot;/tmp/x.rb:1: message&quot;
+     @formatter.format_backtrace(backtrace).first.should == &quot;/tmp/x.rb:1: message&quot;
    end
    
 end
\ No newline at end of file</diff>
      <filename>examples/lib/micronaut/formatters/progress_formatter_example.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,4 +2,40 @@ require File.expand_path(File.dirname(__FILE__) + &quot;/../../example_helper&quot;)
 
 describe Micronaut::Runner do
 
+  before do 
+    @runner = Micronaut::Runner.new
+  end
+
+  describe '#configuration' do
+
+    it &quot;should return Micronaut.configuration&quot; do
+      @runner.configuration.should == Micronaut.configuration
+    end
+
+  end
+
+  describe '#formatter' do
+
+    it 'should return the configured formatter' do
+      @runner.formatter.should == Micronaut.configuration.formatter
+    end
+
+  end  
+  
+  describe 'Micronaut::Runner.at_exit' do
+    
+    it 'should set an at_exit hook if none is already set' do
+      Micronaut::Runner.stubs(:installed_at_exit?).returns(false)
+      Micronaut::Runner.expects(:at_exit)
+      Micronaut::Runner.autorun
+    end
+    
+    it 'should not set the at_exit hook if it is already set' do
+      Micronaut::Runner.stubs(:installed_at_exit?).returns(true)
+      Micronaut::Runner.expects(:at_exit).never
+      Micronaut::Runner.autorun
+    end
+    
+  end
+  
 end
\ No newline at end of file</diff>
      <filename>examples/lib/micronaut/runner_example.rb</filename>
    </modified>
    <modified>
      <diff>@@ -23,7 +23,7 @@ module Micronaut
     
     
     def initialize
-      @backtrace_clean_patterns = [/\/lib\/ruby\//, /bin\/rcov:/, /vendor\/rails/]
+      @backtrace_clean_patterns = [/\/lib\/ruby\//, /bin\/rcov:/, /vendor\/rails/, /bin\/micronaut/]
       @profile_examples = false
       @run_all_when_everything_filtered = true
       @filter = nil
@@ -31,7 +31,7 @@ module Micronaut
     end
     
     def cleaned_from_backtrace?(line)
-      return true if line.starts_with?(::Micronaut::InstallDirectory)
+      return true if line =~ /#{::Micronaut::InstallDirectory}/
       
       @backtrace_clean_patterns.any? do |pattern|
         line =~ pattern</diff>
      <filename>lib/micronaut/configuration.rb</filename>
    </modified>
    <modified>
      <diff>@@ -107,7 +107,7 @@ module Micronaut
       def format_backtrace(backtrace)
         return &quot;&quot; if backtrace.nil?
         cleansed = backtrace.map { |line| backtrace_line(line) }.compact
-        cleansed.empty? ? backtrace.join(&quot;\n&quot;) : cleansed.first
+        cleansed.empty? ? backtrace : cleansed
       end
       
       protected
@@ -121,7 +121,7 @@ module Micronaut
       
       def read_failed_line(file_path_with_line_number)
         file_path, line_number = file_path_with_line_number.split(':')
-        open(file_path, 'r') { |f| f.readlines[line_number.to_i + 1].strip }
+        open(file_path, 'r') { |f| f.readlines[line_number.to_i - 1] }
       end
       
     end</diff>
      <filename>lib/micronaut/formatters/base_formatter.rb</filename>
    </modified>
    <modified>
      <diff>@@ -31,9 +31,11 @@ module Micronaut
           example, exception = examples_with_exception.first, examples_with_exception.last
           padding = '    '
           output.puts &quot;#{index.next}) #{example}&quot;
-          # output.puts &quot;#{padding}failing statement:  #{read_failed_line(example.options[:caller])}\n&quot;
-          output.puts &quot;#{padding}#{colorise(exception.message, exception).strip}&quot;
-          output.puts grey(&quot;#{padding}# #{format_backtrace(exception.backtrace)}&quot;)
+          output.puts &quot;#{padding}#{colorise(exception.message, exception).strip}\n\n&quot;
+          output.puts &quot;#{padding}failing statement: #{read_failed_line(exception.backtrace[4]).strip}&quot;
+          format_backtrace(exception.backtrace).each do |backtrace_info|
+            output.puts grey(&quot;#{padding}# #{backtrace_info}&quot;)
+          end
           output.puts 
           output.flush
         end</diff>
      <filename>lib/micronaut/formatters/base_text_formatter.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,7 +2,7 @@
 
 Gem::Specification.new do |s|
   s.name = %q{micronaut}
-  s.version = &quot;0.1.4.4&quot;
+  s.version = &quot;0.1.5&quot;
 
   s.required_rubygems_version = Gem::Requirement.new(&quot;&gt;= 0&quot;) if s.respond_to? :required_rubygems_version=
   s.authors = [&quot;Chad Humphries&quot;]</diff>
      <filename>micronaut.gemspec</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>5db59274e4c2f87adde8cbe2d6c752ee7181bb05</id>
    </parent>
  </parents>
  <author>
    <name>Chad Humphries</name>
    <email>chad@spicycode.com</email>
  </author>
  <url>http://github.com/spicycode/micronaut/commit/61605136b4dc9bc4b69f99ac5fb9ffaedfa7156a</url>
  <id>61605136b4dc9bc4b69f99ac5fb9ffaedfa7156a</id>
  <committed-date>2008-12-20T14:07:52-08:00</committed-date>
  <authored-date>2008-12-20T14:07:52-08:00</authored-date>
  <message>Release 0.1.5

  - Added display of the failing line into the the error output
  - Squashed bug in stand-alone runner by expanding the path prior to unshifting it
  - Excluded bin/micronaut from the backtrace</message>
  <tree>ed6fca44f052d8446c6f02031ad58ed2140d1879</tree>
  <committer>
    <name>Chad Humphries</name>
    <email>chad@spicycode.com</email>
  </committer>
</commit>
