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  |