class ProcessCodeService
Public Class Methods
new(path, pull_branch, file_data, local = false)
click to toggle source
path is link to pr or treated as local path if local = true
# File lib/process_code_service.rb, line 7 def initialize(path, pull_branch, file_data, local = false) @path = path @pull_branch = pull_branch @file_data = file_data @local = local end
Public Instance Methods
call()
click to toggle source
# File lib/process_code_service.rb, line 14 def call process_code_file [@params1, @params2] end
Private Instance Methods
changed?()
click to toggle source
# File lib/process_code_service.rb, line 79 def changed? @file_data[:status] == :changed end
code_master_branch_path()
click to toggle source
# File lib/process_code_service.rb, line 48 def code_master_branch_path code_path = extract_code_path(:master) return "#{@path}/#{repo_full_name}-master/#{code_path}" if @local return "https://raw.githubusercontent.com/#{repo_full_name}/master/#{code_path}" end
code_pull_request_branch_path()
click to toggle source
# File lib/process_code_service.rb, line 54 def code_pull_request_branch_path code_path = extract_code_path(:pull) return "#{@path}/#{repo_full_name}-#{@pull_branch}/#{code_path}" if @local return "https://raw.githubusercontent.com/#{repo_full_name}/#{@pull_branch}/#{code_path}" end
deleted?()
click to toggle source
# File lib/process_code_service.rb, line 71 def deleted? @file_data[:status] == :deleted end
download_master_code()
click to toggle source
# File lib/process_code_service.rb, line 27 def download_master_code return unless [:deleted, :changed, :renamed].include?(@file_data[:status]) code_master = get_code(code_master_branch_path) # code_master = DownloadService.call(code_master_branch_path) code_hash = Dudes::Calculator.new(code_master).call @params1 = code_hash.first unless code_hash.empty? end
download_pull_request_code()
click to toggle source
# File lib/process_code_service.rb, line 35 def download_pull_request_code return unless [:new, :changed, :renamed].include?(@file_data[:status]) code_pull_request = get_code(code_pull_request_branch_path) # code_pull_request = DownloadService.call(code_pull_request_branch_path) code_hash = Dudes::Calculator.new(code_pull_request).call @params2 = code_hash.first unless code_hash.empty? end
extract_code_path(branch)
click to toggle source
# File lib/process_code_service.rb, line 65 def extract_code_path(branch) return @file_data[:old_name] if deleted? return @file_data[:new_name] if new? || changed? return renamed?(branch) end
get_code(path)
click to toggle source
# File lib/process_code_service.rb, line 43 def get_code(path) return open(path).read if @local return DownloadService.call(path) end
new?()
click to toggle source
# File lib/process_code_service.rb, line 75 def new? @file_data[:status] == :new end
process_code_file()
click to toggle source
# File lib/process_code_service.rb, line 22 def process_code_file download_master_code download_pull_request_code end
renamed?(branch)
click to toggle source
# File lib/process_code_service.rb, line 83 def renamed?(branch) return @file_data[:old_name] if branch == :master return @file_data[:new_name] if branch == :pull end
repo_full_name()
click to toggle source
# File lib/process_code_service.rb, line 60 def repo_full_name return @path.split('/').last if @local return @path.split('/')[-4, 2].join('/') end