Sha256: c30919c97cc9a913995a11d90c73fbb62ce6933551684e95cbf5cda70d131ba6

Contents?: true

Size: 962 Bytes

Versions: 12

Compression:

Stored size: 962 Bytes

Contents

# encoding: utf-8
module RailsBestPractices
  module Lexicals
    # Keep lines fewer than 80 characters.
    class LongLineCheck < Core::Check
      interesting_files ALL_FILES

      def initialize(options = {})
        super(options)
        @max_line_length = options['max_line_length'] || 80
      end

      # check if a line is over 80 characters
      #
      # @param [String] filename name of the file
      # @param [String] content content of the file
      def check(filename, content)
        # Only check ruby files
        if /\.rb$/ =~ filename
          line_no = 0
          content.each_line do |line|
            line_no += 1
            actual_line_length = line.sub(/\s+$/, '').length
            if actual_line_length > @max_line_length
              add_error("line is longer than #{@max_line_length} characters (#{actual_line_length} characters)", filename, line_no)
            end
          end
        end
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
rails_best_practices-1.19.1 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.19.0 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.18.1 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.18.0 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.17.0 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.16.0 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.15.7 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.15.6 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.15.4 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.15.3 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.15.2 lib/rails_best_practices/lexicals/long_line_check.rb
rails_best_practices-1.15.1 lib/rails_best_practices/lexicals/long_line_check.rb