Class: DatabaseConsistency::Checkers::BaseChecker

Inherits:
Object
  • Object
show all
Defined in:
lib/database_consistency/checkers/base_checker.rb

Overview

The base class for checkers

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.checker_nameString

Returns:

  • (String)


15
16
17
# File 'lib/database_consistency/checkers/base_checker.rb', line 15

def self.checker_name
  @checker_name ||= name.split('::').last
end

.enabled?(configuration) ⇒ Boolean

Parameters:

Returns:

  • (Boolean)


10
11
12
# File 'lib/database_consistency/checkers/base_checker.rb', line 10

def self.enabled?(configuration)
  configuration.enabled?('DatabaseConsistencyCheckers', checker_name)
end

Instance Method Details

#enabled?(configuration) ⇒ Boolean

Parameters:

Returns:

  • (Boolean)


36
37
38
# File 'lib/database_consistency/checkers/base_checker.rb', line 36

def enabled?(configuration)
  configuration.enabled?(table_or_model_name, column_or_attribute_name, checker_name)
end

#reportHash?

Returns:

  • (Hash, nil)


20
21
22
23
24
25
26
# File 'lib/database_consistency/checkers/base_checker.rb', line 20

def report
  return unless preconditions

  @report ||= check
rescue StandardError => e
  RescueError.call(e)
end

#report_if_enabled?(configuration) ⇒ Hash?

Returns:

  • (Hash, nil)


29
30
31
# File 'lib/database_consistency/checkers/base_checker.rb', line 29

def report_if_enabled?(configuration)
  report if enabled?(configuration)
end