Sha256: c77ba96ed19e39aed73a585f9a690e4f8e6e827dd5a874cd25a06b964c14044f
Contents?: true
Size: 1.39 KB
Versions: 6
Compression:
Stored size: 1.39 KB
Contents
require 'xcov-core/version' require 'xcov' require 'json' require 'fileutils' require 'tempfile' require 'fastlane_core' module Xcov module Core ENV['XCOV_CORE_LIBRARY_PATH'] = File.expand_path("../xcov-core/bin", __FILE__) + "/xcov-core" class Parser def self.parse(file, output_directory) tmp_dir = File.join(output_directory, 'tmp') FileUtils.mkdir_p(tmp_dir) unless File.directory?(tmp_dir) report_output = Tempfile.new("report.json", tmp_dir) command = "#{ENV['XCOV_CORE_LIBRARY_PATH'].shellescape} -s #{file.shellescape} -o #{report_output.path.shellescape} --include-lines-info" description = [{ prefix: "Parsing .xccoverage file: " }] execute_command(command, description) output_file = File.read(report_output.path) JSON.parse(output_file) end def self.execute_command(command, description) FastlaneCore::CommandExecutor.execute( command: command, print_all: true, print_command: true, prefix: description, loading: "Loading...", error: proc do |error_output| begin Xcov::ErrorHandler.handle_error(error_output) rescue => ex Xcov::SlackPoster.new.run({ build_errors: 1 }) raise ex end end ) end end end end
Version data entries
6 entries across 6 versions & 1 rubygems
Version | Path |
---|---|
xcov-1.3.5 | lib/xcov-core.rb |
xcov-1.3.4 | lib/xcov-core.rb |
xcov-1.3.3 | lib/xcov-core.rb |
xcov-1.3.2 | lib/xcov-core.rb |
xcov-1.3.1 | lib/xcov-core.rb |
xcov-1.3.0 | lib/xcov-core.rb |