Ousret/Picross-L3S6

View on GitHub
class/bmp.class.rb

Summary

Maintainability
A
1 hr
Test Coverage

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

        def read_dib_header(file)
        #méthode qui effectue des tests pour les exceptions :
        #test si l'url est bonne
        #test si l'image est convenable :
        #    l'image doit être codée avec du 24bit par pixel
Severity: Minor
Found in class/bmp.class.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 read_dib_header is too high. [21.84/15]
Open

        def read_dib_header(file)
        #méthode qui effectue des tests pour les exceptions :
        #test si l'url est bonne
        #test si l'image est convenable :
        #    l'image doit être codée avec du 24bit par pixel
Severity: Minor
Found in class/bmp.class.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 read_dib_header has a Cognitive Complexity of 10 (exceeds 5 allowed). Consider refactoring.
Open

        def read_dib_header(file)
        #méthode qui effectue des tests pour les exceptions :
        #test si l'url est bonne
        #test si l'image est convenable :
        #    l'image doit être codée avec du 24bit par pixel
Severity: Minor
Found in class/bmp.class.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

Method read_bmp_header has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
Open

        def read_bmp_header(file)
        #méthode qui vérifie le header du file :
        #permet de vérifier si le header correspond à notre traitement

            header = file.read(14)
Severity: Minor
Found in class/bmp.class.rb - About 25 mins 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

Use 2 (not 1) spaces for indentation.
Open

            @pixelsbin= Array.new(@width) { Array.new(@height) }
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

                fail "Unsupported bitmap: pixel array does not start where expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

        #variables de classes
Severity: Minor
Found in class/bmp.class.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

        #fait trois méthodes pour traiter le header, les             exceptions et les pixels
Severity: Minor
Found in class/bmp.class.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

                #fait le traitement sur les pixel
Severity: Minor
Found in class/bmp.class.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

        #utiliser plus haut
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

            new(bmp_filename)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                read_pixels(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - Une matrice correspondant à une image
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        # * *Sample code* :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - bmp = bmp.getMatrice()
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                0.upto(@width - 1) do |x|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            unless bits_per_pixel == BITS_PER_PIXEL
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            unless compression_method == 0
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "Bitmap compression not supported"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

    end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Line is too long. [153/80]
Open

#*Utiliser une instance de cette classe avec en paramètre entre crochets les coordonnées du pixel pour obtenir sa valeur binaire (1 si noir, 0 si blanc
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

            #vérifie l'allocation pour le tableau
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Incorrect indentation detected (column 2 instead of 3).
Open

        #permet de vérifier si le header correspond à notre traitement
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Missing space after #.
Open

        #Méthode de création d'instance de la classe Crypt.
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        #variables de classes
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - l'url d'une image bmp
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        # * *Return value* :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                #methode qui défini le header ainsi                     que les dimensions de l'image
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "Corrupted bitmap: File size is not as expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Line is too long. [94/80]
Open

#*Créer une instance de cette classe, en donnant en paramètre l'adresse url d'une image bmp,
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

            #vérifie que l'image n'est pas endommagée
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Incorrect indentation detected (column 4 instead of 5).
Open

                #fait le traitement sur les pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Extra empty line detected at block body beginning.
Open


                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

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

Example: EnforcedStyle: empty_lines

# good

foo do |bar|

  # ...

end

Example: EnforcedStyle: noemptylines (default)

# good

foo do |bar|
  # ...
end

Use 2 (not 1) spaces for indentation.
Open

                    data = file.read(3).unpack("H6").first
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

                    #p @pixelsbin[x][y]
Severity: Minor
Found in class/bmp.class.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

Surrounding space missing for operator ?.
Open

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Surrounding space missing for operator :.
Open

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Tab detected.
Open

        #Méthode de création d'instance de la classe Crypt.
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        # * *Return value* :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #fait trois méthodes pour traiter le header, les             exceptions et les pixels
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                #vérifie si toutes l'image correspond
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - nothing
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        def getMatrice()
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        attr_reader :width, :height
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Useless assignment to variable - n_colors. Use _ or _n_colors as a variable name to indicate that it won't be used.
Open

            vres, n_colors, i_colors = header.unpack("Vl<2v2V2l<2V2")
Severity: Minor
Found in class/bmp.class.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

Useless assignment to variable - i_colors. Use _ or _i_colors as a variable name to indicate that it won't be used.
Open

            vres, n_colors, i_colors = header.unpack("Vl<2v2V2l<2V2")
Severity: Minor
Found in class/bmp.class.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 only ascii symbols in comments.
Open

#*Créer une instance de cette classe, en donnant en paramètre l'adresse url d'une image bmp,
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Missing top-level class documentation comment.
Open

    class Reader
Severity: Minor
Found in class/bmp.class.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

Always use raise to signal exceptions.
Open

                fail "Corrupted bitmap: pixel array size isn't as expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

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

            fail "Not a bitmap file!" unless magic_number == "BM"
Severity: Minor
Found in class/bmp.class.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"

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

                fail "Unsupported bitmap: pixel array does not start where expected"
Severity: Minor
Found in class/bmp.class.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"

Missing space after #.
Open

        #méthode qui vérifie le header du file :
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        BITS_PER_PIXEL     = 24 #défini le nombre de bit pour un pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            @pixelsbin= Array.new(@width) { Array.new(@height) }
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #test si l'image est convenable :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #vérifie que l'image n'est pas endommagée
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #vérifie si l'image n'est pas compressée
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

        #   - Une matrice correspondant à une image
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Redundant return detected.
Open

            return @pixelsbin
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for redundant return expressions.

Example:

def test
  return something
end

def test
  one
  two
  three
  return something
end

It should be extended to handle methods whose body is if/else or a case expression with a default branch.

Always use raise to signal exceptions.
Open

                fail "Corrupted bitmap: DIB header does not match expected size"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

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

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.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"

Incorrect indentation detected (column 2 instead of 3).
Open

        #initialisation de la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Use 2 (not 1) spaces for indentation.
Open

                fail "#{bits_per_pixel} bits per pixel bitmaps are not supported"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

            #vérifie le nombre de bits par pixel
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        def initialize(bmp_filename)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        # * *Return value* :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #méthode qui défini la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            compression_method, image_size, hres,
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

        #ouvre une image, lit son header et défini la matrice             binaire
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Always use raise to signal exceptions.
Open

                fail "Bitmap compression not supported"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

Incorrect indentation detected (column 2 instead of 3).
Open

        #fait trois méthodes pour traiter le header, les             exceptions et les pixels
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Use 2 (not 1) spaces for indentation.
Open

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

            @pixels = SparseArray.new
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

            #colonnes par colonne pour traduire l'image en binaire
Severity: Minor
Found in class/bmp.class.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

            #vérifie la taille du fichier
Severity: Minor
Found in class/bmp.class.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

        #test si l'url est bonne
Severity: Minor
Found in class/bmp.class.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

            #vérifie si l'image n'est pas compressée
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        # * *Arguments*    :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - Une nouvelle instance de la classe BMP.
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            @pixels = SparseArray.new
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #utiliser plus haut
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #méthode qui vérifie le header du file :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #    l'image doit être codée avec du 24bit par pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "#{bits_per_pixel} bits per pixel bitmaps are not supported"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Useless assignment to variable - hres. Use _ or _hres as a variable name to indicate that it won't be used.
Open

            compression_method, image_size, hres,
Severity: Minor
Found in class/bmp.class.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 only ascii symbols in comments.
Open

        #Méthode de création d'instance de la classe Crypt.
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #permet de récupérer les dimensions de l'image et donc de la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #méthode qui défini les colonnes d'un fichier
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Missing top-level class documentation comment.
Open

class SparseArray
Severity: Minor
Found in class/bmp.class.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

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

                fail "Corrupted bitmap: DIB header does not match expected size"
Severity: Minor
Found in class/bmp.class.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"

Missing space after #.
Open

            #test si la taille du header convient
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        # * *Arguments*    :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            0.upto(@height-1) do |y|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                    #p @pixelsbin[x][y]
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #colonnes par colonne pour traduire l'image en binaire
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            return if padding_bytes == 0
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            file.pos += padding_bytes
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #permet de vérifier si le header correspond à notre traitement
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            magic_number, file_size, reserved1,
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            reserved2, array_location = header.unpack("A2Vv2V")
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            unless file.size == file_size
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            unless array_location == PIXEL_ARRAY_OFFSET
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "Unsupported bitmap: pixel array does not start where expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        def read_dib_header(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            @width, @height = width, height
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

                #vérifie si toutes l'image correspond
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #Méthode qui retourne une matrice binaire.
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

            #vérifie le nombre de bits par pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Incorrect indentation detected (column 2 instead of 3).
Open

        #    l'image doit être codée avec du 24bit par pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Use 2 (not 1) spaces for indentation.
Open

            new(bmp_filename)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

                #vérifie si toutes l'image correspond
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        # * *Arguments*    :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        # * *Sample code* :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - bmp = BMP::Reader.new("ressources/images/bmp.bmp")
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #permet de récupérer les dimensions de l'image et donc de la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                    @pixels[x][y] = data
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #méthode qui défini les colonnes d'un fichier
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        def read_bmp_header(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #test si la taille du header convient
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #vérifie le nombre de bits par pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use self.creer instead of Reader.creer.
Open

        def Reader.creer(bmp_filename)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of the class/module name instead of self, when defining class/module methods.

Example:

# bad
class SomeClass
  def SomeClass.class_method
    # ...
  end
end

# good
class SomeClass
  def self.class_method
    # ...
  end
end

Omit the parentheses in defs when the method doesn't accept any arguments.
Open

        def getMatrice()
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for parentheses in the definition of a method, that does not take any arguments. Both instance and class/singleton methods are checked.

Example:

# bad
def foo()
  # does a thing
end

# good
def foo
  # does a thing
end

# also good
def foo() does_a_thing end

Example:

# bad
def Baz.foo()
  # does a thing
end

# good
def Baz.foo
  # does a thing
end

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

            File.open(bmp_filename, "rb") do |file|
Severity: Minor
Found in class/bmp.class.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"

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

                    data = file.read(3).unpack("H6").first
Severity: Minor
Found in class/bmp.class.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"

Use 2 (not 1) spaces for indentation.
Open

                fail "Corrupted bitmap: Expected 1 plane, got #{planes}"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

            #parcours le tableau ligne par ligne
Severity: Minor
Found in class/bmp.class.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

Surrounding space missing for operator =.
Open

            @pixelsbin= Array.new(@width) { Array.new(@height) }
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Tab detected.
Open

        PIXEL_ARRAY_OFFSET = 54
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #constructeur
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #parcours le tableau ligne par ligne
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                    data = file.read(3).unpack("H6").first
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #vérifie l'allocation pour le tableau
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "Corrupted bitmap: DIB header does not match expected size"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Useless assignment to variable - vres. Use _ or _vres as a variable name to indicate that it won't be used.
Open

            vres, n_colors, i_colors = header.unpack("Vl<2v2V2l<2V2")
Severity: Minor
Found in class/bmp.class.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 only ascii symbols in comments.
Open

        BITS_PER_PIXEL     = 24 #défini le nombre de bit pour un pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #Méthode de création d'instance de la classe Crypt.
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #    l'image doit être codée avec du 24bit par pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Incorrect indentation detected (column 5 instead of 6).
Open

                    #p @pixelsbin[x][y]
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Use 2 (not 1) spaces for indentation.
Open

                0.upto(@width - 1) do |x|
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

            header = file.read(40)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

        BITS_PER_PIXEL     = 24 #défini le nombre de bit pour un pixel
Severity: Minor
Found in class/bmp.class.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

        #initialisation de la matrice
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        DIB_HEADER_SIZE    = 40 #défini la taille du header
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        private_class_method :new
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #Méthode de création d'instance de la classe Crypt.
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - l'url d'une image bmp
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #test si l'url est bonne
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            #vérifie quelque chose
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            unless image_size + PIXEL_ARRAY_OFFSET == file.size
Severity: Minor
Found in class/bmp.class.rb by rubocop

Useless assignment to variable - reserved1. Use _ or _reserved1 as a variable name to indicate that it won't be used.
Open

            magic_number, file_size, reserved1,
Severity: Minor
Found in class/bmp.class.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 only ascii symbols in comments.
Open

        #la méthode initialize est privatisée pour être renommée
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

                #methode qui défini le header ainsi                     que les dimensions de l'image
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #permet de vérifier si le header correspond à notre traitement
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use 2 (not 1) spaces for indentation.
Open

    class Reader
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

            header = file.read(14)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

                fail "Corrupted bitmap: DIB header does not match expected size"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

                fail "Corrupted bitmap: pixel array size isn't as expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

                #methode qui défini le header ainsi                     que les dimensions de l'image
Severity: Minor
Found in class/bmp.class.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

        #Méthode qui retourne une matrice binaire.
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        #   - bmp = BMP::Reader.new("ressources/images/    bmp.bmp")
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        # * *Sample code* :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #   - bmp = BMP::Reader.new("ressources/images/bmp.bmp")
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #ouvre une image, lit son header et défini la matrice             binaire
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        def read_pixels(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #initialisation de la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        def advance_to_next_row(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            padding_bytes = @width % 4
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Useless assignment to variable - reserved2. Use _ or _reserved2 as a variable name to indicate that it won't be used.
Open

            reserved2, array_location = header.unpack("A2Vv2V")
Severity: Minor
Found in class/bmp.class.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 snake_case for method names.
Open

        def getMatrice()
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop makes sure that all methods use the configured style, snake_case or camelCase, for their names.

Example: EnforcedStyle: snake_case (default)

# bad
def fooBar; end

# good
def foo_bar; end

Example: EnforcedStyle: camelCase

# bad
def foo_bar; end

# good
def fooBar; end

Use only ascii symbols in comments.
Open

            #vérifie quelque chose
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use padding_bytes.zero? instead of padding_bytes == 0.
Open

            return if padding_bytes == 0
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for usage of comparison operators (==, >, <) to test numbers as zero, positive, or negative. These can be replaced by their respective predicate methods. The cop can also be configured to do the reverse.

The cop disregards #nonzero? as it its value is truthy or falsey, but not true and false, and thus not always interchangeable with != 0.

The cop ignores comparisons to global variables, since they are often populated with objects which can be compared with integers, but are not themselves Interger polymorphic.

Example: EnforcedStyle: predicate (default)

# bad

foo == 0
0 > foo
bar.baz > 0

# good

foo.zero?
foo.negative?
bar.baz.positive?

Example: EnforcedStyle: comparison

# bad

foo.zero?
foo.negative?
bar.baz.positive?

# good

foo == 0
0 > foo
bar.baz > 0

Use compression_method.zero? instead of compression_method == 0.
Open

            unless compression_method == 0
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for usage of comparison operators (==, >, <) to test numbers as zero, positive, or negative. These can be replaced by their respective predicate methods. The cop can also be configured to do the reverse.

The cop disregards #nonzero? as it its value is truthy or falsey, but not true and false, and thus not always interchangeable with != 0.

The cop ignores comparisons to global variables, since they are often populated with objects which can be compared with integers, but are not themselves Interger polymorphic.

Example: EnforcedStyle: predicate (default)

# bad

foo == 0
0 > foo
bar.baz > 0

# good

foo.zero?
foo.negative?
bar.baz.positive?

Example: EnforcedStyle: comparison

# bad

foo.zero?
foo.negative?
bar.baz.positive?

# good

foo == 0
0 > foo
bar.baz > 0

Always use raise to signal exceptions.
Open

                fail "Corrupted bitmap: Expected 1 plane, got #{planes}"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

Use empty lines between method definitions.
Open

        def getMatrice()
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks whether method definitions are separated by one empty line.

NumberOfEmptyLines can be and integer (e.g. 1 by default) or an array (e.g. [1, 2]) to specificy a minimum and a maximum of empty lines.

AllowAdjacentOneLineDefs can be used to configure is adjacent one line methods definitions are an offense

Example:

# bad
def a
end
def b
end

Example:

# good
def a
end

def b
end

Use 2 (not 1) spaces for indentation.
Open

                fail "Bitmap compression not supported"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

        DIB_HEADER_SIZE    = 40 #défini la taille du header
Severity: Minor
Found in class/bmp.class.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

        #Méthode de création d'instance de la classe Crypt.
Severity: Minor
Found in class/bmp.class.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

        #permet de récupérer les dimensions de l'image et donc de la matrice
Severity: Minor
Found in class/bmp.class.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

Use empty lines between method definitions.
Open

        def initialize(bmp_filename)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks whether method definitions are separated by one empty line.

NumberOfEmptyLines can be and integer (e.g. 1 by default) or an array (e.g. [1, 2]) to specificy a minimum and a maximum of empty lines.

AllowAdjacentOneLineDefs can be used to configure is adjacent one line methods definitions are an offense

Example:

# bad
def a
end
def b
end

Example:

# good
def a
end

def b
end

Missing space after #.
Open

            #vérifie l'allocation pour le tableau
Severity: Minor
Found in class/bmp.class.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

Use 2 (not 1) spaces for indentation.
Open

                read_bmp_header(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Tab detected.
Open

        def Reader.creer(bmp_filename)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use 2 (not 1) spaces for indentation.
Open

                0.upto(@width-1) do |x|
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Tab detected.
Open

            File.open(bmp_filename, "rb") do |file|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Incorrect indentation detected (column 2 instead of 3).
Open

        #utiliser plus haut
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Use 2 (not 1) spaces for indentation.
Open

            padding_bytes = @width % 4
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Tab detected.
Open

        #Accesseurs
Severity: Minor
Found in class/bmp.class.rb by rubocop

Missing space after #.
Open

#*Créer une instance de cette classe, en donnant en paramètre l'adresse url d'une image bmp,
Severity: Minor
Found in class/bmp.class.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

        #Accesseurs
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

            unless header_size == DIB_HEADER_SIZE
Severity: Minor
Found in class/bmp.class.rb by rubocop

Missing space after #.
Open

        #constructeur
Severity: Minor
Found in class/bmp.class.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

Use 2 (not 1) spaces for indentation.
Open

        PIXEL_ARRAY_OFFSET = 54
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Missing space after #.
Open

        #permet de vérifier si le header correspond à notre traitement
Severity: Minor
Found in class/bmp.class.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

Surrounding space missing for operator -.
Open

                0.upto(@width-1) do |x|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Missing space after #.
Open

        #ouvre une image, lit son header et défini la matrice             binaire
Severity: Minor
Found in class/bmp.class.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

        #méthode qui effectue des tests pour les exceptions :
Severity: Minor
Found in class/bmp.class.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

Always use raise to signal exceptions.
Open

                fail "Corrupted bitmap: File size is not as expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

Missing space after #.
Open

        #méthode qui défini la matrice
Severity: Minor
Found in class/bmp.class.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

Surrounding space missing for operator ==.
Open

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Missing space after #.
Open

#initialise les dimensions de la matrice
Severity: Minor
Found in class/bmp.class.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

        #test si l'image est convenable :
Severity: Minor
Found in class/bmp.class.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

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

            reserved2, array_location = header.unpack("A2Vv2V")
Severity: Minor
Found in class/bmp.class.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"

Missing space after #.
Open

            #vérifie quelque chose
Severity: Minor
Found in class/bmp.class.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

Surrounding space missing for operator -.
Open

            (@height-1).downto(0) do |y|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Tab detected.
Open

                read_bmp_header(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #la méthode initialize est privatisée pour être renommée
Severity: Minor
Found in class/bmp.class.rb by rubocop

Surrounding space missing for operator -.
Open

            0.upto(@height-1) do |y|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks that operators have space around them, except for ** which should not have surrounding space.

Example:

# bad
total = 3*4
"apple"+"juice"
my_number = 38/4
a ** b

# good
total = 3 * 4
"apple" + "juice"
my_number = 38 / 4
a**b

Tab detected.
Open

        #   - Une nouvelle instance de la classe BMP.
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                read_dib_header(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

    class Reader
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                advance_to_next_row(file)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                #fait le traitement sur les pixel
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            return @pixelsbin
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                end
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            header = file.read(40)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            (@height-1).downto(0) do |y|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            header = file.read(14)
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

        #méthode qui effectue des tests pour les exceptions :
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

        DIB_HEADER_SIZE    = 40 #défini la taille du header
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Tab detected.
Open

            #vérifie la taille du fichier
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "Corrupted bitmap: Expected 1 plane, got #{planes}"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Favor modifier unless usage when having a single-line body. Another good alternative is the usage of control flow &&/||.
Open

            unless compression_method == 0
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks for if and unless statements that would fit on one line if written as a modifier if/unless. The maximum line length is configured in the Metrics/LineLength cop.

Example:

# bad
if condition
  do_stuff(bar)
end

unless qux.empty?
  Foo.do_something
end

# good
do_stuff(bar) if condition
Foo.do_something unless qux.empty?

Use only ascii symbols in comments.
Open

        #fait trois méthodes pour traiter le header, les             exceptions et les pixels
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Tab detected.
Open

            header_size, width, height, planes, bits_per_pixel,
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

        #méthode qui vérifie le header du file :
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

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

            fail "Not a bitmap file!" unless magic_number == "BM"
Severity: Minor
Found in class/bmp.class.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"

Use alias instead of alias_method in a class body.
Open

  alias_method :length, :rows
Severity: Minor
Found in class/bmp.class.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 only ascii symbols in comments.
Open

            #vérifie la taille du fichier
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

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

                fail "Corrupted bitmap: File size is not as expected"
Severity: Minor
Found in class/bmp.class.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"

Use only ascii symbols in comments.
Open

        #méthode qui effectue des tests pour les exceptions :
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Favor modifier unless usage when having a single-line body. Another good alternative is the usage of control flow &&/||.
Open

            unless planes == 1
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks for if and unless statements that would fit on one line if written as a modifier if/unless. The maximum line length is configured in the Metrics/LineLength cop.

Example:

# bad
if condition
  do_stuff(bar)
end

unless qux.empty?
  Foo.do_something
end

# good
do_stuff(bar) if condition
Foo.do_something unless qux.empty?

Incorrect indentation detected (column 0 instead of 3).
Open

#initialise les dimensions de la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks the indentation of comments.

Example:

# bad
  # comment here
def method_name
end

  # comment here
a = 'hello'

# yet another comment
  if true
    true
  end

# good
# comment here
def method_name
end

# comment here
a = 'hello'

# yet another comment
if true
  true
end

Use 2 (not 1) spaces for indentation.
Open

            File.open(bmp_filename, "rb") do |file|
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Use 2 (not 1) spaces for indentation.
Open

                fail "Corrupted bitmap: File size is not as expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cops checks for indentation that doesn't use the specified number of spaces.

See also the IndentationConsistency cop which is the companion to this one.

Example:

# bad
class A
 def test
  puts 'hello'
 end
end

# good
class A
  def test
    puts 'hello'
  end
end

Example: IgnoredPatterns: ['^\s*module']

# bad
module A
class B
  def test
  puts 'hello'
  end
end
end

# good
module A
class B
  def test
    puts 'hello'
  end
end
end

Missing space after #.
Open

#*Utiliser une instance de cette classe avec en paramètre entre crochets les coordonnées du pixel pour obtenir sa valeur binaire (1 si noir, 0 si blanc
Severity: Minor
Found in class/bmp.class.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

        #la méthode initialize est privatisée pour être renommée
Severity: Minor
Found in class/bmp.class.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

        #méthode qui défini les colonnes d'un fichier
Severity: Minor
Found in class/bmp.class.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

            #vérifie que l'image n'est pas endommagée
Severity: Minor
Found in class/bmp.class.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

Tab detected.
Open

        #Méthode qui retourne une matrice binaire.
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                0.upto(@width-1) do |x|
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            fail "Not a bitmap file!" unless magic_number == "BM"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            vres, n_colors, i_colors = header.unpack("Vl<2v2V2l<2V2")
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

            unless planes == 1
Severity: Minor
Found in class/bmp.class.rb by rubocop

Tab detected.
Open

                fail "Corrupted bitmap: pixel array size isn't as expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use only ascii symbols in comments.
Open

#*Utiliser une instance de cette classe avec en paramètre entre crochets les coordonnées du pixel pour obtenir sa valeur binaire (1 si noir, 0 si blanc
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

        #méthode qui défini la matrice
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use only ascii symbols in comments.
Open

            #vérifie si l'image n'est pas compressée
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for non-ascii (non-English) characters in comments. You could set an array of allowed non-ascii chars in AllowedChars attribute (empty by default).

Example:

# bad
# Translates from English to 日本語。

# good
# Translates from English to Japanese

Use a guard clause instead of wrapping the code inside a conditional expression.
Open

            unless array_location == PIXEL_ARRAY_OFFSET
Severity: Minor
Found in class/bmp.class.rb by rubocop

Use a guard clause instead of wrapping the code inside a conditional expression

Example:

# bad
def test
  if something
    work
  end
end

# good
def test
  return unless something
  work
end

# also good
def test
  work if something
end

# bad
if something
  raise 'exception'
else
  ok
end

# good
raise 'exception' if something
ok

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

                fail "Bitmap compression not supported"
Severity: Minor
Found in class/bmp.class.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"

Omit parentheses for ternary conditions.
Open

                    @pixelsbin[x][y] = ((@pixels[y][x]=="ffffff")?0:1)
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for the presence of parentheses around ternary conditions. It is configurable to enforce inclusion or omission of parentheses using EnforcedStyle. Omission is only enforced when removing the parentheses won't cause a different behavior.

Example: EnforcedStyle: requirenoparentheses (default)

# bad
foo = (bar?) ? a : b
foo = (bar.baz?) ? a : b
foo = (bar && baz) ? a : b

# good
foo = bar? ? a : b
foo = bar.baz? ? a : b
foo = bar && baz ? a : b

Example: EnforcedStyle: require_parentheses

# bad
foo = bar? ? a : b
foo = bar.baz? ? a : b
foo = bar && baz ? a : b

# good
foo = (bar?) ? a : b
foo = (bar.baz?) ? a : b
foo = (bar && baz) ? a : b

Example: EnforcedStyle: requireparentheseswhen_complex

# bad
foo = (bar?) ? a : b
foo = (bar.baz?) ? a : b
foo = bar && baz ? a : b

# good
foo = bar? ? a : b
foo = bar.baz? ? a : b
foo = (bar && baz) ? a : b

Do not use parallel assignment.
Open

            @width, @height = width, height
Severity: Minor
Found in class/bmp.class.rb by rubocop

Checks for simple usages of parallel assignment. This will only complain when the number of variables being assigned matched the number of assigning variables.

Example:

# bad
a, b, c = 1, 2, 3
a, b, c = [1, 2, 3]

# good
one, two = *foo
a, b = foo()
a, b = b, a

a = 1
b = 2
c = 3

Always use raise to signal exceptions.
Open

                fail "#{bits_per_pixel} bits per pixel bitmaps are not supported"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

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

            vres, n_colors, i_colors = header.unpack("Vl<2v2V2l<2V2")
Severity: Minor
Found in class/bmp.class.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"

Always use raise to signal exceptions.
Open

            fail "Not a bitmap file!" unless magic_number == "BM"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

Always use raise to signal exceptions.
Open

                fail "Unsupported bitmap: pixel array does not start where expected"
Severity: Minor
Found in class/bmp.class.rb by rubocop

This cop checks for uses of fail and raise.

Example: EnforcedStyle: only_raise (default)

# The `only_raise` style enforces the sole use of `raise`.
# bad
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

# good
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

Example: EnforcedStyle: only_fail

# The `only_fail` style enforces the sole use of `fail`.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  raise
rescue Exception
  # handle it
end

Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  # handle it
end

Kernel.fail

Example: EnforcedStyle: semantic

# The `semantic` style enforces the use of `fail` to signal an
# exception, then will use `raise` to trigger an offense after
# it has been rescued.
# bad
begin
  raise
rescue Exception
  # handle it
end

def watch_out
  # Error thrown
rescue Exception
  fail
end

Kernel.fail
Kernel.raise

# good
begin
  fail
rescue Exception
  # handle it
end

def watch_out
  fail
rescue Exception
  raise 'Preferably with descriptive message'
end

explicit_receiver.fail
explicit_receiver.raise

There are no issues that match your filters.

Category
Status