lib/pronto/runners.rb in pronto-0.5.3 vs lib/pronto/runners.rb in pronto-0.6.0
- old
+ new
@@ -7,12 +7,18 @@
def run(patches)
patches = reject_excluded(patches)
return [] unless patches.any?
- @runners.map { |runner| runner.new.run(patches, patches.commit) }
- .flatten.compact
+ result = []
+ @runners.each do |runner|
+ next if exceeds_max?(result)
+ @config.logger.log("Running #{runner}")
+ result += runner.new(patches, patches.commit).run.flatten.compact
+ end
+ result = result.take(@config.max_warnings) if @config.max_warnings
+ result
end
private
def reject_excluded(patches)
@@ -21,8 +27,12 @@
patches
end
def excluded?(patch)
@config.excluded_files.include?(patch.new_file_full_path.to_s)
+ end
+
+ def exceeds_max?(warnings)
+ @config.max_warnings && warnings.count >= @config.max_warnings
end
end
end