1
0
Fork 0
mirror of https://github.com/awesome-print/awesome_print synced 2023-03-27 23:22:34 -04:00

Add option to suppress array index in output.

This commit is contained in:
Sean Gallagher 2010-09-11 00:03:53 +08:00 committed by Michael Dvorkin
parent 620c83dd84
commit c05a6abad7
2 changed files with 50 additions and 1 deletions

View file

@ -14,6 +14,7 @@ class AwesomePrint
:multiline => true,
:plain => false,
:indent => 4,
:index => true,
:color => {
:array => :white,
:bigdecimal => :blue,
@ -50,7 +51,11 @@ class AwesomePrint
if @options[:multiline]
width = (a.size - 1).to_s.size
data = a.inject([]) do |arr, item|
index = colorize("#{indent}[#{arr.size.to_s.rjust(width)}] ", :array)
index = if @options[:index]
colorize("#{indent}[#{arr.size.to_s.rjust(width)}] ", :array)
else
colorize(indent, :array)
end
indented do
arr << (index << awesome(item))
end

View file

@ -30,6 +30,23 @@ describe "AwesomePrint" do
]
]
]
EOS
end
it "plain multiline without index" do
@arr.ai(:plain => true, :index => false).should == <<-EOS.strip
[
1,
:two,
"three",
[
nil,
[
true,
false
]
]
]
EOS
end
@ -50,6 +67,23 @@ EOS
EOS
end
it "plain multiline indented without index" do
@arr.ai(:plain => true, :indent => 2, :index => false).should == <<-EOS.strip
[
1,
:two,
"three",
[
nil,
[
true,
false
]
]
]
EOS
end
it "plain single line" do
@arr.ai(:plain => true, :multiline => false).should == '[ 1, :two, "three", [ nil, [ true, false ] ] ]'
end
@ -110,6 +144,16 @@ EOS
EOS
end
it "plain multiline without index" do
@arr.ai(:plain => true, :index => false).should == <<-EOS.strip
[
1,
2,
[...]
]
EOS
end
it "plain single line" do
@arr.ai(:plain => true, :multiline => false).should == "[ 1, 2, [...] ]"
end