Class: AbideDevUtils::Sce::Generate::CoverageReport::ReportOutput
- Inherits:
-
Object
- Object
- AbideDevUtils::Sce::Generate::CoverageReport::ReportOutput
- Defined in:
- lib/abide_dev_utils/sce/generate/coverage_report.rb
Overview
Class manages organizing report data into various output formats
Instance Attribute Summary collapse
-
#controls_in_resource_data ⇒ Object
readonly
Returns the value of attribute controls_in_resource_data.
-
#rules_in_map ⇒ Object
readonly
Returns the value of attribute rules_in_map.
-
#timestamp ⇒ Object
readonly
Returns the value of attribute timestamp.
-
#title ⇒ Object
readonly
Returns the value of attribute title.
Instance Method Summary collapse
- #benchmark_hash ⇒ Object
- #coverage_hash ⇒ Object
- #covered ⇒ Object
- #covered_count ⇒ Object
-
#initialize(benchmark, controls_in_resource_data, rules_in_map) ⇒ ReportOutput
constructor
A new instance of ReportOutput.
- #percentage ⇒ Object
- #to_h ⇒ Object
- #to_json(opts = nil) ⇒ Object
- #to_yaml ⇒ Object
- #total_count ⇒ Object
- #uncovered ⇒ Object
- #uncovered_count ⇒ Object
Constructor Details
#initialize(benchmark, controls_in_resource_data, rules_in_map) ⇒ ReportOutput
Returns a new instance of ReportOutput.
237 238 239 240 241 242 243 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 237 def initialize(benchmark, controls_in_resource_data, rules_in_map) @benchmark = benchmark @controls_in_resource_data = controls_in_resource_data @rules_in_map = rules_in_map @timestamp = DateTime.now.iso8601 @title = "Coverage Report for #{@benchmark.title_key}" end |
Instance Attribute Details
#controls_in_resource_data ⇒ Object (readonly)
Returns the value of attribute controls_in_resource_data.
234 235 236 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 234 def controls_in_resource_data @controls_in_resource_data end |
#rules_in_map ⇒ Object (readonly)
Returns the value of attribute rules_in_map.
234 235 236 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 234 def rules_in_map @rules_in_map end |
#timestamp ⇒ Object (readonly)
Returns the value of attribute timestamp.
234 235 236 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 234 def @timestamp end |
#title ⇒ Object (readonly)
Returns the value of attribute title.
234 235 236 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 234 def title @title end |
Instance Method Details
#benchmark_hash ⇒ Object
286 287 288 289 290 291 292 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 286 def benchmark_hash { title: @benchmark.title, version: @benchmark.version, framework: @benchmark.framework } end |
#coverage_hash ⇒ Object
294 295 296 297 298 299 300 301 302 303 304 305 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 294 def coverage_hash { total_count: total_count, uncovered_count: uncovered_count, uncovered: uncovered, covered_count: covered_count, covered: covered, percentage: percentage, controls_in_resource_data: controls_in_resource_data, rules_in_map: rules_in_map } end |
#covered ⇒ Object
253 254 255 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 253 def covered @covered ||= rules_in_map - uncovered end |
#covered_count ⇒ Object
257 258 259 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 257 def covered_count @covered_count ||= covered.length end |
#percentage ⇒ Object
265 266 267 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 265 def percentage @percentage ||= covered_count.to_f / total_count end |
#to_h ⇒ Object
269 270 271 272 273 274 275 276 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 269 def to_h { title: title, timestamp: , benchmark: benchmark_hash, coverage: coverage_hash } end |
#to_json(opts = nil) ⇒ Object
278 279 280 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 278 def to_json(opts = nil) JSON.generate(to_h, opts) end |
#to_yaml ⇒ Object
282 283 284 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 282 def to_yaml to_h.to_yaml end |
#total_count ⇒ Object
261 262 263 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 261 def total_count @total_count ||= rules_in_map.length end |
#uncovered ⇒ Object
245 246 247 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 245 def uncovered @uncovered ||= rules_in_map - controls_in_resource_data end |
#uncovered_count ⇒ Object
249 250 251 |
# File 'lib/abide_dev_utils/sce/generate/coverage_report.rb', line 249 def uncovered_count @uncovered_count ||= uncovered.length end |