voxable-labs/hg

View on GitHub
lib/hg/controller.rb

Summary

Maintainability
A
0 mins
Test Coverage

Method has too many lines. [20/10] (https://github.com/voxable-labs/voxable-style-guide#short-methods)
Open

    def respond(*args)
      # If we're attempting to send back a simple text message...
      if args.first.is_a?(String)
        # ...deliver the message.

Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks if the length of a method exceeds some maximum value. Comment lines can optionally be ignored. The maximum allowed length is configurable.

Assignment Branch Condition size for respond is too high. [18.87/15] (http://c2.com/cgi/wiki?AbcMetric)
Open

    def respond(*args)
      # If we're attempting to send back a simple text message...
      if args.first.is_a?(String)
        # ...deliver the message.

Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks that the ABC size of methods is not higher than the configured maximum. The ABC size is based on assignments, branches (method calls), and conditions. See http://c2.com/cgi/wiki?AbcMetric

TODO found
Open

  # TODO: Should this object be Controllers::Base?
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

    # TODO: High - document and test
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

      # TODO: This is a gross hack. You're supposed to throw(:abort).
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

    # TODO: Document these params
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

      # TODO: Seems like we need a method for fetching params value.
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

      # TODO: The run_callbacks shouldn't be here, but for some reason including
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

        # TODO: Add this as a method to Bot.
Severity: Minor
Found in lib/hg/controller.rb by fixme

TODO found
Open

      # TODO: Test that params or parameters works, here.
Severity: Minor
Found in lib/hg/controller.rb by fixme

= is not aligned with the following assignment.
Open

      @params = ActiveSupport::HashWithIndifferentAccess.new(request.parameters || request.params)
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

= is not aligned with the preceding assignment.
Open

      @user = request.user
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

Use 2 spaces for indentation in a hash, relative to the first position after the preceding left parenthesis.
Open

        recipient: {id: user.facebook_psid},
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cops checks the indentation of the first key in a hash literal where the opening brace and the first key are on separate lines. The other keys' indentations are handled by the AlignHash cop.

By default, Hash literals that are arguments in a method call with parentheses, and where the opening curly brace of the hash is on the same line as the opening parenthesis of the method call, shall have their first key indented one step (two spaces) more than the position inside the opening parenthesis.

Other hash literals shall have their first key indented one step more than the start of the line where the opening curly brace is.

This default style is called 'specialinsideparentheses'. Alternative styles are 'consistent' and 'align_braces'. Here are examples:

Example: EnforcedStyle: specialinsideparentheses (default)

# The `special_inside_parentheses` style enforces that the first key
# in a hash literal where the opening brace and the first key are on
# separate lines is indented one step (two spaces) more than the
# position inside the opening parentheses.

# bad
hash = {
  key: :value
}
and_in_a_method_call({
  no: :difference
                     })

# good
special_inside_parentheses
hash = {
  key: :value
}
but_in_a_method_call({
                       its_like: :this
                     })

Example: EnforcedStyle: consistent

# The `consistent` style enforces that the first key in a hash
# literal where the opening brace and the first key are on
# seprate lines is indented the same as a hash literal which is not
# defined inside a method call.

# bad
hash = {
  key: :value
}
but_in_a_method_call({
                       its_like: :this
                      })

# good
hash = {
  key: :value
}
and_in_a_method_call({
  no: :difference
})

Example: EnforcedStyle: align_braces

# The `align_brackets` style enforces that the opening and closing
# braces are indented to the same position.

# bad
and_now_for_something = {
                          completely: :different
}

# good
and_now_for_something = {
                          completely: :different
                        }

Line is too long. [85/80] (https://github.com/voxable-labs/voxable-style-guide#80-character-limits)
Open

    # Generate a context based on merging the params into the user's current context.
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :after_handler, :after_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

= is not aligned with the preceding assignment.
Open

        chunk_context = args[1] || {}
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

Space inside { missing. (https://github.com/voxable-labs/voxable-style-guide#spaces-operators)
Open

        recipient: {id: user.facebook_psid},
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Checks that braces used for hash literals have or don't have surrounding space depending on configuration.

Example: EnforcedStyle: space

# The `space` style enforces that hash literals have
# surrounding space.

# bad
h = {a: 1, b: 2}

# good
h = { a: 1, b: 2 }

Example: EnforcedStyle: no_space

# The `no_space` style enforces that hash literals have
# no surrounding space.

# bad
h = { a: 1, b: 2 }

# good
h = {a: 1, b: 2}

Example: EnforcedStyle: compact

# The `compact` style normally requires a space inside
# hash braces, with the exception that successive left
# braces or right braces are collapsed together in nested hashes.

# bad
h = { a: { b: 2 } }

# good
h = { a: { b: 2 }}

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

    alias_method :parameters, :params
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

    alias_method :action_name, :handler_name
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :before_handler, :before_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

    alias_method :send_action, :send
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :prepend_before_handler, :prepend_before_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

= is not aligned with the preceding assignment.
Open

      @performed = false
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

= is not aligned with the preceding assignment.
Open

      @handler_name = handler_name.to_s
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

= is not aligned with the following assignment.
Open

        chunk_class = args[0]
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

Line is too long. [98/80] (https://github.com/voxable-labs/voxable-style-guide#80-character-limits)
Open

      @params = ActiveSupport::HashWithIndifferentAccess.new(request.parameters || request.params)
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Line is too long. [86/80] (https://github.com/voxable-labs/voxable-style-guide#80-character-limits)
Open

        chunk_class.new(recipient: user.facebook_psid, context: chunk_context).deliver
Severity: Minor
Found in lib/hg/controller.rb by rubocop

= is not aligned with the preceding assignment.
Open

      @router = router
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for extra/unnecessary whitespace.

Example:

# good if AllowForAlignment is true
name      = "RuboCop"
# Some comment and an empty line

website  += "/bbatsov/rubocop" unless cond
puts        "rubocop"          if     debug

# bad for any configuration
set_app("RuboCop")
website  = "https://github.com/bbatsov/rubocop"

Indent the right brace the same as the first position after the preceding left parenthesis.
Open

      }, access_token: ENV['FB_ACCESS_TOKEN'])
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cops checks the indentation of the first key in a hash literal where the opening brace and the first key are on separate lines. The other keys' indentations are handled by the AlignHash cop.

By default, Hash literals that are arguments in a method call with parentheses, and where the opening curly brace of the hash is on the same line as the opening parenthesis of the method call, shall have their first key indented one step (two spaces) more than the position inside the opening parenthesis.

Other hash literals shall have their first key indented one step more than the start of the line where the opening curly brace is.

This default style is called 'specialinsideparentheses'. Alternative styles are 'consistent' and 'align_braces'. Here are examples:

Example: EnforcedStyle: specialinsideparentheses (default)

# The `special_inside_parentheses` style enforces that the first key
# in a hash literal where the opening brace and the first key are on
# separate lines is indented one step (two spaces) more than the
# position inside the opening parentheses.

# bad
hash = {
  key: :value
}
and_in_a_method_call({
  no: :difference
                     })

# good
special_inside_parentheses
hash = {
  key: :value
}
but_in_a_method_call({
                       its_like: :this
                     })

Example: EnforcedStyle: consistent

# The `consistent` style enforces that the first key in a hash
# literal where the opening brace and the first key are on
# seprate lines is indented the same as a hash literal which is not
# defined inside a method call.

# bad
hash = {
  key: :value
}
but_in_a_method_call({
                       its_like: :this
                      })

# good
hash = {
  key: :value
}
and_in_a_method_call({
  no: :difference
})

Example: EnforcedStyle: align_braces

# The `align_brackets` style enforces that the opening and closing
# braces are indented to the same position.

# bad
and_now_for_something = {
                          completely: :different
}

# good
and_now_for_something = {
                          completely: :different
                        }

Line is too long. [87/80] (https://github.com/voxable-labs/voxable-style-guide#80-character-limits)
Open

      # Since we call our actions 'handlers' (as the term action is part of the concept
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :skip_before_handler, :skip_before_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

module_inclusion is supposed to appear before public_methods. (https://github.com/bbatsov/ruby-style-guide#consistent-classes)
Open

    include AbstractController::Callbacks
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Checks if the code style follows the ExpectedOrder configuration:

Categories allows us to map macro names into a category.

Consider an example of code style that covers the following order: - Constants - Associations (hasone, hasmany) - Attributes (attraccessor, attrwriter, attr_reader) - Initializer - Instance methods - Protected methods - Private methods

You can configure the following order:

Layout/ClassStructure:
     Categories:
       module_inclusion:
         - include
         - prepend
         - extend
     ExpectedOrder:
         - module_inclusion
         - constants
         - public_class_methods
         - initializer
         - public_methods
         - protected_methods
         - private_methods

Instead of putting all literals in the expected order, is also possible to group categories of macros.

Layout/ClassStructure:
     Categories:
       association:
         - has_many
         - has_one
       attribute:
         - attr_accessor
         - attr_reader
         - attr_writer

Example:

# bad
# Expect extend be before constant
class Person < ApplicationRecord
  has_many :orders
  ANSWER = 42

  extend SomeModule
  include AnotherModule
end

# good
class Person
  # extend and include go first
  extend SomeModule
  include AnotherModule

  # inner classes
  CustomError = Class.new(StandardError)

  # constants are next
  SOME_CONSTANT = 20

  # afterwards we have attribute macros
  attr_reader :name

  # followed by other macros (if any)
  validates :name

  # public class methods are next in line
  def self.some_method
  end

  # initialization goes between class methods and instance methods
  def initialize
  end

  # followed by other public instance methods
  def some_method
  end

  # protected and private methods are grouped near the end
  protected

  def some_protected_method
  end

  private

  def some_private_method
  end
end

@see https://github.com/bbatsov/ruby-style-guide#consistent-classes

Space inside } missing. (https://github.com/voxable-labs/voxable-style-guide#spaces-operators)
Open

        recipient: {id: user.facebook_psid},
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Checks that braces used for hash literals have or don't have surrounding space depending on configuration.

Example: EnforcedStyle: space

# The `space` style enforces that hash literals have
# surrounding space.

# bad
h = {a: 1, b: 2}

# good
h = { a: 1, b: 2 }

Example: EnforcedStyle: no_space

# The `no_space` style enforces that hash literals have
# no surrounding space.

# bad
h = { a: 1, b: 2 }

# good
h = {a: 1, b: 2}

Example: EnforcedStyle: compact

# The `compact` style normally requires a space inside
# hash braces, with the exception that successive left
# braces or right braces are collapsed together in nested hashes.

# bad
h = { a: { b: 2 } }

# good
h = { a: { b: 2 }}

Line is too long. [84/80] (https://github.com/voxable-labs/voxable-style-guide#80-character-limits)
Open

  # from ActionController. They can either be accessed in their normal form, or with
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Add a line break before the first argument of a multi-line method argument list.
Open

      Facebook::Messenger::Bot.deliver({
        recipient: {id: user.facebook_psid},
        sender_action: 'typing_on'
      }, access_token: ENV['FB_ACCESS_TOKEN'])
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for a line break before the first argument in a multi-line method call.

Example:

# bad
  method(foo, bar,
    baz)

  # good
  method(
    foo, bar,
    baz)

  # ignored
  method foo, bar,
    baz

Line is too long. [81/80] (https://github.com/voxable-labs/voxable-style-guide#80-character-limits)
Open

  # `handler` in place of `action` in the method name. If the filter chain should
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :append_before_handler, :append_before_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :skip_around_handler, :skip_around_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :append_after_handler, :append_after_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Missing method documentation comment.
Open

    def flash(message)
      message = message.sample if message.respond_to?(:sample)
      respond(message)
      show_typing
    end
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for missing documentation comment for public methods. It can optionally be configured to also require documentation for non-public methods.

Example:

# bad

class Foo
  def bar
    puts baz
  end
end

module Foo
  def bar
    puts baz
  end
end

def foo.bar
  puts baz
end

# good

class Foo
  # Documentation
  def bar
    puts baz
  end
end

module Foo
  # Documentation
  def bar
    puts baz
  end
end

# Documentation
def foo.bar
  puts baz
end

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :prepend_after_handler, :prepend_after_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :append_around_handler, :append_around_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :skip_after_handler, :skip_after_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

    alias_method :respond_with, :respond
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Missing method documentation comment.
Open

    def t(*args)
      I18n.t(*args)
    end
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for missing documentation comment for public methods. It can optionally be configured to also require documentation for non-public methods.

Example:

# bad

class Foo
  def bar
    puts baz
  end
end

module Foo
  def bar
    puts baz
  end
end

def foo.bar
  puts baz
end

# good

class Foo
  # Documentation
  def bar
    puts baz
  end
end

module Foo
  # Documentation
  def bar
    puts baz
  end
end

# Documentation
def foo.bar
  puts baz
end

if condition requires an else-clause.
Open

        if ENV['CHATBASE_API_KEY']
          ChatbaseAPIClient.new.send_bot_message(message_text, response)
        end
Severity: Minor
Found in lib/hg/controller.rb by rubocop

Checks for if expressions that do not have an else branch. SupportedStyles

if

Example:

# bad
if condition
  statement
end

case

Example:

# bad
case var
when condition
  statement
end

Example:

# good
if condition
  statement
else
# the content of the else branch will be determined by Style/EmptyElse
end

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :around_handler, :around_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

if condition requires an else-clause.
Open

      elsif args.first.is_a?(Class)
        # ....deliver the chunk
        chunk_class = args[0]
        chunk_context = args[1] || {}

Severity: Minor
Found in lib/hg/controller.rb by rubocop

Checks for if expressions that do not have an else branch. SupportedStyles

if

Example:

# bad
if condition
  statement
end

case

Example:

# bad
case var
when condition
  statement
end

Example:

# good
if condition
  statement
else
# the content of the else branch will be determined by Style/EmptyElse
end

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

      alias_method :prepend_around_handler, :prepend_around_action
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

    alias_method :reply, :respond
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

Missing method documentation comment.
Open

    def redirect_to(payload = {})
      request.action = payload[:action]
      request.intent = payload[:action] || payload[:intent]
      request.route  = payload[:route]
      # TODO: Seems like we need a method for fetching params value.
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop checks for missing documentation comment for public methods. It can optionally be configured to also require documentation for non-public methods.

Example:

# bad

class Foo
  def bar
    puts baz
  end
end

module Foo
  def bar
    puts baz
  end
end

def foo.bar
  puts baz
end

# good

class Foo
  # Documentation
  def bar
    puts baz
  end
end

module Foo
  # Documentation
  def bar
    puts baz
  end
end

# Documentation
def foo.bar
  puts baz
end

Use alias instead of alias_method in a class body. (https://github.com/voxable-labs/voxable-style-guide#alias-method)
Open

    alias_method :ask, :respond
Severity: Minor
Found in lib/hg/controller.rb by rubocop

This cop enforces the use of either #alias or #alias_method depending on configuration. It also flags uses of alias :symbol rather than alias bareword.

Example: EnforcedStyle: prefer_alias (default)

# bad
alias_method :bar, :foo
alias :bar :foo

# good
alias bar foo

Example: EnforcedStyle: preferaliasmethod

# bad
alias :bar :foo
alias bar foo

# good
alias_method :bar, :foo

There are no issues that match your filters.

Category
Status