Sha256: 01c60febe6a38fc260317f7a8a5e9fe730ec73552e0214276601d56bc39ed2fb

Contents?: true

Size: 1.64 KB

Versions: 6

Compression:

Stored size: 1.64 KB

Contents

module Saddler
  module Reporter
    module Github
      module Helper
        def concat_body(data)
          buffer = []
          files = data['checkstyle']['file'] ||= []
          files = [files] if files.is_a?(Hash)
          files.each do |file|
            errors = file['error'] ||= []
            errors = [file['error']] if errors.is_a?(Hash)
            errors.each do |error|
              severity = error['@severity'] && error['@severity'].upcase
              message = error['@message']
              buffer << [severity, message].compact.join(': ')
            end
          end
          buffer.join("\n")
        end

        def build_comments_with_patches(data, patches)
          comments = []
          files = data['checkstyle']['file'] ||= []
          files = [files] if files.is_a?(Hash)
          files.each do |file|
            errors = file['error'] ||= []
            errors = [file['error']] if errors.is_a?(Hash)
            file_name = file['@name'] ||= ''
            patch = patches.find_patch_by_file(file_relative_path_string(file_name))
            next unless patch

            errors.each do |error|
              line_no = error['@line'] && error['@line'].to_i
              next unless patch.changed_line_numbers.include?(line_no)

              severity = error['@severity'] && error['@severity'].upcase
              message = error['@message']
              position = patch.find_patch_position_by_line_number(line_no)

              comments << Comment.new(patch.secure_hash, [severity, message].compact.join(': '), patch.file, position)
            end
          end
          comments
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
saddler-reporter-github-0.1.5 lib/saddler/reporter/github/helper.rb
saddler-reporter-github-0.1.4 lib/saddler/reporter/github/helper.rb
saddler-reporter-github-0.1.3 lib/saddler/reporter/github/helper.rb
saddler-reporter-github-0.1.2 lib/saddler/reporter/github/helper.rb
saddler-reporter-github-0.1.1 lib/saddler/reporter/github/helper.rb
saddler-reporter-github-0.1.0 lib/saddler/reporter/github/helper.rb