Sha256: 53f357b016789e0e18e48e7f6ce2382fe6a606fe0b7a7885b7fd0b96ba158168
Contents?: true
Size: 1.13 KB
Versions: 7
Compression:
Stored size: 1.13 KB
Contents
module Pronto class Runner include Plugin def initialize(patches, commit = nil) @patches = patches @commit = commit @config = Config.new end def self.runners repository end def self.title @runner_name ||= begin source_path, _line = instance_method(:run).source_location file_name, _extension = File.basename(source_path).split('.') file_name end end def ruby_patches return [] unless @patches @ruby_patches ||= @patches.select { |patch| patch.additions > 0 } .select { |patch| ruby_file?(patch.new_file_full_path) } end def ruby_file?(path) rb_file?(path) || rake_file?(path) || ruby_executable?(path) end def repo_path @patches.first.repo.path end private def rb_file?(path) File.extname(path) == '.rb' end def rake_file?(path) File.extname(path) == '.rake' end def ruby_executable?(path) return false if File.directory?(path) line = File.open(path, &:readline) line =~ /#!.*ruby/ rescue ArgumentError, EOFError false end end end
Version data entries
7 entries across 7 versions & 1 rubygems