fga-eps-mds/2019.2-Vsign

View on GitHub
backend/app/jobs/id_check_job.rb

Summary

Maintainability
A
2 hrs
Test Coverage

Assignment Branch Condition size for gettext is too high. [45.32/15]
Open

  def gettext(document_photo)
    client = Aws::Rekognition::Client.new({
      region: Rails.application.credentials.dig(:aws, :region),
      credentials: Aws::Credentials.new(
        Rails.application.credentials.dig(:aws, :access_key_id),
Severity: Minor
Found in backend/app/jobs/id_check_job.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

Method has too many lines. [37/10]
Open

  def gettext(document_photo)
    client = Aws::Rekognition::Client.new({
      region: Rails.application.credentials.dig(:aws, :region),
      credentials: Aws::Credentials.new(
        Rails.application.credentials.dig(:aws, :access_key_id),
Severity: Minor
Found in backend/app/jobs/id_check_job.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.

Perceived complexity for gettext is too high. [9/7]
Open

  def gettext(document_photo)
    client = Aws::Rekognition::Client.new({
      region: Rails.application.credentials.dig(:aws, :region),
      credentials: Aws::Credentials.new(
        Rails.application.credentials.dig(:aws, :access_key_id),
Severity: Minor
Found in backend/app/jobs/id_check_job.rb by rubocop

This cop tries to produce a complexity score that's a measure of the complexity the reader experiences when looking at a method. For that reason it considers when nodes as something that doesn't add as much complexity as an if or a &&. Except if it's one of those special case/when constructs where there's no expression after case. Then the cop treats it as an if/elsif/elsif... and lets all the when nodes count. In contrast to the CyclomaticComplexity cop, this cop considers else nodes as adding complexity.

Example:

def my_method                   # 1
  if cond                       # 1
    case var                    # 2 (0.8 + 4 * 0.2, rounded)
    when 1 then func_one
    when 2 then func_two
    when 3 then func_three
    when 4..10 then func_other
    end
  else                          # 1
    do_something until a && b   # 2
  end                           # ===
end                             # 7 complexity points

Cyclomatic complexity for gettext is too high. [7/6]
Open

  def gettext(document_photo)
    client = Aws::Rekognition::Client.new({
      region: Rails.application.credentials.dig(:aws, :region),
      credentials: Aws::Credentials.new(
        Rails.application.credentials.dig(:aws, :access_key_id),
Severity: Minor
Found in backend/app/jobs/id_check_job.rb by rubocop

This cop checks that the cyclomatic complexity of methods is not higher than the configured maximum. The cyclomatic complexity is the number of linearly independent paths through a method. The algorithm counts decision points and adds one.

An if statement (or unless or ?:) increases the complexity by one. An else branch does not, since it doesn't add a decision point. The && operator (or keyword and) can be converted to a nested if statement, and ||/or is shorthand for a sequence of ifs, so they also add one. Loops can be said to have an exit condition, so they add one.

Method gettext has 37 lines of code (exceeds 25 allowed). Consider refactoring.
Open

  def gettext(document_photo)
    client = Aws::Rekognition::Client.new({
      region: Rails.application.credentials.dig(:aws, :region),
      credentials: Aws::Credentials.new(
        Rails.application.credentials.dig(:aws, :access_key_id),
Severity: Minor
Found in backend/app/jobs/id_check_job.rb - About 1 hr to fix

    Method gettext has a Cognitive Complexity of 11 (exceeds 5 allowed). Consider refactoring.
    Open

      def gettext(document_photo)
        client = Aws::Rekognition::Client.new({
          region: Rails.application.credentials.dig(:aws, :region),
          credentials: Aws::Credentials.new(
            Rails.application.credentials.dig(:aws, :access_key_id),
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb - About 1 hr to fix

    Cognitive Complexity

    Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

    A method's cognitive complexity is based on a few simple rules:

    • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
    • Code is considered more complex for each "break in the linear flow of the code"
    • Code is considered more complex when "flow breaking structures are nested"

    Further reading

    Extra empty line detected at method body end.
    Open

    
      end
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cops checks if empty lines exist around the bodies of methods.

    Example:

    # good
    
    def foo
      # ...
    end
    
    # bad
    
    def bar
    
      # ...
    
    end

    Closing method call brace must be on the line after the last argument when opening brace is on a separate line from the first argument.
    Open

            Rails.application.credentials.dig(:aws, :secret_access_key))
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks that the closing brace in a method call is either on the same line as the last method argument, or a new line.

    When using the symmetrical (default) style:

    If a method call's opening brace is on the same line as the first argument of the call, then the closing brace should be on the same line as the last argument of the call.

    If an method call's opening brace is on the line above the first argument of the call, then the closing brace should be on the line below the last argument of the call.

    When using the new_line style:

    The closing brace of a multi-line method call must be on the line after the last argument of the call.

    When using the same_line style:

    The closing brace of a multi-line method call must be on the same line as the last argument of the call.

    Example:

    # symmetrical: bad
      # new_line: good
      # same_line: bad
      foo(a,
        b
      )
    
      # symmetrical: bad
      # new_line: bad
      # same_line: good
      foo(
        a,
        b)
    
      # symmetrical: good
      # new_line: bad
      # same_line: good
      foo(a,
        b)
    
      # symmetrical: good
      # new_line: good
      # same_line: bad
      foo(
        a,
        b
      )

    Prefer single-quoted strings when you don't need string interpolation or special symbols.
    Open

          if detections.type === "WORD"
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Checks if uses of quotes match the configured preference.

    Example: EnforcedStyle: single_quotes (default)

    # bad
    "No special symbols"
    "No string interpolation"
    "Just text"
    
    # good
    'No special symbols'
    'No string interpolation'
    'Just text'
    "Wait! What's #{this}!"

    Example: EnforcedStyle: double_quotes

    # bad
    'Just some text'
    'No special chars or interpolation'
    
    # good
    "Just some text"
    "No special chars or interpolation"
    "Every string in #{project} uses double_quotes"

    Trailing whitespace detected.
    Open

        
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Avoid comma after the last item of a hash.
    Open

            },
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for trailing comma in array and hash literals.

    Example: EnforcedStyleForMultiline: consistent_comma

    # bad
    a = [1, 2,]
    
    # good
    a = [
      1, 2,
      3,
    ]
    
    # good
    a = [
      1,
      2,
    ]

    Example: EnforcedStyleForMultiline: comma

    # bad
    a = [1, 2,]
    
    # good
    a = [
      1,
      2,
    ]

    Example: EnforcedStyleForMultiline: no_comma (default)

    # bad
    a = [1, 2,]
    
    # good
    a = [
      1,
      2
    ]

    Unused method argument - document_id. If it's necessary, use _ or _document_id as an argument name to indicate that it won't be used. You can also write as perform(*) if you want the method to accept any arguments but don't care about them.
    Open

      def perform(document_id)
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for unused method arguments.

    Example:

    # bad
    
    def some_method(used, unused, _unused_but_allowed)
      puts used
    end

    Example:

    # good
    
    def some_method(used, _unused, _unused_but_allowed)
      puts used
    end

    Avoid the use of the case equality operator ===.
    Open

          if detections.type === "WORD"
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for uses of the case equality operator(===).

    Example:

    # bad
    Array === something
    (1..100) === 7
    /something/ === some_string
    
    # good
    something.is_a?(Array)
    (1..100).include?(7)
    some_string =~ /something/

    Missing top-level class documentation comment.
    Open

    class IdCheckJob < ApplicationJob
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for missing top-level documentation of classes and modules. Classes with no body are exempt from the check and so are namespace modules - modules that have nothing in their bodies except classes, other modules, or constant definitions.

    The documentation requirement is annulled if the class or module has a "#:nodoc:" comment next to it. Likewise, "#:nodoc: all" does the same for all its children.

    Example:

    # bad
    class Person
      # ...
    end
    
    # good
    # Description/Explanation of Person class
    class Person
      # ...
    end

    Avoid comma after the last item of a hash.
    Open

          },
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for trailing comma in array and hash literals.

    Example: EnforcedStyleForMultiline: consistent_comma

    # bad
    a = [1, 2,]
    
    # good
    a = [
      1, 2,
      3,
    ]
    
    # good
    a = [
      1,
      2,
    ]

    Example: EnforcedStyleForMultiline: comma

    # bad
    a = [1, 2,]
    
    # good
    a = [
      1,
      2,
    ]

    Example: EnforcedStyleForMultiline: no_comma (default)

    # bad
    a = [1, 2,]
    
    # good
    a = [
      1,
      2
    ]

    Trailing whitespace detected.
    Open

        
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Prefer single-quoted strings when you don't need string interpolation or special symbols.
    Open

          elsif detections.type === "LINE"
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Checks if uses of quotes match the configured preference.

    Example: EnforcedStyle: single_quotes (default)

    # bad
    "No special symbols"
    "No string interpolation"
    "Just text"
    
    # good
    'No special symbols'
    'No string interpolation'
    'Just text'
    "Wait! What's #{this}!"

    Example: EnforcedStyle: double_quotes

    # bad
    'Just some text'
    'No special chars or interpolation'
    
    # good
    "Just some text"
    "No special chars or interpolation"
    "Every string in #{project} uses double_quotes"

    Useless assignment to variable - user_date. Did you mean user_name?
    Open

        user_date = @content.data_nascimento
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for every useless assignment to local variable in every scope. The basic idea for this cop was from the warning of ruby -cw:

    assigned but unused variable - foo

    Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.

    Example:

    # bad
    
    def some_method
      some_var = 1
      do_something
    end

    Example:

    # good
    
    def some_method
      some_var = 1
      do_something(some_var)
    end

    Prefer single-quoted strings when you don't need string interpolation or special symbols.
    Open

            elsif detections.text.include?("user_date")
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Checks if uses of quotes match the configured preference.

    Example: EnforcedStyle: single_quotes (default)

    # bad
    "No special symbols"
    "No string interpolation"
    "Just text"
    
    # good
    'No special symbols'
    'No string interpolation'
    'Just text'
    "Wait! What's #{this}!"

    Example: EnforcedStyle: double_quotes

    # bad
    'Just some text'
    'No special chars or interpolation'
    
    # good
    "Just some text"
    "No special chars or interpolation"
    "Every string in #{project} uses double_quotes"

    Trailing whitespace detected.
    Open

      
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Useless assignment to variable - user_cpf. Did you mean user_rg?
    Open

        user_cpf = @content.cpf
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for every useless assignment to local variable in every scope. The basic idea for this cop was from the warning of ruby -cw:

    assigned but unused variable - foo

    Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.

    Example:

    # bad
    
    def some_method
      some_var = 1
      do_something
    end

    Example:

    # good
    
    def some_method
      some_var = 1
      do_something(some_var)
    end

    Avoid the use of the case equality operator ===.
    Open

          elsif detections.type === "LINE"
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for uses of the case equality operator(===).

    Example:

    # bad
    Array === something
    (1..100) === 7
    /something/ === some_string
    
    # good
    something.is_a?(Array)
    (1..100).include?(7)
    some_string =~ /something/

    Prefer single-quoted strings when you don't need string interpolation or special symbols.
    Open

            if detections.text.include?("user_name")
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Checks if uses of quotes match the configured preference.

    Example: EnforcedStyle: single_quotes (default)

    # bad
    "No special symbols"
    "No string interpolation"
    "Just text"
    
    # good
    'No special symbols'
    'No string interpolation'
    'Just text'
    "Wait! What's #{this}!"

    Example: EnforcedStyle: double_quotes

    # bad
    'Just some text'
    'No special chars or interpolation'
    
    # good
    "Just some text"
    "No special chars or interpolation"
    "Every string in #{project} uses double_quotes"

    Trailing whitespace detected.
    Open

        user_rg = @content.rg 
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Useless assignment to variable - resp. Did you mean response?
    Open

        resp = JSON.parse(response)
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for every useless assignment to local variable in every scope. The basic idea for this cop was from the warning of ruby -cw:

    assigned but unused variable - foo

    Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.

    Example:

    # bad
    
    def some_method
      some_var = 1
      do_something
    end

    Example:

    # good
    
    def some_method
      some_var = 1
      do_something(some_var)
    end

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

          region: Rails.application.credentials.dig(:aws, :region),
    Severity: Minor
    Found in backend/app/jobs/id_check_job.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
                            }

    Trailing whitespace detected.
    Open

       
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Line is too long. [81/80]
    Open

              bucket: Rails.application.credentials[Rails.env.to_sym][:aws][:bucket],
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Use self-assignment shorthand +=.
    Open

              checked_items = checked_items + 1
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop enforces the use the shorthand for self-assignment.

    Example:

    # bad
    x = x + 1
    
    # good
    x += 1

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

        })
    Severity: Minor
    Found in backend/app/jobs/id_check_job.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
                            }

    Final newline missing.
    Open

    end
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Trailing whitespace detected.
    Open

        
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Use self-assignment shorthand +=.
    Open

              checked_items = checked_items + 1
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop enforces the use the shorthand for self-assignment.

    Example:

    # bad
    x = x + 1
    
    # good
    x += 1

    Use self-assignment shorthand +=.
    Open

              checked_items = checked_items + 1
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop enforces the use the shorthand for self-assignment.

    Example:

    # bad
    x = x + 1
    
    # good
    x += 1

    Missing space after #.
    Open

        #contract => user => content[{"nome":"Marcos", "cpf":" ", ... }]
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks whether comments have a leading space after the # denoting the start of the comment. The leading space is not required for some RDoc special syntax, like #++, #--, #:nodoc, =begin- and =end comments, "shebang" directives, or rackup options.

    Example:

    # bad
    #Some comment
    
    # good
    # Some comment

    Missing space after #.
    Open

        #cpf
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks whether comments have a leading space after the # denoting the start of the comment. The leading space is not required for some RDoc special syntax, like #++, #--, #:nodoc, =begin- and =end comments, "shebang" directives, or rackup options.

    Example:

    # bad
    #Some comment
    
    # good
    # Some comment

    Useless assignment to variable - user_name. Did you mean user_date?
    Open

        user_name = @content.nome
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for every useless assignment to local variable in every scope. The basic idea for this cop was from the warning of ruby -cw:

    assigned but unused variable - foo

    Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.

    Example:

    # bad
    
    def some_method
      some_var = 1
      do_something
    end

    Example:

    # good
    
    def some_method
      some_var = 1
      do_something(some_var)
    end

    Prefer single-quoted strings when you don't need string interpolation or special symbols.
    Open

            if detections.text.include?("user_cpf")
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Checks if uses of quotes match the configured preference.

    Example: EnforcedStyle: single_quotes (default)

    # bad
    "No special symbols"
    "No string interpolation"
    "Just text"
    
    # good
    'No special symbols'
    'No string interpolation'
    'Just text'
    "Wait! What's #{this}!"

    Example: EnforcedStyle: double_quotes

    # bad
    'Just some text'
    'No special chars or interpolation'
    
    # good
    "Just some text"
    "No special chars or interpolation"
    "Every string in #{project} uses double_quotes"

    Trailing whitespace detected.
    Open

      
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Extra empty line detected at method body end.
    Open

    
      end
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cops checks if empty lines exist around the bodies of methods.

    Example:

    # good
    
    def foo
      # ...
    end
    
    # bad
    
    def bar
    
      # ...
    
    end

    Redundant curly braces around a hash parameter.
    Open

        client = Aws::Rekognition::Client.new({
          region: Rails.application.credentials.dig(:aws, :region),
          credentials: Aws::Credentials.new(
            Rails.application.credentials.dig(:aws, :access_key_id),
            Rails.application.credentials.dig(:aws, :secret_access_key))
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for braces around the last parameter in a method call if the last parameter is a hash. It supports braces, no_braces and context_dependent styles.

    Example: EnforcedStyle: braces

    # The `braces` style enforces braces around all method
    # parameters that are hashes.
    
    # bad
    some_method(x, y, a: 1, b: 2)
    
    # good
    some_method(x, y, {a: 1, b: 2})

    Example: EnforcedStyle: no_braces (default)

    # The `no_braces` style checks that the last parameter doesn't
    # have braces around it.
    
    # bad
    some_method(x, y, {a: 1, b: 2})
    
    # good
    some_method(x, y, a: 1, b: 2)

    Example: EnforcedStyle: context_dependent

    # The `context_dependent` style checks that the last parameter
    # doesn't have braces around it, but requires braces if the
    # second to last parameter is also a hash literal.
    
    # bad
    some_method(x, y, {a: 1, b: 2})
    some_method(x, y, {a: 1, b: 2}, a: 1, b: 2)
    
    # good
    some_method(x, y, a: 1, b: 2)
    some_method(x, y, {a: 1, b: 2}, {a: 1, b: 2})

    Trailing whitespace detected.
    Open

      
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Use self-assignment shorthand +=.
    Open

              checked_items = checked_items + 1
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop enforces the use the shorthand for self-assignment.

    Example:

    # bad
    x = x + 1
    
    # good
    x += 1

    Useless assignment to variable - user_rg. Did you mean user_cpf?
    Open

        user_rg = @content.rg 
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    This cop checks for every useless assignment to local variable in every scope. The basic idea for this cop was from the warning of ruby -cw:

    assigned but unused variable - foo

    Currently this cop has advanced logic that detects unreferenced reassignments and properly handles varied cases such as branch, loop, rescue, ensure, etc.

    Example:

    # bad
    
    def some_method
      some_var = 1
      do_something
    end

    Example:

    # good
    
    def some_method
      some_var = 1
      do_something(some_var)
    end

    Prefer single-quoted strings when you don't need string interpolation or special symbols.
    Open

            elsif detections.text.include?("user_rg")
    Severity: Minor
    Found in backend/app/jobs/id_check_job.rb by rubocop

    Checks if uses of quotes match the configured preference.

    Example: EnforcedStyle: single_quotes (default)

    # bad
    "No special symbols"
    "No string interpolation"
    "Just text"
    
    # good
    'No special symbols'
    'No string interpolation'
    'Just text'
    "Wait! What's #{this}!"

    Example: EnforcedStyle: double_quotes

    # bad
    'Just some text'
    'No special chars or interpolation'
    
    # good
    "Just some text"
    "No special chars or interpolation"
    "Every string in #{project} uses double_quotes"

    There are no issues that match your filters.

    Category
    Status