10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# File 'lib/route_guard/formatter/json.rb', line 10
def format(report, io = $stdout)
data = {
metadata: {
version: RouteGuard::VERSION,
timestamp: Time.now.utc.iso8601,
duration: report.duration
},
summary: {
routes_count: report.routes.length,
errors_count: report.errors.length,
warnings_count: report.warnings.length,
health_score: report.complexity_score
},
statistics: report.stats || {},
issues: report.issues.map { |issue| format_issue(issue) }
}
io.puts JSON.pretty_generate(data)
end
|