class PreCommit::Checks::Json
Public Class Methods
description()
click to toggle source
# File lib/plugins/pre_commit/checks/json.rb, line 23 def self.description 'Runs json to detect errors.' end
Public Instance Methods
call(staged_files)
click to toggle source
# File lib/plugins/pre_commit/checks/json.rb, line 7 def call(staged_files) staged_files = staged_files.grep(/\.json$/) return if staged_files.empty? errors = staged_files.map {|file| load_file(file)}.compact errors.join("\n") + "\n" unless errors.empty? end
load_file(file)
click to toggle source
# File lib/plugins/pre_commit/checks/json.rb, line 16 def load_file(file) File.open(file) {|io| JSON.load(io)} nil rescue JSON::ParserError => e "#{e.message} parsing #{file}" end