class Test::Unit::ColorScheme
Public Class Methods
new(scheme_spec)
click to toggle source
# File lib/test/unit/color-scheme.rb, line 112 def initialize(scheme_spec) @scheme = {} scheme_spec.each do |key, color_spec| self[key] = color_spec end end
Public Instance Methods
[](id)
click to toggle source
# File lib/test/unit/color-scheme.rb, line 84 def [](id) @@schemes[id.to_s] end
[]=(id, scheme_or_spec)
click to toggle source
# File lib/test/unit/color-scheme.rb, line 88 def []=(id, scheme_or_spec) if scheme_or_spec.is_a?(self) scheme = scheme_or_spec else scheme = new(scheme_or_spec) end @@schemes[id.to_s] = scheme end
all()
click to toggle source
# File lib/test/unit/color-scheme.rb, line 80 def all @@schemes.merge("default" => default) end
available_colors()
click to toggle source
# File lib/test/unit/color-scheme.rb, line 97 def available_colors case ENV["COLORTERM"] when "gnome-terminal" 256 else case ENV["TERM"] when /-256color\z/ 256 else 8 end end end
default()
click to toggle source
# File lib/test/unit/color-scheme.rb, line 9 def default if available_colors == 256 default_for_256_colors else default_for_8_colors end end
default_for_256_colors()
click to toggle source
# File lib/test/unit/color-scheme.rb, line 49 def default_for_256_colors @@default_for_256_colors ||= new("pass" => Color.new("030", :background => true) + Color.new("555", :bold => true), "failure" => Color.new("300", :background => true) + Color.new("555", :bold => true), "pending" => Color.new("303", :background => true) + Color.new("555", :bold => true), "omission" => Color.new("001", :background => true) + Color.new("555", :bold => true), "notification" => Color.new("011", :background => true) + Color.new("555", :bold => true), "error" => Color.new("000", :background => true) + Color.new("550", :bold => true), "case" => Color.new("220", :background => true) + Color.new("555", :bold => true), "suite" => Color.new("110", :background => true) + Color.new("555", :bold => true), "diff-inserted-tag" => Color.new("500", :background => true) + Color.new("000", :bold => true), "diff-deleted-tag" => Color.new("050", :background => true) + Color.new("000", :bold => true), "diff-difference-tag" => Color.new("005", :background => true) + Color.new("555", :bold => true), "diff-inserted" => Color.new("300", :background => true) + Color.new("555", :bold => true), "diff-deleted" => Color.new("030", :background => true) + Color.new("555", :bold => true)) end
default_for_8_colors()
click to toggle source
# File lib/test/unit/color-scheme.rb, line 18 def default_for_8_colors @@default_for_8_colors ||= new("pass" => Color.new("green", :background => true) + Color.new("white", :bold => true), "failure" => Color.new("red", :background => true) + Color.new("white", :bold => true), "pending" => Color.new("magenta", :background => true) + Color.new("white", :bold => true), "omission" => Color.new("blue", :background => true) + Color.new("white", :bold => true), "notification" => Color.new("cyan", :background => true) + Color.new("white", :bold => true), "error" => Color.new("black", :background => true) + Color.new("yellow", :bold => true), "case" => Color.new("blue", :background => true) + Color.new("white", :bold => true), "suite" => Color.new("green", :background => true) + Color.new("white", :bold => true), "diff-inserted-tag" => Color.new("red", :background => true) + Color.new("black", :bold => true), "diff-deleted-tag" => Color.new("green", :background => true) + Color.new("black", :bold => true), "diff-difference-tag" => Color.new("cyan", :background => true) + Color.new("white", :bold => true), "diff-inserted" => Color.new("red", :background => true) + Color.new("white", :bold => true), "diff-deleted" => Color.new("green", :background => true) + Color.new("white", :bold => true)) end
each(&block)
click to toggle source
# File lib/test/unit/color-scheme.rb, line 127 def each(&block) @scheme.each(&block) end
to_hash()
click to toggle source
# File lib/test/unit/color-scheme.rb, line 131 def to_hash hash = {} @scheme.each do |key, color| hash[key] = color end hash end
Private Instance Methods
make_color(color_spec)
click to toggle source
# File lib/test/unit/color-scheme.rb, line 140 def make_color(color_spec) if color_spec.is_a?(Color) or color_spec.is_a?(MixColor) color_spec else color_name = nil normalized_color_spec = {} color_spec.each do |key, value| key = key.to_sym if key == :name color_name = value else normalized_color_spec[key] = value end end Color.new(color_name, normalized_color_spec) end end