colorific 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +1 -0
- data/lib/colorific.rb +17 -24
- data/lib/colorific/version.rb +1 -1
- data/test/test_nothing.rb +9 -0
- metadata +5 -2
data/README.markdown
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
If you're using Ruby 1.9 add `gem 'colorific', :group => :test` in your Gemfile and watch an explosion of colors in your tests!
|
data/lib/colorific.rb
CHANGED
@@ -2,22 +2,10 @@ gem 'minitest'
|
|
2
2
|
require "minitest/autorun"
|
3
3
|
require 'progressbar'
|
4
4
|
|
5
|
-
|
6
|
-
|
5
|
+
class MiniTest::Unit
|
6
|
+
ANSI_COLOR_CODES = { :clear => "\e[0m", :red => "\e[31m", :green => "\e[32m", :yellow => "\e[33m" }
|
7
7
|
TEST_COLORS = { "F" => :red, "E" => :red, "S" => :yellow, "." => :green }
|
8
8
|
|
9
|
-
def self.[](color_name)
|
10
|
-
"\e[#{COLORS[color_name.to_sym]}m"
|
11
|
-
end
|
12
|
-
|
13
|
-
def self.colored(status, msg)
|
14
|
-
color_name = TEST_COLORS[status[0,1]]
|
15
|
-
return msg unless color_name
|
16
|
-
Colorific[color_name] + msg + Colorific[:clear]
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
class MiniTest::Unit
|
21
9
|
alias :original_puke :puke
|
22
10
|
alias :original_run_suites :_run_suites
|
23
11
|
alias :original_status :status
|
@@ -27,7 +15,7 @@ class MiniTest::Unit
|
|
27
15
|
|
28
16
|
report = @report.pop
|
29
17
|
lines = report.split(/\n/)
|
30
|
-
lines[0] =
|
18
|
+
lines[0] = tint(r, lines[0])
|
31
19
|
@report << lines.join("\n")
|
32
20
|
r
|
33
21
|
end
|
@@ -44,11 +32,8 @@ class MiniTest::Unit
|
|
44
32
|
end
|
45
33
|
|
46
34
|
def print(*a)
|
47
|
-
|
48
|
-
|
49
|
-
increment
|
50
|
-
when 'S', 'F', 'E'
|
51
|
-
set_color(type)
|
35
|
+
if %w(. S F E).include?(a.join)
|
36
|
+
set_color(a.join)
|
52
37
|
increment
|
53
38
|
else
|
54
39
|
output.print(*a)
|
@@ -56,21 +41,29 @@ class MiniTest::Unit
|
|
56
41
|
end
|
57
42
|
|
58
43
|
protected
|
44
|
+
def tint(status, msg)
|
45
|
+
color_name = TEST_COLORS[status[0,1]]
|
46
|
+
return msg unless color_name
|
47
|
+
ANSI_COLOR_CODES[color_name] + msg + ANSI_COLOR_CODES[:clear]
|
48
|
+
end
|
49
|
+
|
59
50
|
def set_color(type)
|
60
51
|
case type
|
61
|
-
when
|
62
|
-
@state = :red
|
52
|
+
when '.'
|
53
|
+
@state = :green unless @state == :yellow || @state == :red
|
63
54
|
when "S"
|
64
55
|
@state = :yellow unless @state == :red
|
56
|
+
when "F", "E"
|
57
|
+
@state = :red
|
65
58
|
end
|
66
59
|
end
|
67
60
|
|
68
61
|
def state
|
69
|
-
@state ||= :
|
62
|
+
@state ||= :clear
|
70
63
|
end
|
71
64
|
|
72
65
|
def with_color
|
73
|
-
output.print
|
66
|
+
output.print ANSI_COLOR_CODES[state]
|
74
67
|
yield
|
75
68
|
output.print "\e[0m"
|
76
69
|
end
|
data/lib/colorific/version.rb
CHANGED
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: colorific
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.0.
|
5
|
+
version: 0.0.2
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Carlos Brando
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-02-
|
13
|
+
date: 2011-02-19 00:00:00 -02:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
@@ -47,12 +47,14 @@ extra_rdoc_files: []
|
|
47
47
|
files:
|
48
48
|
- .gitignore
|
49
49
|
- Gemfile
|
50
|
+
- README.markdown
|
50
51
|
- Rakefile
|
51
52
|
- colorific.gemspec
|
52
53
|
- lib/colorific.rb
|
53
54
|
- lib/colorific/version.rb
|
54
55
|
- test/test_error.rb
|
55
56
|
- test/test_fail.rb
|
57
|
+
- test/test_nothing.rb
|
56
58
|
- test/test_pass.rb
|
57
59
|
- test/test_skip.rb
|
58
60
|
has_rdoc: true
|
@@ -86,5 +88,6 @@ summary: Run your tests (Minitest) with lots of color!
|
|
86
88
|
test_files:
|
87
89
|
- test/test_error.rb
|
88
90
|
- test/test_fail.rb
|
91
|
+
- test/test_nothing.rb
|
89
92
|
- test/test_pass.rb
|
90
93
|
- test/test_skip.rb
|