rambler-digital-solutions/Generamba

View on GitHub
lib/generamba/template/installer/local_installer.rb

Summary

Maintainability
A
0 mins
Test Coverage

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

    def install_template(template_declaration)
      template_name = template_declaration.name
      puts("Installing #{template_name}...")

      local_path = template_declaration.local

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 install_template is too high. [18.49/15]
Open

    def install_template(template_declaration)
      template_name = template_declaration.name
      puts("Installing #{template_name}...")

      local_path = template_declaration.local

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

Line is too long. [138/80]
Open

        error_description = "Cannot find #{template_name + RAMBASPEC_EXTENSION} in the specified directory. Try another path or name.".red

Provide an exception class and message as arguments to raise.
Open

        raise StandardError.new(error_description)

This cop checks the args passed to fail and raise. For exploded style (default), it recommends passing the exception class and message to raise, rather than construct an instance of the error. It will still allow passing just a message, or the construction of an error with more than one argument.

The exploded style works identically, but with the addition that it will also suggest constructing error objects when the exception is passed multiple arguments.

Example: EnforcedStyle: exploded (default)

# bad
raise StandardError.new("message")

# good
raise StandardError, "message"
fail "message"
raise MyCustomError.new(arg1, arg2, arg3)
raise MyKwArgError.new(key1: val1, key2: val2)

Example: EnforcedStyle: compact

# bad
raise StandardError, "message"
raise RuntimeError, arg1, arg2, arg3

# good
raise StandardError.new("message")
raise MyCustomError.new(arg1, arg2, arg3)
fail "message"

Align .join with .new on line 26.
Open

                         .join(template_name)

This cop checks the indentation of the method name part in method calls that span more than one line.

Example: EnforcedStyle: aligned

# bad
while myvariable
.b
  # do something
end

# good
while myvariable
      .b
  # do something
end

# good
Thing.a
     .b
     .c

Example: EnforcedStyle: indented

# good
while myvariable
  .b

  # do something
end

Example: EnforcedStyle: indentedrelativeto_receiver

# good
while myvariable
        .a
        .b

  # do something
end

# good
myvariable = Thing
               .a
               .b
               .c

Final newline missing.
Open

end

Line is too long. [94/80]
Open

      rambaspec_valid = Generamba::RambaspecValidator.validate_spec(template_name, local_path)

Line is too long. [86/80]
Open

        error_description = "#{template_name + RAMBASPEC_EXTENSION} is not valid.".red

Extra empty line detected at module body beginning.
Open


  # Incapsulates the logic of verifying and installing local templates

This cops checks if empty lines around the bodies of modules match the configuration.

Example: EnforcedStyle: empty_lines

# good

module Foo

  def bar
    # ...
  end

end

Example: EnforcedStyle: emptylinesexcept_namespace

# good

module Foo
  module Bar

    # ...

  end
end

Example: EnforcedStyle: emptylinesspecial

# good
module Foo

  def bar; end

end

Example: EnforcedStyle: noemptylines (default)

# good

module Foo
  def bar
    # ...
  end
end

Provide an exception class and message as arguments to raise.
Open

        raise StandardError.new(error_description)

This cop checks the args passed to fail and raise. For exploded style (default), it recommends passing the exception class and message to raise, rather than construct an instance of the error. It will still allow passing just a message, or the construction of an error with more than one argument.

The exploded style works identically, but with the addition that it will also suggest constructing error objects when the exception is passed multiple arguments.

Example: EnforcedStyle: exploded (default)

# bad
raise StandardError.new("message")

# good
raise StandardError, "message"
fail "message"
raise MyCustomError.new(arg1, arg2, arg3)
raise MyKwArgError.new(key1: val1, key2: val2)

Example: EnforcedStyle: compact

# bad
raise StandardError, "message"
raise RuntimeError, arg1, arg2, arg3

# good
raise StandardError.new("message")
raise MyCustomError.new(arg1, arg2, arg3)
fail "message"

Line is too long. [104/80]
Open

      rambaspec_exist = Generamba::RambaspecValidator.validate_spec_existance(template_name, local_path)

There are no issues that match your filters.

Category
Status