mirror of
https://github.com/inspec/inspec
synced 2025-02-17 06:28:40 +00:00
feedback round with @chris-rock
This commit is contained in:
parent
211a2e25fb
commit
8660d5d81c
3 changed files with 19 additions and 12 deletions
|
@ -66,20 +66,25 @@ class Inspec::InspecCLI < Inspec::BaseCLI # rubocop:disable Metrics/ClassLength
|
|||
if result[:errors].empty? and result[:warnings].empty?
|
||||
puts 'No errors or warnings'
|
||||
else
|
||||
red = "\033[31m"
|
||||
yellow = "\033[33m"
|
||||
rst = "\033[0m"
|
||||
|
||||
item_msg = lambda { |item|
|
||||
pos = [item[:file], item[:line], item[:column]].compact.join(':')
|
||||
pos.empty? ? item[:msg] : pos + ': ' + item[:msg]
|
||||
}
|
||||
result[:errors].each do |item|
|
||||
puts "\033[31m ✖ #{item_msg.call(item)}\033[0m"
|
||||
puts "#{red} ✖ #{item_msg.call(item)}#{rst}"
|
||||
end
|
||||
result[:warnings].each do |item|
|
||||
puts "\033[33m ! #{item_msg.call(item)}\033[0m"
|
||||
puts "#{yellow} ! #{item_msg.call(item)}#{rst}"
|
||||
end
|
||||
|
||||
puts
|
||||
puts format('Summary: %3d errors %3d warnings',
|
||||
result[:errors].length, result[:warnings].length)
|
||||
puts format('Summary: %s%d errors%s, %s%d warnings%s',
|
||||
red, result[:errors].length, rst,
|
||||
yellow, result[:warnings].length, rst)
|
||||
end
|
||||
end
|
||||
exit 1 unless result[:summary][:valid]
|
||||
|
|
|
@ -202,8 +202,10 @@ class InspecRspecCli < InspecRspecJson # rubocop:disable Metrics/ClassLength
|
|||
|
||||
res = @output_hash[:summary]
|
||||
passed = res[:example_count] - res[:failure_count] - res[:skip_count]
|
||||
s = format('Summary: %3d successful %3d failures %3d skipped',
|
||||
passed, res[:failure_count], res[:skip_count])
|
||||
s = format('Summary: %s%d successful%s, %s%d failures%s, %s%d skipped%s',
|
||||
COLORS['passed'], passed, COLORS['reset'],
|
||||
COLORS['failed'], res[:failure_count], COLORS['reset'],
|
||||
COLORS['skipped'], res[:skip_count], COLORS['reset'])
|
||||
output.puts(s)
|
||||
end
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ describe 'inspec exec' do
|
|||
\e[37m ○ gordon-1.0: Verify the version number of Gordon (1 skipped)\e[0m
|
||||
\e[37m Can't find file \"/tmp/gordon/config.yaml\"\e[0m
|
||||
"
|
||||
stdout.must_include "\nSummary: 4 successful 0 failures 1 skipped\n"
|
||||
stdout.must_include "\nSummary: \e[32m4 successful\e[0m, \e[31m0 failures\e[0m, \e[37m1 skipped\e[0m\n"
|
||||
end
|
||||
|
||||
it 'executes a minimum metadata-only profile' do
|
||||
|
@ -32,7 +32,7 @@ Target: local://
|
|||
|
||||
No tests executed.\e[0m
|
||||
|
||||
Summary: 0 successful 0 failures 0 skipped
|
||||
Summary: \e[32m0 successful\e[0m, \e[31m0 failures\e[0m, \e[37m0 skipped\e[0m
|
||||
"
|
||||
end
|
||||
|
||||
|
@ -47,7 +47,7 @@ Target: local://
|
|||
|
||||
No tests executed.\e[0m
|
||||
|
||||
Summary: 0 successful 0 failures 0 skipped
|
||||
Summary: \e[32m0 successful\e[0m, \e[31m0 failures\e[0m, \e[37m0 skipped\e[0m
|
||||
"
|
||||
end
|
||||
|
||||
|
@ -66,7 +66,7 @@ Target: local://
|
|||
\n (compared using ==)
|
||||
\e[0m
|
||||
|
||||
Summary: 1 successful 1 failures 1 skipped
|
||||
Summary: \e[32m1 successful\e[0m, \e[31m1 failures\e[0m, \e[37m1 skipped\e[0m
|
||||
"
|
||||
end
|
||||
|
||||
|
@ -74,14 +74,14 @@ Summary: 1 successful 1 failures 1 skipped
|
|||
out = inspec('exec ' + example_profile + ' --controls tmp-1.0')
|
||||
out.stderr.must_equal ''
|
||||
out.exit_status.must_equal 0
|
||||
out.stdout.must_include "\nSummary: 1 successful 0 failures 0 skipped\n"
|
||||
out.stdout.must_include "\nSummary: \e[32m1 successful\e[0m, \e[31m0 failures\e[0m, \e[37m0 skipped\e[0m\n"
|
||||
end
|
||||
|
||||
it 'can execute a simple file with the default formatter' do
|
||||
out = inspec('exec ' + example_control)
|
||||
out.stderr.must_equal ''
|
||||
out.exit_status.must_equal 0
|
||||
out.stdout.must_include 'Summary: 2 successful 0 failures 0 skipped'
|
||||
out.stdout.must_include "\nSummary: \e[32m2 successful\e[0m, \e[31m0 failures\e[0m, \e[37m0 skipped\e[0m\n"
|
||||
end
|
||||
|
||||
describe 'with a profile that is not supported on this OS/platform' do
|
||||
|
|
Loading…
Add table
Reference in a new issue