Class: RuboCop::Cop::Rails::HttpStatus::NumericStyleChecker

Inherits:
Object
  • Object
show all
Defined in:
lib/rubocop/cop/rails/http_status.rb

Overview

:nodoc:

Constant Summary collapse

MSG =
'Prefer `%<prefer>s` over `%<current>s` to define HTTP status code.'
DEFAULT_MSG =
'Prefer `numeric` over `symbolic` to define HTTP status code.'
PERMITTED_STATUS =
%i[error success missing redirect].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(node) ⇒ NumericStyleChecker

Returns a new instance of NumericStyleChecker.



131
132
133
# File 'lib/rubocop/cop/rails/http_status.rb', line 131

def initialize(node)
  @node = node
end

Instance Attribute Details

#nodeObject (readonly)

Returns the value of attribute node.



129
130
131
# File 'lib/rubocop/cop/rails/http_status.rb', line 129

def node
  @node
end

Instance Method Details

#messageObject



139
140
141
# File 'lib/rubocop/cop/rails/http_status.rb', line 139

def message
  format(MSG, prefer: preferred_style, current: symbol.inspect)
end

#offensive?Boolean

Returns:

  • (Boolean)


135
136
137
# File 'lib/rubocop/cop/rails/http_status.rb', line 135

def offensive?
  !node.int_type? && !permitted_symbol?
end

#preferred_styleObject



143
144
145
# File 'lib/rubocop/cop/rails/http_status.rb', line 143

def preferred_style
  number.to_s
end