Class: QueryGuard::Analysis::RiskLevel

Inherits:
Object
  • Object
show all
Defined in:
lib/query_guard/analysis/risk_level.rb

Overview

Risk severity levels for query analysis Used to classify and report on query risks

Constant Summary collapse

LEVELS =
{
  low: 1,
  medium: 2,
  high: 3,
  critical: 4
}.freeze
SEVERITY_MAP =
{
  low: :info,
  medium: :warn,
  high: :error,
  critical: :error
}.freeze

Class Method Summary collapse

Class Method Details

.compare(level1, level2) ⇒ Object



30
31
32
# File 'lib/query_guard/analysis/risk_level.rb', line 30

def self.compare(level1, level2)
  LEVELS[level1.to_sym] <=> LEVELS[level2.to_sym]
end

.to_severity(level) ⇒ Object



26
27
28
# File 'lib/query_guard/analysis/risk_level.rb', line 26

def self.to_severity(level)
  SEVERITY_MAP[level.to_sym] || :warn
end

.valid?(level) ⇒ Boolean

Returns:

  • (Boolean)


22
23
24
# File 'lib/query_guard/analysis/risk_level.rb', line 22

def self.valid?(level)
  LEVELS.key?(level.to_sym)
end