fuubar 1.2.1 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +23 -3
 - data/README.md +81 -0
 - data/lib/fuubar.rb +58 -26
 - data/spec/fuubar_spec.rb +182 -68
 - metadata +23 -35
 - data/.gitignore +0 -4
 - data/.rspec +0 -2
 - data/Gemfile +0 -6
 - data/README.textile +0 -24
 - data/Rakefile +0 -6
 - data/fuubar.gemspec +0 -23
 - data/spec/spec_helper.rb +0 -1
 
    
        data/LICENSE
    CHANGED
    
    | 
         @@ -1,3 +1,23 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
      
 1 
     | 
    
         
            +
            (The MIT License)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            Copyright (c) 2010 Jeff Kreeftmeijer.
         
     | 
| 
      
 4 
     | 
    
         
            +
            Copyright (c) 2013 The Kompanee - Jeff Felchner
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            Permission is hereby granted, free of charge, to any person obtaining
         
     | 
| 
      
 7 
     | 
    
         
            +
            a copy of this software and associated documentation files (the
         
     | 
| 
      
 8 
     | 
    
         
            +
            "Software"), to deal in the Software without restriction, including
         
     | 
| 
      
 9 
     | 
    
         
            +
            without limitation the rights to use, copy, modify, merge, publish,
         
     | 
| 
      
 10 
     | 
    
         
            +
            distribute, sublicense, and/or sell copies of the Software, and to
         
     | 
| 
      
 11 
     | 
    
         
            +
            permit persons to whom the Software is furnished to do so, subject to
         
     | 
| 
      
 12 
     | 
    
         
            +
            the following conditions:
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
            The above copyright notice and this permission notice shall be
         
     | 
| 
      
 15 
     | 
    
         
            +
            included in all copies or substantial portions of the Software.
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
            THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
         
     | 
| 
      
 18 
     | 
    
         
            +
            EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
         
     | 
| 
      
 19 
     | 
    
         
            +
            MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
         
     | 
| 
      
 20 
     | 
    
         
            +
            IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
         
     | 
| 
      
 21 
     | 
    
         
            +
            CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
         
     | 
| 
      
 22 
     | 
    
         
            +
            TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
         
     | 
| 
      
 23 
     | 
    
         
            +
            SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
         
     | 
    
        data/README.md
    ADDED
    
    | 
         @@ -0,0 +1,81 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            Fuubar 
         
     | 
| 
      
 2 
     | 
    
         
            +
            ================================================================================
         
     | 
| 
      
 3 
     | 
    
         
            +
             
     | 
| 
      
 4 
     | 
    
         
            +
            Fuubar is an instafailing [RSpec](http://github.com/rspec) formatter that uses a progress bar instead of a string of letters and dots as feedback. Here's [a video of Fuubar in action](http://vimeo.com/16845253).
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            Supported Rubies
         
     | 
| 
      
 7 
     | 
    
         
            +
            --------------------------------
         
     | 
| 
      
 8 
     | 
    
         
            +
            * MRI Ruby 1.8.7
         
     | 
| 
      
 9 
     | 
    
         
            +
            * MRI Ruby 1.9.2
         
     | 
| 
      
 10 
     | 
    
         
            +
            * MRI Ruby 1.9.3
         
     | 
| 
      
 11 
     | 
    
         
            +
            * MRI Ruby 2.0.0
         
     | 
| 
      
 12 
     | 
    
         
            +
            * JRuby (in 1.8 compat mode)
         
     | 
| 
      
 13 
     | 
    
         
            +
            * JRuby (in 1.9 compat mode)
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
            Installation
         
     | 
| 
      
 16 
     | 
    
         
            +
            --------------------------------------------------------------------------------
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            First:
         
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            ```ruby
         
     | 
| 
      
 21 
     | 
    
         
            +
            gem install ruby-progressbar
         
     | 
| 
      
 22 
     | 
    
         
            +
            ```
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            or in your Gemfile
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
            ```ruby
         
     | 
| 
      
 27 
     | 
    
         
            +
            gem 'ruby-progressbar'
         
     | 
| 
      
 28 
     | 
    
         
            +
            ```
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            Then, when running rspec:
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
            ```
         
     | 
| 
      
 33 
     | 
    
         
            +
            rspec --format Fuubar --color spec
         
     | 
| 
      
 34 
     | 
    
         
            +
            ```
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
            Or, if you want to use Fuubar as your default formatter, simply put the options in your `.rspec` file:
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                --format Fuubar
         
     | 
| 
      
 39 
     | 
    
         
            +
                --color
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
            Advanced Usage
         
     | 
| 
      
 42 
     | 
    
         
            +
            --------------------------------
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
            ### Customizing the Bar ###
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
            Fuubar exposes an RSpec configuration variable called `fuubar_progress_bar_options` which, when set will be passed directly to [ruby-progressbar](https://github.com/jfelchner/ruby-progressbar) which does all the heavy lifting.  Take a look at the documentation for details on all of the options you can pass in.
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            Let's say for example that you would like to change the format of the bar. You would do that like so:
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
      
 50 
     | 
    
         
            +
            ```ruby
         
     | 
| 
      
 51 
     | 
    
         
            +
            # spec_helper.rb
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
            RSpec.configure do |config|
         
     | 
| 
      
 54 
     | 
    
         
            +
              config.fuubar_progress_bar_options = { :format => 'My Fuubar! <%B> %p%% %a' }
         
     | 
| 
      
 55 
     | 
    
         
            +
            end
         
     | 
| 
      
 56 
     | 
    
         
            +
            ```
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
            would make it so that, when Fuubar is output, it would look something like:
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
      
 60 
     | 
    
         
            +
                My Fuubar! <================================                  > 53.44% 00:12:31
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
            Issues
         
     | 
| 
      
 63 
     | 
    
         
            +
            --------------------------------
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
            If you have problems, please create a [Github issue](https://github.com/jeffkreeftmeijer/fuubar/issues).
         
     | 
| 
      
 66 
     | 
    
         
            +
             
     | 
| 
      
 67 
     | 
    
         
            +
            Credits
         
     | 
| 
      
 68 
     | 
    
         
            +
            --------------------------------
         
     | 
| 
      
 69 
     | 
    
         
            +
             
     | 
| 
      
 70 
     | 
    
         
            +
            fuubar was created by [Jeff Kreeftmeijer](https://github.com/jeffkreeftmeijer)
         
     | 
| 
      
 71 
     | 
    
         
            +
            fuubar is maintained by [Jeff Kreeftmeijer](https://github.com/jeffkreeftmeijer) and [The Kompanee, Ltd.](http://www.thekompanee.com)
         
     | 
| 
      
 72 
     | 
    
         
            +
             
     | 
| 
      
 73 
     | 
    
         
            +
            Contributing
         
     | 
| 
      
 74 
     | 
    
         
            +
            --------------------------------------------------------------------------------
         
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
            Found an issue? Have a great idea? Want to help? Great! Create an issue [issue](http://github.com/jeffkreeftmeijer/fuubar/issues) for it, or even better; fork the project and fix the problem yourself. Pull requests are always welcome. :)
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            License
         
     | 
| 
      
 79 
     | 
    
         
            +
            --------------------------------
         
     | 
| 
      
 80 
     | 
    
         
            +
             
     | 
| 
      
 81 
     | 
    
         
            +
            fuubar is Copyright © 2010-2013 Jeff Kreeftmeijer and Jeff Felchner. It is free software, and may be redistributed under the terms specified in the LICENSE file.
         
     | 
    
        data/lib/fuubar.rb
    CHANGED
    
    | 
         @@ -1,70 +1,102 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require 'rspec'
         
     | 
| 
       1 
2 
     | 
    
         
             
            require 'rspec/core/formatters/base_text_formatter'
         
     | 
| 
       2 
3 
     | 
    
         
             
            require 'ruby-progressbar'
         
     | 
| 
       3 
     | 
    
         
            -
             
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            RSpec.configuration.add_setting :fuubar_progress_bar_options, :default => {}
         
     | 
| 
       4 
6 
     | 
    
         | 
| 
       5 
7 
     | 
    
         
             
            class Fuubar < RSpec::Core::Formatters::BaseTextFormatter
         
     | 
| 
      
 8 
     | 
    
         
            +
              DEFAULT_PROGRESS_BAR_OPTIONS = { :format => ' %c/%C |%w>%i| %e ' }
         
     | 
| 
       6 
9 
     | 
    
         | 
| 
       7 
     | 
    
         
            -
               
     | 
| 
      
 10 
     | 
    
         
            +
              attr_accessor :progress
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
              def initialize(*args)
         
     | 
| 
       8 
13 
     | 
    
         
             
                super
         
     | 
| 
       9 
     | 
    
         
            -
             
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                progress_bar_options =  DEFAULT_PROGRESS_BAR_OPTIONS.
         
     | 
| 
      
 16 
     | 
    
         
            +
                                          merge(:throttle_rate  => continuous_integration? ? 1.0 : nil).
         
     | 
| 
      
 17 
     | 
    
         
            +
                                          merge(configuration.fuubar_progress_bar_options).
         
     | 
| 
      
 18 
     | 
    
         
            +
                                          merge(:total          => example_count,
         
     | 
| 
      
 19 
     | 
    
         
            +
                                                :output         => output,
         
     | 
| 
      
 20 
     | 
    
         
            +
                                                :autostart      => false)
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
                self.progress = ProgressBar.create(progress_bar_options)
         
     | 
| 
       10 
23 
     | 
    
         
             
              end
         
     | 
| 
       11 
24 
     | 
    
         | 
| 
       12 
     | 
    
         
            -
              def  
     | 
| 
       13 
     | 
    
         
            -
                 
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                 
     | 
| 
      
 25 
     | 
    
         
            +
              def start(example_count)
         
     | 
| 
      
 26 
     | 
    
         
            +
                super
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                progress.total = example_count
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
                with_current_color { progress.start }
         
     | 
| 
       16 
31 
     | 
    
         
             
              end
         
     | 
| 
       17 
32 
     | 
    
         | 
| 
       18 
33 
     | 
    
         
             
              def example_passed(example)
         
     | 
| 
       19 
34 
     | 
    
         
             
                super
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
       20 
36 
     | 
    
         
             
                increment
         
     | 
| 
       21 
37 
     | 
    
         
             
              end
         
     | 
| 
       22 
38 
     | 
    
         | 
| 
       23 
39 
     | 
    
         
             
              def example_pending(example)
         
     | 
| 
       24 
40 
     | 
    
         
             
                super
         
     | 
| 
       25 
     | 
    
         
            -
             
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
       26 
42 
     | 
    
         
             
                increment
         
     | 
| 
       27 
43 
     | 
    
         
             
              end
         
     | 
| 
       28 
44 
     | 
    
         | 
| 
       29 
45 
     | 
    
         
             
              def example_failed(example)
         
     | 
| 
       30 
46 
     | 
    
         
             
                super
         
     | 
| 
       31 
     | 
    
         
            -
                @state = :red
         
     | 
| 
       32 
47 
     | 
    
         | 
| 
       33 
     | 
    
         
            -
                 
     | 
| 
       34 
     | 
    
         
            -
             
     | 
| 
      
 48 
     | 
    
         
            +
                progress.clear
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
      
 50 
     | 
    
         
            +
                dump_failure    example, failed_examples.size - 1
         
     | 
| 
      
 51 
     | 
    
         
            +
                dump_backtrace  example
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
       35 
53 
     | 
    
         
             
                output.puts
         
     | 
| 
       36 
54 
     | 
    
         | 
| 
       37 
55 
     | 
    
         
             
                increment
         
     | 
| 
       38 
56 
     | 
    
         
             
              end
         
     | 
| 
       39 
57 
     | 
    
         | 
| 
       40 
     | 
    
         
            -
              def dump_failures
         
     | 
| 
       41 
     | 
    
         
            -
                # don't!
         
     | 
| 
       42 
     | 
    
         
            -
              end
         
     | 
| 
       43 
     | 
    
         
            -
             
     | 
| 
       44 
58 
     | 
    
         
             
              def message(string)
         
     | 
| 
       45 
     | 
    
         
            -
                if  
     | 
| 
       46 
     | 
    
         
            -
                   
     | 
| 
      
 59 
     | 
    
         
            +
                if progress.respond_to? :log
         
     | 
| 
      
 60 
     | 
    
         
            +
                  progress.log(string)
         
     | 
| 
       47 
61 
     | 
    
         
             
                else
         
     | 
| 
       48 
62 
     | 
    
         
             
                  super
         
     | 
| 
       49 
63 
     | 
    
         
             
                end
         
     | 
| 
       50 
64 
     | 
    
         
             
              end
         
     | 
| 
       51 
65 
     | 
    
         | 
| 
       52 
     | 
    
         
            -
              def  
     | 
| 
       53 
     | 
    
         
            -
                 
     | 
| 
      
 66 
     | 
    
         
            +
              def dump_failures
         
     | 
| 
      
 67 
     | 
    
         
            +
                #
         
     | 
| 
      
 68 
     | 
    
         
            +
                # We output each failure as it happens so we don't need to output them en
         
     | 
| 
      
 69 
     | 
    
         
            +
                # masse at the end of the run.
         
     | 
| 
      
 70 
     | 
    
         
            +
                #
         
     | 
| 
       54 
71 
     | 
    
         
             
              end
         
     | 
| 
       55 
72 
     | 
    
         | 
| 
       56 
     | 
    
         
            -
               
     | 
| 
       57 
     | 
    
         
            -
             
     | 
| 
      
 73 
     | 
    
         
            +
              private
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
              def increment
         
     | 
| 
      
 76 
     | 
    
         
            +
                with_current_color { progress.increment }
         
     | 
| 
      
 77 
     | 
    
         
            +
              end
         
     | 
| 
      
 78 
     | 
    
         
            +
             
     | 
| 
      
 79 
     | 
    
         
            +
              def with_current_color
         
     | 
| 
      
 80 
     | 
    
         
            +
                output.print "\e[#{color_code_for(current_color)}m" if color_enabled?
         
     | 
| 
       58 
81 
     | 
    
         
             
                yield
         
     | 
| 
       59 
     | 
    
         
            -
                output.print "\e[0m" 
     | 
| 
      
 82 
     | 
    
         
            +
                output.print "\e[0m"                                if color_enabled?
         
     | 
| 
       60 
83 
     | 
    
         
             
              end
         
     | 
| 
       61 
84 
     | 
    
         | 
| 
       62 
     | 
    
         
            -
              def  
     | 
| 
       63 
     | 
    
         
            -
                 
     | 
| 
      
 85 
     | 
    
         
            +
              def color_enabled?
         
     | 
| 
      
 86 
     | 
    
         
            +
                super && !continuous_integration?
         
     | 
| 
       64 
87 
     | 
    
         
             
              end
         
     | 
| 
       65 
88 
     | 
    
         | 
| 
       66 
     | 
    
         
            -
              def  
     | 
| 
       67 
     | 
    
         
            -
                 
     | 
| 
      
 89 
     | 
    
         
            +
              def current_color
         
     | 
| 
      
 90 
     | 
    
         
            +
                if failed_examples.size > 0
         
     | 
| 
      
 91 
     | 
    
         
            +
                  configuration.failure_color
         
     | 
| 
      
 92 
     | 
    
         
            +
                elsif pending_examples.size > 0
         
     | 
| 
      
 93 
     | 
    
         
            +
                  configuration.pending_color
         
     | 
| 
      
 94 
     | 
    
         
            +
                else
         
     | 
| 
      
 95 
     | 
    
         
            +
                  configuration.success_color
         
     | 
| 
      
 96 
     | 
    
         
            +
                end
         
     | 
| 
       68 
97 
     | 
    
         
             
              end
         
     | 
| 
       69 
98 
     | 
    
         | 
| 
      
 99 
     | 
    
         
            +
              def continuous_integration?
         
     | 
| 
      
 100 
     | 
    
         
            +
                @continuous_integration ||= !(ENV['CONTINUOUS_INTEGRATION'].nil? || ENV['CONTINUOUS_INTEGRATION'] == '' || ENV['CONTINUOUS_INTEGRATION'] == 'false')
         
     | 
| 
      
 101 
     | 
    
         
            +
              end
         
     | 
| 
       70 
102 
     | 
    
         
             
            end
         
     | 
    
        data/spec/fuubar_spec.rb
    CHANGED
    
    | 
         @@ -1,127 +1,241 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require ' 
     | 
| 
      
 1 
     | 
    
         
            +
            require 'fuubar'
         
     | 
| 
       2 
2 
     | 
    
         
             
            require 'stringio'
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
4 
     | 
    
         
             
            describe Fuubar do
         
     | 
| 
       5 
     | 
    
         
            -
              let(:output)  
     | 
| 
      
 5 
     | 
    
         
            +
              let(:output) do
         
     | 
| 
      
 6 
     | 
    
         
            +
                io = StringIO.new
         
     | 
| 
       6 
7 
     | 
    
         | 
| 
       7 
     | 
    
         
            -
               
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
                formatter.start(2)
         
     | 
| 
      
 8 
     | 
    
         
            +
                allow(io).to  receive(:tty?).
         
     | 
| 
      
 9 
     | 
    
         
            +
                              and_return(true)
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
     | 
    
         
            -
                 
     | 
| 
      
 11 
     | 
    
         
            +
                io
         
     | 
| 
       12 
12 
     | 
    
         
             
              end
         
     | 
| 
       13 
13 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
              let(: 
     | 
| 
       15 
     | 
    
         
            -
              let(: 
     | 
| 
      
 14 
     | 
    
         
            +
              let(:formatter) { Fuubar.new(output) }
         
     | 
| 
      
 15 
     | 
    
         
            +
              let(:progress)  { formatter.instance_variable_get(:@progress) }
         
     | 
| 
      
 16 
     | 
    
         
            +
              let(:example)   { RSpec::Core::ExampleGroup.describe.example }
         
     | 
| 
       16 
17 
     | 
    
         | 
| 
      
 18 
     | 
    
         
            +
              let(:failed_example) do
         
     | 
| 
      
 19 
     | 
    
         
            +
                exception = RuntimeError.new('Test Fuubar Error')
         
     | 
| 
      
 20 
     | 
    
         
            +
                exception.set_backtrace [
         
     | 
| 
      
 21 
     | 
    
         
            +
                  "/my/filename.rb:4:in `some_method'",
         
     | 
| 
      
 22 
     | 
    
         
            +
                ]
         
     | 
| 
       17 
23 
     | 
    
         | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
      
 24 
     | 
    
         
            +
                example = RSpec::Core::ExampleGroup.describe.example
         
     | 
| 
       19 
25 
     | 
    
         | 
| 
       20 
     | 
    
         
            -
                 
     | 
| 
       21 
     | 
    
         
            -
                   
     | 
| 
      
 26 
     | 
    
         
            +
                example.instance_variable_set(:@metadata, {
         
     | 
| 
      
 27 
     | 
    
         
            +
                  :file_path        => '/my/example/spec.rb',
         
     | 
| 
      
 28 
     | 
    
         
            +
                  :execution_result => {
         
     | 
| 
      
 29 
     | 
    
         
            +
                    :exception => exception },
         
     | 
| 
      
 30 
     | 
    
         
            +
                } )
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                example
         
     | 
| 
      
 33 
     | 
    
         
            +
              end
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
              let(:fuubar_results) do
         
     | 
| 
      
 36 
     | 
    
         
            +
                output.rewind
         
     | 
| 
      
 37 
     | 
    
         
            +
                output.read
         
     | 
| 
      
 38 
     | 
    
         
            +
              end
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
              before(:each) do
         
     | 
| 
      
 41 
     | 
    
         
            +
                RSpec.configuration.fuubar_progress_bar_options = {
         
     | 
| 
      
 42 
     | 
    
         
            +
                  :length        => 40,
         
     | 
| 
      
 43 
     | 
    
         
            +
                  :throttle_rate => 0.0,
         
     | 
| 
      
 44 
     | 
    
         
            +
                }
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
                ENV.delete('CONTINUOUS_INTEGRATION')
         
     | 
| 
      
 47 
     | 
    
         
            +
              end
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
              context 'when it is created' do
         
     | 
| 
      
 50 
     | 
    
         
            +
                it 'does not start the bar until the formatter is started' do
         
     | 
| 
      
 51 
     | 
    
         
            +
                  expect(progress).to be_stopped
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
                  formatter.start(2)
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                  expect(progress).not_to be_stopped
         
     | 
| 
       22 
56 
     | 
    
         
             
                end
         
     | 
| 
       23 
57 
     | 
    
         | 
| 
       24 
     | 
    
         
            -
                it ' 
     | 
| 
       25 
     | 
    
         
            -
                   
     | 
| 
      
 58 
     | 
    
         
            +
                it 'creates a new ProgressBar' do
         
     | 
| 
      
 59 
     | 
    
         
            +
                  expect(progress).to be_instance_of ProgressBar::Base
         
     | 
| 
       26 
60 
     | 
    
         
             
                end
         
     | 
| 
       27 
61 
     | 
    
         | 
| 
       28 
     | 
    
         
            -
                it ' 
     | 
| 
       29 
     | 
    
         
            -
                   
     | 
| 
      
 62 
     | 
    
         
            +
                it 'sets the format of the bar' do
         
     | 
| 
      
 63 
     | 
    
         
            +
                  expect(progress.instance_variable_get(:@format_string)).to eql ' %c/%C |%w>%i| %e '
         
     | 
| 
       30 
64 
     | 
    
         
             
                end
         
     | 
| 
       31 
65 
     | 
    
         | 
| 
       32 
     | 
    
         
            -
                it ' 
     | 
| 
       33 
     | 
    
         
            -
                   
     | 
| 
      
 66 
     | 
    
         
            +
                it 'sets the total to the number of examples' do
         
     | 
| 
      
 67 
     | 
    
         
            +
                  expect(progress.total).to be_zero
         
     | 
| 
       34 
68 
     | 
    
         
             
                end
         
     | 
| 
       35 
69 
     | 
    
         | 
| 
       36 
     | 
    
         
            -
                it ' 
     | 
| 
       37 
     | 
    
         
            -
                   
     | 
| 
      
 70 
     | 
    
         
            +
                it 'sets the bar\'s output' do
         
     | 
| 
      
 71 
     | 
    
         
            +
                  expect(progress.send(:output)).to eql formatter.output
         
     | 
| 
      
 72 
     | 
    
         
            +
                  expect(progress.send(:output)).to eql output
         
     | 
| 
       38 
73 
     | 
    
         
             
                end
         
     | 
| 
       39 
74 
     | 
    
         | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
      
 75 
     | 
    
         
            +
                context 'and continuous integration is enabled' do
         
     | 
| 
      
 76 
     | 
    
         
            +
                  before do
         
     | 
| 
      
 77 
     | 
    
         
            +
                    RSpec.configuration.fuubar_progress_bar_options = {:length => 40}
         
     | 
| 
      
 78 
     | 
    
         
            +
                    ENV['CONTINUOUS_INTEGRATION'] = 'true'
         
     | 
| 
      
 79 
     | 
    
         
            +
                  end
         
     | 
| 
       41 
80 
     | 
    
         | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
      
 81 
     | 
    
         
            +
                  it 'throttles the progress bar at one second' do
         
     | 
| 
      
 82 
     | 
    
         
            +
                    throttle      = progress.instance_variable_get(:@throttle)
         
     | 
| 
      
 83 
     | 
    
         
            +
                    throttle_rate = throttle.instance_variable_get(:@period)
         
     | 
| 
       43 
84 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
             
     | 
| 
       45 
     | 
    
         
            -
                   
     | 
| 
       46 
     | 
    
         
            -
                end
         
     | 
| 
      
 85 
     | 
    
         
            +
                    expect(throttle_rate).to eql 1.0
         
     | 
| 
      
 86 
     | 
    
         
            +
                  end
         
     | 
| 
       47 
87 
     | 
    
         | 
| 
       48 
     | 
    
         
            -
             
     | 
| 
      
 88 
     | 
    
         
            +
                  context 'when processing an example' do
         
     | 
| 
      
 89 
     | 
    
         
            +
                    before do
         
     | 
| 
      
 90 
     | 
    
         
            +
                      throttle      = progress.instance_variable_get(:@throttle)
         
     | 
| 
      
 91 
     | 
    
         
            +
                      throttle_rate = throttle.instance_variable_set(:@period, 0.0)
         
     | 
| 
       49 
92 
     | 
    
         | 
| 
       50 
     | 
    
         
            -
             
     | 
| 
       51 
     | 
    
         
            -
                    formatter.should_receive :increment
         
     | 
| 
       52 
     | 
    
         
            -
                    formatter.example_passed(example)
         
     | 
| 
       53 
     | 
    
         
            -
                  end
         
     | 
| 
      
 93 
     | 
    
         
            +
                      formatter.start(2)
         
     | 
| 
       54 
94 
     | 
    
         | 
| 
       55 
     | 
    
         
            -
             
     | 
| 
      
 95 
     | 
    
         
            +
                      output.rewind
         
     | 
| 
       56 
96 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
             
     | 
| 
      
 97 
     | 
    
         
            +
                      formatter.example_passed(example)
         
     | 
| 
      
 98 
     | 
    
         
            +
                    end
         
     | 
| 
       58 
99 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
             
     | 
| 
       60 
     | 
    
         
            -
             
     | 
| 
       61 
     | 
    
         
            -
                     
     | 
| 
      
 100 
     | 
    
         
            +
                    it 'does not output color codes' do
         
     | 
| 
      
 101 
     | 
    
         
            +
                      expect(fuubar_results).to start_with " 1/2 |== 50 ==>        |  ETA: 00:00:00 \r"
         
     | 
| 
      
 102 
     | 
    
         
            +
                    end
         
     | 
| 
       62 
103 
     | 
    
         
             
                  end
         
     | 
| 
      
 104 
     | 
    
         
            +
                end
         
     | 
| 
       63 
105 
     | 
    
         | 
| 
       64 
     | 
    
         
            -
             
     | 
| 
       65 
     | 
    
         
            -
             
     | 
| 
       66 
     | 
    
         
            -
                     
     | 
| 
      
 106 
     | 
    
         
            +
                context 'and continuous integration is not enabled' do
         
     | 
| 
      
 107 
     | 
    
         
            +
                  before do
         
     | 
| 
      
 108 
     | 
    
         
            +
                    RSpec.configuration.fuubar_progress_bar_options = {:length => 40}
         
     | 
| 
      
 109 
     | 
    
         
            +
                    ENV['CONTINUOUS_INTEGRATION'] = 'false'
         
     | 
| 
       67 
110 
     | 
    
         
             
                  end
         
     | 
| 
       68 
111 
     | 
    
         | 
| 
       69 
     | 
    
         
            -
                  it ' 
     | 
| 
       70 
     | 
    
         
            -
                     
     | 
| 
       71 
     | 
    
         
            -
                     
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
      
 112 
     | 
    
         
            +
                  it 'throttles the progress bar at the default rate' do
         
     | 
| 
      
 113 
     | 
    
         
            +
                    throttle      = progress.instance_variable_get(:@throttle)
         
     | 
| 
      
 114 
     | 
    
         
            +
                    throttle_rate = throttle.instance_variable_get(:@period)
         
     | 
| 
      
 115 
     | 
    
         
            +
             
     | 
| 
      
 116 
     | 
    
         
            +
                    expect(throttle_rate).to eql 0.01
         
     | 
| 
       73 
117 
     | 
    
         
             
                  end
         
     | 
| 
       74 
118 
     | 
    
         | 
| 
      
 119 
     | 
    
         
            +
                  context 'when processing an example' do
         
     | 
| 
      
 120 
     | 
    
         
            +
                    before do
         
     | 
| 
      
 121 
     | 
    
         
            +
                      throttle      = progress.instance_variable_get(:@throttle)
         
     | 
| 
      
 122 
     | 
    
         
            +
                      throttle_rate = throttle.instance_variable_set(:@period, 0.0)
         
     | 
| 
      
 123 
     | 
    
         
            +
             
     | 
| 
      
 124 
     | 
    
         
            +
                      formatter.start(2)
         
     | 
| 
      
 125 
     | 
    
         
            +
             
     | 
| 
      
 126 
     | 
    
         
            +
                      output.rewind
         
     | 
| 
      
 127 
     | 
    
         
            +
             
     | 
| 
      
 128 
     | 
    
         
            +
                      formatter.example_passed(example)
         
     | 
| 
      
 129 
     | 
    
         
            +
                    end
         
     | 
| 
      
 130 
     | 
    
         
            +
             
     | 
| 
      
 131 
     | 
    
         
            +
                    it 'does not output color codes' do
         
     | 
| 
      
 132 
     | 
    
         
            +
                      expect(fuubar_results).to start_with "\e[32m 1/2 |== 50 ==>        |  ETA: 00:00:00 \r\e[0m"
         
     | 
| 
      
 133 
     | 
    
         
            +
                    end
         
     | 
| 
      
 134 
     | 
    
         
            +
                  end
         
     | 
| 
       75 
135 
     | 
    
         
             
                end
         
     | 
| 
      
 136 
     | 
    
         
            +
              end
         
     | 
| 
       76 
137 
     | 
    
         | 
| 
       77 
     | 
    
         
            -
             
     | 
| 
      
 138 
     | 
    
         
            +
              context 'when it is started' do
         
     | 
| 
      
 139 
     | 
    
         
            +
                before { formatter.start(2) }
         
     | 
| 
       78 
140 
     | 
    
         | 
| 
      
 141 
     | 
    
         
            +
                it 'sets the total to the number of examples' do
         
     | 
| 
      
 142 
     | 
    
         
            +
                  expect(progress.total).to eql 2
         
     | 
| 
      
 143 
     | 
    
         
            +
                end
         
     | 
| 
      
 144 
     | 
    
         
            +
             
     | 
| 
      
 145 
     | 
    
         
            +
                context 'and an example passes' do
         
     | 
| 
       79 
146 
     | 
    
         
             
                  before do
         
     | 
| 
       80 
     | 
    
         
            -
                     
     | 
| 
      
 147 
     | 
    
         
            +
                    output.rewind
         
     | 
| 
      
 148 
     | 
    
         
            +
             
     | 
| 
      
 149 
     | 
    
         
            +
                    formatter.example_passed(example)
         
     | 
| 
       81 
150 
     | 
    
         
             
                  end
         
     | 
| 
       82 
151 
     | 
    
         | 
| 
       83 
     | 
    
         
            -
                  it ' 
     | 
| 
       84 
     | 
    
         
            -
                     
     | 
| 
       85 
     | 
    
         
            -
                    formatter.example_failed(example)
         
     | 
| 
      
 152 
     | 
    
         
            +
                  it 'outputs the proper bar information' do
         
     | 
| 
      
 153 
     | 
    
         
            +
                    expect(fuubar_results).to start_with "\e[32m 1/2 |== 50 ==>        |  ETA: 00:00:00 \r\e[0m"
         
     | 
| 
       86 
154 
     | 
    
         
             
                  end
         
     | 
| 
      
 155 
     | 
    
         
            +
                end
         
     | 
| 
      
 156 
     | 
    
         
            +
             
     | 
| 
      
 157 
     | 
    
         
            +
                context 'and an example pends' do
         
     | 
| 
      
 158 
     | 
    
         
            +
                  before do
         
     | 
| 
      
 159 
     | 
    
         
            +
                    output.rewind
         
     | 
| 
       87 
160 
     | 
    
         | 
| 
       88 
     | 
    
         
            -
             
     | 
| 
       89 
     | 
    
         
            -
                    formatter.instafail.should_receive(:example_failed).with(example)
         
     | 
| 
       90 
     | 
    
         
            -
                    formatter.example_failed(example)
         
     | 
| 
      
 161 
     | 
    
         
            +
                    formatter.example_pending(example)
         
     | 
| 
       91 
162 
     | 
    
         
             
                  end
         
     | 
| 
       92 
163 
     | 
    
         | 
| 
       93 
     | 
    
         
            -
                  it ' 
     | 
| 
       94 
     | 
    
         
            -
                     
     | 
| 
       95 
     | 
    
         
            -
                    formatter.state.should == :red
         
     | 
| 
      
 164 
     | 
    
         
            +
                  it 'outputs the proper bar information' do
         
     | 
| 
      
 165 
     | 
    
         
            +
                    expect(fuubar_results).to start_with "\e[33m 1/2 |== 50 ==>        |  ETA: 00:00:00 \r\e[0m"
         
     | 
| 
       96 
166 
     | 
    
         
             
                  end
         
     | 
| 
       97 
167 
     | 
    
         | 
| 
      
 168 
     | 
    
         
            +
                  context 'and then an example succeeds' do
         
     | 
| 
      
 169 
     | 
    
         
            +
                    before do
         
     | 
| 
      
 170 
     | 
    
         
            +
                      output.rewind
         
     | 
| 
      
 171 
     | 
    
         
            +
             
     | 
| 
      
 172 
     | 
    
         
            +
                      formatter.example_pending(example)
         
     | 
| 
      
 173 
     | 
    
         
            +
                    end
         
     | 
| 
      
 174 
     | 
    
         
            +
             
     | 
| 
      
 175 
     | 
    
         
            +
                    it 'outputs the pending bar' do
         
     | 
| 
      
 176 
     | 
    
         
            +
                      expect(fuubar_results).to start_with "\e[33m 2/2 |===== 100 ======>| Time: 00:00:00 \n\e[0m"
         
     | 
| 
      
 177 
     | 
    
         
            +
                    end
         
     | 
| 
      
 178 
     | 
    
         
            +
                  end
         
     | 
| 
       98 
179 
     | 
    
         
             
                end
         
     | 
| 
       99 
180 
     | 
    
         | 
| 
       100 
     | 
    
         
            -
             
     | 
| 
      
 181 
     | 
    
         
            +
                context 'and an example fails' do
         
     | 
| 
      
 182 
     | 
    
         
            +
                  it 'outputs the proper bar information' do
         
     | 
| 
      
 183 
     | 
    
         
            +
                    output.rewind
         
     | 
| 
       101 
184 
     | 
    
         | 
| 
       102 
     | 
    
         
            -
             
     | 
| 
      
 185 
     | 
    
         
            +
                    formatter.example_failed(failed_example)
         
     | 
| 
       103 
186 
     | 
    
         | 
| 
       104 
     | 
    
         
            -
             
     | 
| 
       105 
     | 
    
         
            -
                   
     | 
| 
       106 
     | 
    
         
            -
                  formatter.increment
         
     | 
| 
       107 
     | 
    
         
            -
                end
         
     | 
| 
      
 187 
     | 
    
         
            +
                    expect(fuubar_results).to end_with "\e[31m 1/2 |== 50 ==>        |  ETA: 00:00:00 \r\e[0m"
         
     | 
| 
      
 188 
     | 
    
         
            +
                  end
         
     | 
| 
       108 
189 
     | 
    
         | 
| 
       109 
     | 
    
         
            -
             
     | 
| 
      
 190 
     | 
    
         
            +
                  it 'dumps the failure' do
         
     | 
| 
      
 191 
     | 
    
         
            +
                    allow(formatter).to receive(:dump_failure).
         
     | 
| 
      
 192 
     | 
    
         
            +
                                        and_return('dump failure')
         
     | 
| 
       110 
193 
     | 
    
         | 
| 
       111 
     | 
    
         
            -
             
     | 
| 
      
 194 
     | 
    
         
            +
                    allow(formatter).to receive(:dump_backtrace).
         
     | 
| 
      
 195 
     | 
    
         
            +
                                        and_return('dump backtrace')
         
     | 
| 
       112 
196 
     | 
    
         | 
| 
       113 
     | 
    
         
            -
             
     | 
| 
       114 
     | 
    
         
            -
                  formatter.instafail.should be_instance_of(RSpec::Instafail)
         
     | 
| 
       115 
     | 
    
         
            -
                end
         
     | 
| 
      
 197 
     | 
    
         
            +
                    formatter.example_failed(failed_example)
         
     | 
| 
       116 
198 
     | 
    
         | 
| 
       117 
     | 
    
         
            -
             
     | 
| 
      
 199 
     | 
    
         
            +
                    expect(formatter).to have_received(:dump_failure).
         
     | 
| 
      
 200 
     | 
    
         
            +
                                         with(failed_example, 0)
         
     | 
| 
      
 201 
     | 
    
         
            +
             
     | 
| 
      
 202 
     | 
    
         
            +
                    expect(formatter).to have_received(:dump_backtrace).
         
     | 
| 
      
 203 
     | 
    
         
            +
                                         with(failed_example)
         
     | 
| 
      
 204 
     | 
    
         
            +
                  end
         
     | 
| 
       118 
205 
     | 
    
         | 
| 
       119 
     | 
    
         
            -
             
     | 
| 
      
 206 
     | 
    
         
            +
                  context 'and then an example succeeds' do
         
     | 
| 
      
 207 
     | 
    
         
            +
                    before do
         
     | 
| 
      
 208 
     | 
    
         
            +
                      formatter.example_failed(failed_example)
         
     | 
| 
      
 209 
     | 
    
         
            +
             
     | 
| 
      
 210 
     | 
    
         
            +
                      output.rewind
         
     | 
| 
      
 211 
     | 
    
         
            +
             
     | 
| 
      
 212 
     | 
    
         
            +
                      formatter.example_passed(example)
         
     | 
| 
      
 213 
     | 
    
         
            +
                    end
         
     | 
| 
      
 214 
     | 
    
         
            +
             
     | 
| 
      
 215 
     | 
    
         
            +
                    it 'outputs the failed bar' do
         
     | 
| 
      
 216 
     | 
    
         
            +
                      expect(fuubar_results).to start_with "\e[31m 2/2 |===== 100 ======>| Time: 00:00:00 \n\e[0m"
         
     | 
| 
      
 217 
     | 
    
         
            +
                    end
         
     | 
| 
      
 218 
     | 
    
         
            +
                  end
         
     | 
| 
       120 
219 
     | 
    
         | 
| 
       121 
     | 
    
         
            -
             
     | 
| 
       122 
     | 
    
         
            -
             
     | 
| 
      
 220 
     | 
    
         
            +
                  context 'and then an example pends' do
         
     | 
| 
      
 221 
     | 
    
         
            +
                    before do
         
     | 
| 
      
 222 
     | 
    
         
            +
                      formatter.example_failed(failed_example)
         
     | 
| 
      
 223 
     | 
    
         
            +
             
     | 
| 
      
 224 
     | 
    
         
            +
                      output.rewind
         
     | 
| 
      
 225 
     | 
    
         
            +
             
     | 
| 
      
 226 
     | 
    
         
            +
                      formatter.example_pending(example)
         
     | 
| 
      
 227 
     | 
    
         
            +
                    end
         
     | 
| 
      
 228 
     | 
    
         
            +
             
     | 
| 
      
 229 
     | 
    
         
            +
                    it 'outputs the failed bar' do
         
     | 
| 
      
 230 
     | 
    
         
            +
                      expect(fuubar_results).to start_with "\e[31m 2/2 |===== 100 ======>| Time: 00:00:00 \n\e[0m"
         
     | 
| 
      
 231 
     | 
    
         
            +
                    end
         
     | 
| 
      
 232 
     | 
    
         
            +
                  end
         
     | 
| 
       123 
233 
     | 
    
         
             
                end
         
     | 
| 
       124 
234 
     | 
    
         | 
| 
       125 
     | 
    
         
            -
             
     | 
| 
      
 235 
     | 
    
         
            +
                it 'can properly log messages' do
         
     | 
| 
      
 236 
     | 
    
         
            +
                  formatter.message 'My Message'
         
     | 
| 
       126 
237 
     | 
    
         | 
| 
      
 238 
     | 
    
         
            +
                  expect(fuubar_results).to end_with "My Message\n 0/2 |>                |  ETA: ??:??:?? \r"
         
     | 
| 
      
 239 
     | 
    
         
            +
                end
         
     | 
| 
      
 240 
     | 
    
         
            +
              end
         
     | 
| 
       127 
241 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,57 +1,48 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: fuubar
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.2 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.3.2
         
     | 
| 
       5 
5 
     | 
    
         
             
              prerelease: 
         
     | 
| 
       6 
6 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       7 
7 
     | 
    
         
             
            authors:
         
     | 
| 
       8 
8 
     | 
    
         
             
            - Nicholas Evans
         
     | 
| 
       9 
9 
     | 
    
         
             
            - Jeff Kreeftmeijer
         
     | 
| 
      
 10 
     | 
    
         
            +
            - jfelchner
         
     | 
| 
       10 
11 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       11 
12 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       12 
13 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       13 
     | 
    
         
            -
            date: 2013- 
     | 
| 
      
 14 
     | 
    
         
            +
            date: 2013-12-16 00:00:00.000000000 Z
         
     | 
| 
       14 
15 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
16 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
17 
     | 
    
         
             
              name: rspec
         
     | 
| 
       17 
18 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       18 
19 
     | 
    
         
             
                none: false
         
     | 
| 
       19 
20 
     | 
    
         
             
                requirements:
         
     | 
| 
       20 
     | 
    
         
            -
                - -  
     | 
| 
       21 
     | 
    
         
            -
                  - !ruby/object:Gem::Version
         
     | 
| 
       22 
     | 
    
         
            -
                    version: '2.0'
         
     | 
| 
       23 
     | 
    
         
            -
              type: :runtime
         
     | 
| 
       24 
     | 
    
         
            -
              prerelease: false
         
     | 
| 
       25 
     | 
    
         
            -
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       26 
     | 
    
         
            -
                none: false
         
     | 
| 
       27 
     | 
    
         
            -
                requirements:
         
     | 
| 
       28 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 21 
     | 
    
         
            +
                - - ! '>='
         
     | 
| 
       29 
22 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       30 
     | 
    
         
            -
                    version:  
     | 
| 
       31 
     | 
    
         
            -
            -  
     | 
| 
       32 
     | 
    
         
            -
              name: ruby-progressbar
         
     | 
| 
       33 
     | 
    
         
            -
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       34 
     | 
    
         
            -
                none: false
         
     | 
| 
       35 
     | 
    
         
            -
                requirements:
         
     | 
| 
       36 
     | 
    
         
            -
                - - ~>
         
     | 
| 
      
 23 
     | 
    
         
            +
                    version: 2.14.0
         
     | 
| 
      
 24 
     | 
    
         
            +
                - - <
         
     | 
| 
       37 
25 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       38 
     | 
    
         
            -
                    version:  
     | 
| 
      
 26 
     | 
    
         
            +
                    version: 3.1.0
         
     | 
| 
       39 
27 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       40 
28 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       41 
29 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       42 
30 
     | 
    
         
             
                none: false
         
     | 
| 
       43 
31 
     | 
    
         
             
                requirements:
         
     | 
| 
       44 
     | 
    
         
            -
                - -  
     | 
| 
      
 32 
     | 
    
         
            +
                - - ! '>='
         
     | 
| 
       45 
33 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       46 
     | 
    
         
            -
                    version:  
     | 
| 
      
 34 
     | 
    
         
            +
                    version: 2.14.0
         
     | 
| 
      
 35 
     | 
    
         
            +
                - - <
         
     | 
| 
      
 36 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 37 
     | 
    
         
            +
                    version: 3.1.0
         
     | 
| 
       47 
38 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       48 
     | 
    
         
            -
              name:  
     | 
| 
      
 39 
     | 
    
         
            +
              name: ruby-progressbar
         
     | 
| 
       49 
40 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
       50 
41 
     | 
    
         
             
                none: false
         
     | 
| 
       51 
42 
     | 
    
         
             
                requirements:
         
     | 
| 
       52 
43 
     | 
    
         
             
                - - ~>
         
     | 
| 
       53 
44 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       54 
     | 
    
         
            -
                    version:  
     | 
| 
      
 45 
     | 
    
         
            +
                    version: '1.3'
         
     | 
| 
       55 
46 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       56 
47 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       57 
48 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -59,28 +50,26 @@ dependencies: 
     | 
|
| 
       59 
50 
     | 
    
         
             
                requirements:
         
     | 
| 
       60 
51 
     | 
    
         
             
                - - ~>
         
     | 
| 
       61 
52 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       62 
     | 
    
         
            -
                    version:  
     | 
| 
      
 53 
     | 
    
         
            +
                    version: '1.3'
         
     | 
| 
       63 
54 
     | 
    
         
             
            description: the instafailing RSpec progress bar formatter
         
     | 
| 
       64 
55 
     | 
    
         
             
            email:
         
     | 
| 
       65 
56 
     | 
    
         
             
            - jeff@kreeftmeijer.nl
         
     | 
| 
       66 
57 
     | 
    
         
             
            executables: []
         
     | 
| 
       67 
58 
     | 
    
         
             
            extensions: []
         
     | 
| 
       68 
     | 
    
         
            -
            extra_rdoc_files: 
     | 
| 
       69 
     | 
    
         
            -
             
     | 
| 
       70 
     | 
    
         
            -
            - .gitignore
         
     | 
| 
       71 
     | 
    
         
            -
            - .rspec
         
     | 
| 
       72 
     | 
    
         
            -
            - Gemfile
         
     | 
| 
      
 59 
     | 
    
         
            +
            extra_rdoc_files:
         
     | 
| 
      
 60 
     | 
    
         
            +
            - README.md
         
     | 
| 
       73 
61 
     | 
    
         
             
            - LICENSE
         
     | 
| 
       74 
     | 
    
         
            -
             
     | 
| 
       75 
     | 
    
         
            -
            - Rakefile
         
     | 
| 
       76 
     | 
    
         
            -
            - fuubar.gemspec
         
     | 
| 
      
 62 
     | 
    
         
            +
            files:
         
     | 
| 
       77 
63 
     | 
    
         
             
            - lib/fuubar.rb
         
     | 
| 
      
 64 
     | 
    
         
            +
            - README.md
         
     | 
| 
      
 65 
     | 
    
         
            +
            - LICENSE
         
     | 
| 
       78 
66 
     | 
    
         
             
            - spec/fuubar_spec.rb
         
     | 
| 
       79 
     | 
    
         
            -
            - spec/spec_helper.rb
         
     | 
| 
       80 
67 
     | 
    
         
             
            homepage: https://github.com/jeffkreeftmeijer/fuubar
         
     | 
| 
       81 
68 
     | 
    
         
             
            licenses: []
         
     | 
| 
       82 
69 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
       83 
     | 
    
         
            -
            rdoc_options: 
     | 
| 
      
 70 
     | 
    
         
            +
            rdoc_options:
         
     | 
| 
      
 71 
     | 
    
         
            +
            - --charset
         
     | 
| 
      
 72 
     | 
    
         
            +
            - UTF-8
         
     | 
| 
       84 
73 
     | 
    
         
             
            require_paths:
         
     | 
| 
       85 
74 
     | 
    
         
             
            - lib
         
     | 
| 
       86 
75 
     | 
    
         
             
            required_ruby_version: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -103,5 +92,4 @@ specification_version: 3 
     | 
|
| 
       103 
92 
     | 
    
         
             
            summary: the instafailing RSpec progress bar formatter
         
     | 
| 
       104 
93 
     | 
    
         
             
            test_files:
         
     | 
| 
       105 
94 
     | 
    
         
             
            - spec/fuubar_spec.rb
         
     | 
| 
       106 
     | 
    
         
            -
            - spec/spec_helper.rb
         
     | 
| 
       107 
95 
     | 
    
         
             
            has_rdoc: 
         
     | 
    
        data/.gitignore
    DELETED
    
    
    
        data/.rspec
    DELETED
    
    
    
        data/Gemfile
    DELETED
    
    
    
        data/README.textile
    DELETED
    
    | 
         @@ -1,24 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            h1. Fuubar !https://travis-ci.org/jeffkreeftmeijer/fuubar.png!:https://travis-ci.org/jeffkreeftmeijer/fuubar
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            Fuubar is an instafailing "RSpec":http://github.com/rspec formatter that uses a progress bar instead of a string of letters and dots as feedback. Here's "a video of Fuubar in action":http://vimeo.com/16845253.
         
     | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
       5 
     | 
    
         
            -
            h2. Installation
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
            Installing Fuubar is easy. Just put it in your @Gemfile@ and run your specs like this from now on:
         
     | 
| 
       8 
     | 
    
         
            -
             
     | 
| 
       9 
     | 
    
         
            -
            bc. $ rspec --format Fuubar --color spec
         
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
            If you want to use Fuubar as your default formatter, simply put the options in your @.rspec@ file:
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
            bc. --format Fuubar
         
     | 
| 
       14 
     | 
    
         
            -
            --color
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
            h3. Rspec-1
         
     | 
| 
       17 
     | 
    
         
            -
             
     | 
| 
       18 
     | 
    
         
            -
            Use the "fuubar-legacy":https://rubygems.org/gems/fuubar-legacy gem:
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
            bc. gem 'fuubar-legacy'
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
     | 
    
         
            -
            h2. Contributing
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
            Found an issue? Have a great idea? Want to help? Great! Create an issue "issue":http://github.com/jeffkreeftmeijer/fuubar/issues for it, or even better; fork the project and fix the problem yourself. Pull requests are always welcome. :)
         
     | 
    
        data/Rakefile
    DELETED
    
    
    
        data/fuubar.gemspec
    DELETED
    
    | 
         @@ -1,23 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            # -*- encoding: utf-8 -*-
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
            Gem::Specification.new do |s|
         
     | 
| 
       4 
     | 
    
         
            -
              s.name        = "fuubar"
         
     | 
| 
       5 
     | 
    
         
            -
              s.version     = '1.2.1'
         
     | 
| 
       6 
     | 
    
         
            -
              s.platform    = Gem::Platform::RUBY
         
     | 
| 
       7 
     | 
    
         
            -
              s.authors     = ["Nicholas Evans", "Jeff Kreeftmeijer"]
         
     | 
| 
       8 
     | 
    
         
            -
              s.email       = ["jeff@kreeftmeijer.nl"]
         
     | 
| 
       9 
     | 
    
         
            -
              s.homepage    = "https://github.com/jeffkreeftmeijer/fuubar"
         
     | 
| 
       10 
     | 
    
         
            -
              s.summary     = %q{the instafailing RSpec progress bar formatter}
         
     | 
| 
       11 
     | 
    
         
            -
              s.description = %q{the instafailing RSpec progress bar formatter}
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
              s.rubyforge_project = "fuubar"
         
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
              s.files         = `git ls-files`.split("\n")
         
     | 
| 
       16 
     | 
    
         
            -
              s.test_files    = `git ls-files -- {test,spec,features}/*`.split("\n")
         
     | 
| 
       17 
     | 
    
         
            -
              s.executables   = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
         
     | 
| 
       18 
     | 
    
         
            -
              s.require_paths = ["lib"]
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
     | 
    
         
            -
              s.add_dependency('rspec', ["~> 2.0"])
         
     | 
| 
       21 
     | 
    
         
            -
              s.add_dependency('ruby-progressbar', ["~> 1.0"])
         
     | 
| 
       22 
     | 
    
         
            -
              s.add_dependency('rspec-instafail', ["~> 0.2.0"])
         
     | 
| 
       23 
     | 
    
         
            -
            end
         
     | 
    
        data/spec/spec_helper.rb
    DELETED
    
    | 
         @@ -1 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require 'fuubar'
         
     |