rspec_spinner 1.1.3 → 2.0.0

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/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --require rspec_spinner --format RspecSpinner::Bar
2
+
@@ -32,6 +32,19 @@ Require RspecSpinner on spec/spec_helper.rb:
32
32
  ...
33
33
 
34
34
 
35
+ === Rspec 2.x
36
+
37
+ Add to your project /.rspec
38
+
39
+ --require rspec_spinner --format RspecSpinner::Bar
40
+
41
+ or:
42
+
43
+ --require rspec_spinner --format RspecSpinner::Spinner
44
+
45
+
46
+ === Rspec 1.x
47
+
35
48
  Change your spec.opts --format to:
36
49
 
37
50
  --format RspecSpinner::Bar
data/Rakefile CHANGED
@@ -8,7 +8,7 @@ begin
8
8
  gem.summary = "Extra formatters for Rspec"
9
9
  gem.email = "Cool Extra formatters for Rspec"
10
10
  gem.homepage = "http://github.com/nofxx/rspec_spinner"
11
- gem.authors = ["Marcos Augusto"]
11
+ gem.authors = ["Marcos Piccinini"]
12
12
  gem.add_dependency 'rtui'
13
13
  gem.add_development_dependency 'rspec'
14
14
  gem.post_install_message = <<-POST_INSTALL_MESSAGE
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.3
1
+ 2.0.0
@@ -1,5 +1,5 @@
1
- $:.unshift(File.dirname(__FILE__)) unless
2
- $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
1
+ # $:.unshift(File.dirname(__FILE__)) unless
2
+ # $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
3
3
  #require "spec/runner/options"
4
4
  require "rspec_spinner/base"
5
5
  require "rspec_spinner/spinner"
@@ -12,3 +12,4 @@ require "rspec_spinner/bar"
12
12
  # end
13
13
  ## end
14
14
  #end
15
+
@@ -1,9 +1,15 @@
1
- require "spec/runner/formatter/base_text_formatter"
1
+ begin
2
+ require "spec/runner/formatter/base_text_formatter"
3
+ rescue LoadError
4
+ require "rspec/core/formatters/base_text_formatter"
5
+ end
6
+
2
7
  require "rubygems"
3
8
  require "rtui"
4
9
 
10
+
5
11
  module RspecSpinner
6
- class RspecSpinnerBase < Spec::Runner::Formatter::BaseTextFormatter
12
+ class RspecSpinnerBase < RSpec::Core::Formatters::BaseTextFormatter
7
13
  # Threshold for slow specs, in seconds.
8
14
  # Anything that takes longer than this will be printed out
9
15
  #THRESHOLD = 0.25
@@ -11,17 +17,17 @@ module RspecSpinner
11
17
 
12
18
  attr_reader :total, :current
13
19
 
14
- def initialize(options, where)
15
- super
20
+ def initialize(options, where=nil)
21
+ super options
16
22
  @example_times = []
17
23
  end
18
24
 
19
25
  def start(example_count)
20
- @current = 0
21
- @total = example_count
26
+ @current = 0
27
+ @total = example_count
22
28
  @error_state = :all_passing
23
- @pbar = RTUI::Progress.new("#{example_count} examples", example_count,
24
- {:out => output, :components => [:percentage, :spinner, :stat]})
29
+ @pbar = RTUI::Progress.new("#{example_count} examples", example_count,
30
+ {:out => output, :components => [:percentage, :spinner, :stat]})
25
31
  end
26
32
 
27
33
  def example_started(example)
@@ -59,7 +65,7 @@ module RspecSpinner
59
65
  end.reverse
60
66
 
61
67
  @example_times[0..14].each do |description, example, location, time|
62
- _,line = location.split(":")
68
+ _, line = location.split(":")
63
69
  @output.print red(sprintf("%.7f", time))
64
70
  @output.puts " #{description}:#{line} #{example}"
65
71
  end
@@ -74,6 +80,11 @@ module RspecSpinner
74
80
  # ignore
75
81
  end
76
82
 
83
+ def self.fmt_backtrace(bkt)
84
+ return "" if bkt.nil?
85
+ return bkt.split("\n")
86
+ end
87
+
77
88
  # stolen and slightly modified from BaseTextFormatter#dump_failure
78
89
  def immediately_dump_failure(counter, failure)
79
90
  erase_current_line
@@ -81,15 +92,16 @@ module RspecSpinner
81
92
  output.print "#{counter.to_s}) "
82
93
  # Rspec 1.2.2
83
94
  output.puts colorize_failure("#{failure.header}\n#{failure.exception.message}", failure)
84
- output.puts format_backtrace(failure.exception.backtrace)
95
+ output.puts failure.exception.backtrace
85
96
  output.puts
86
97
  end
87
98
 
99
+
88
100
  # stolen and modified from BaseTextFormatter#dump_pending
89
101
  def immediately_dump_pending(desc, msg, location)
90
102
  erase_current_line
91
103
  output.puts yellow("PENDING SPEC:") + " #{desc} (#{msg})"
92
- output.puts format_backtrace(" Called from #{location}")
104
+ output.puts " Called from #{location}"
93
105
  output.puts
94
106
  end
95
107
 
@@ -97,18 +109,23 @@ module RspecSpinner
97
109
  with_color do
98
110
  @current += 1
99
111
  # HACK: need to make sure the progress is printed, even when the bar hasn't changed
100
- @pbar.instance_variable_set("@previous", 0)
101
- @pbar.instance_variable_set("@title", "#{current}/#{total}")
112
+ if /^1\.8/ === RUBY_VERSION then
113
+ @pbar.instance_variable_set("@previous", 0)
114
+ @pbar.instance_variable_set("@title", "#{current}/#{total}")
115
+ else
116
+ @pbar.instance_variable_set("@previous".to_sym, 0)
117
+ @pbar.instance_variable_set("@title".to_sym, "#{current}/#{total}")
118
+ end
102
119
  @pbar.inc
103
120
  end
104
121
  output.flush
105
122
  end
106
123
 
107
124
  ERROR_STATE_COLORS = {
108
- :all_passing => "\e[32m", # green
109
- :some_pending => "\e[33m", # yellow
110
- :some_failed => "\e[31m", # red
111
- :pending_fix => "\e[34m", # blue
125
+ :all_passing => "\e[32m", # green
126
+ :some_pending => "\e[33m", # yellow
127
+ :some_failed => "\e[31m", # red
128
+ :pending_fix => "\e[34m", # blue
112
129
  }
113
130
 
114
131
  def with_color
@@ -1,35 +1,34 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rspec_spinner}
8
- s.version = "1.1.3"
8
+ s.version = "2.0.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Marcos Augusto"]
12
- s.date = %q{2010-03-18}
11
+ s.authors = ["Marcos Piccinini"]
12
+ s.date = %q{2011-04-15}
13
13
  s.email = %q{Cool Extra formatters for Rspec}
14
14
  s.extra_rdoc_files = [
15
15
  "README.rdoc"
16
16
  ]
17
17
  s.files = [
18
- ".gitignore",
19
- "MIT-LICENSE",
20
- "README.rdoc",
21
- "Rakefile",
22
- "VERSION",
23
- "lib/rspec_spinner.rb",
24
- "lib/rspec_spinner/bar.rb",
25
- "lib/rspec_spinner/base.rb",
26
- "lib/rspec_spinner/spinner.rb",
27
- "rspec_spinner.gemspec",
28
- "spec/rspec_spinner/base_spec.rb",
29
- "spec/rspec_spinner/spinner_spec.rb",
30
- "spec/rspec_spinner_spec.rb",
31
- "spec/spec.opts",
32
- "spec/spec_helper.rb"
18
+ "MIT-LICENSE",
19
+ "README.rdoc",
20
+ "Rakefile",
21
+ "VERSION",
22
+ "lib/rspec_spinner.rb",
23
+ "lib/rspec_spinner/bar.rb",
24
+ "lib/rspec_spinner/base.rb",
25
+ "lib/rspec_spinner/spinner.rb",
26
+ "rspec_spinner.gemspec",
27
+ "spec/rspec_spinner/base_spec.rb",
28
+ "spec/rspec_spinner/spinner_spec.rb",
29
+ "spec/rspec_spinner_spec.rb",
30
+ "spec/spec.opts",
31
+ "spec/spec_helper.rb"
33
32
  ]
34
33
  s.homepage = %q{http://github.com/nofxx/rspec_spinner}
35
34
  s.post_install_message = %q{
@@ -52,22 +51,21 @@ or:
52
51
  Have fun!
53
52
 
54
53
  }
55
- s.rdoc_options = ["--charset=UTF-8"]
56
54
  s.require_paths = ["lib"]
57
- s.rubygems_version = %q{1.3.6}
55
+ s.rubygems_version = %q{1.3.7}
58
56
  s.summary = %q{Extra formatters for Rspec}
59
57
  s.test_files = [
60
- "spec/spec_helper.rb",
61
- "spec/rspec_spinner/base_spec.rb",
62
- "spec/rspec_spinner/spinner_spec.rb",
63
- "spec/rspec_spinner_spec.rb"
58
+ "spec/rspec_spinner/base_spec.rb",
59
+ "spec/rspec_spinner/spinner_spec.rb",
60
+ "spec/rspec_spinner_spec.rb",
61
+ "spec/spec_helper.rb"
64
62
  ]
65
63
 
66
64
  if s.respond_to? :specification_version then
67
65
  current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
68
66
  s.specification_version = 3
69
67
 
70
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
68
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
71
69
  s.add_runtime_dependency(%q<rtui>, [">= 0"])
72
70
  s.add_development_dependency(%q<rspec>, [">= 0"])
73
71
  else
@@ -7,6 +7,9 @@ describe "Base" do
7
7
  @options = mock('options')
8
8
  @options.stub!(:dry_run).and_return(false)
9
9
  @options.stub!(:colour).and_return(false)
10
+ @options.stub!(:print)
11
+ @options.stub!(:flush)
12
+ @options.stub!(:puts)
10
13
  @formatter = RspecSpinner::Bar.new(@options, @io)
11
14
  end
12
15
 
@@ -16,7 +19,7 @@ describe "Base" do
16
19
  end
17
20
 
18
21
  it "should produce standard summary without pending when pending has a 0 count" do
19
- @options.should_receive(:autospec).and_return(true)
22
+ @options.should_receive(:autospec).and_return(true)
20
23
  @formatter.dump_summary(3, 2, 1, 0)
21
24
  @io.string.should eql("\nFinished in 3 seconds\n\n2 examples, 1 failure\n")
22
25
  end
@@ -3,8 +3,15 @@ begin
3
3
  rescue LoadError
4
4
  require 'rubygems'
5
5
  gem 'rspec'
6
- require 'spec'
6
+ require 'rspec'
7
7
  end
8
+ require 'rspec_spinner'
9
+
10
+ config = RSpec.configuration
11
+ # we want to use colored output for the console, right?
12
+ config.color_enabled = true
13
+ documentation_formatter = config.send(:built_in_formatter, :documentation).new(config.output)
14
+ custom_formatter = RspecSpinner::Spinner.new(STDOUT)
15
+ config.instance_variable_set(:@reporter, RSpec::Core::Reporter.new(documentation_formatter, custom_formatter))
8
16
 
9
17
  $:.unshift(File.dirname(__FILE__) + '/../lib')
10
- require 'rspec_spinner'
metadata CHANGED
@@ -3,24 +3,25 @@ name: rspec_spinner
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
- - 1
7
- - 1
8
- - 3
9
- version: 1.1.3
6
+ - 2
7
+ - 0
8
+ - 0
9
+ version: 2.0.0
10
10
  platform: ruby
11
11
  authors:
12
- - Marcos Augusto
12
+ - Marcos Piccinini
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-03-18 00:00:00 -03:00
17
+ date: 2011-04-15 00:00:00 -03:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: rtui
22
22
  prerelease: false
23
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
24
25
  requirements:
25
26
  - - ">="
26
27
  - !ruby/object:Gem::Version
@@ -33,6 +34,7 @@ dependencies:
33
34
  name: rspec
34
35
  prerelease: false
35
36
  requirement: &id002 !ruby/object:Gem::Requirement
37
+ none: false
36
38
  requirements:
37
39
  - - ">="
38
40
  - !ruby/object:Gem::Version
@@ -50,7 +52,7 @@ extensions: []
50
52
  extra_rdoc_files:
51
53
  - README.rdoc
52
54
  files:
53
- - .gitignore
55
+ - .rspec
54
56
  - MIT-LICENSE
55
57
  - README.rdoc
56
58
  - Rakefile
@@ -69,31 +71,18 @@ has_rdoc: true
69
71
  homepage: http://github.com/nofxx/rspec_spinner
70
72
  licenses: []
71
73
 
72
- post_install_message: |+
73
-
74
- 50% |========= RSPEC_SPINNER =========|
75
-
76
- Require it on spec/spec_helper.rb:
77
-
78
- require 'spec'
79
- require 'rspec_spinner'
80
- ...
81
-
82
- Change your spec.opts --format to:
83
-
84
- --format RspecSpinner::Bar
85
-
86
- or:
87
-
88
- --format RspecSpinner::Spinner
89
-
90
- Have fun!
91
-
92
- rdoc_options:
93
- - --charset=UTF-8
74
+ post_install_message: "\n\
75
+ 50% |========= RSPEC_SPINNER =========|\n\n\
76
+ Require it on spec/spec_helper.rb:\n\n require 'spec'\n require 'rspec_spinner'\n ...\n\n\
77
+ Change your spec.opts --format to:\n\n --format RspecSpinner::Bar\n\n\
78
+ or:\n\n --format RspecSpinner::Spinner\n\n\
79
+ Have fun!\n\n"
80
+ rdoc_options: []
81
+
94
82
  require_paths:
95
83
  - lib
96
84
  required_ruby_version: !ruby/object:Gem::Requirement
85
+ none: false
97
86
  requirements:
98
87
  - - ">="
99
88
  - !ruby/object:Gem::Version
@@ -101,6 +90,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
101
90
  - 0
102
91
  version: "0"
103
92
  required_rubygems_version: !ruby/object:Gem::Requirement
93
+ none: false
104
94
  requirements:
105
95
  - - ">="
106
96
  - !ruby/object:Gem::Version
@@ -110,12 +100,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
100
  requirements: []
111
101
 
112
102
  rubyforge_project:
113
- rubygems_version: 1.3.6
103
+ rubygems_version: 1.3.7
114
104
  signing_key:
115
105
  specification_version: 3
116
106
  summary: Extra formatters for Rspec
117
107
  test_files:
118
- - spec/spec_helper.rb
119
108
  - spec/rspec_spinner/base_spec.rb
120
109
  - spec/rspec_spinner/spinner_spec.rb
121
110
  - spec/rspec_spinner_spec.rb
111
+ - spec/spec_helper.rb
data/.gitignore DELETED
@@ -1,7 +0,0 @@
1
- *.swp
2
- .DS_Store
3
- doc/*
4
- rdoc/*
5
- coverage/*
6
- spec/debug.log
7
- pkg/*