Sha256: 81b4b7859b18633a9c7fd202c3f84b3813f437867d2463f276b60e04b4be2b1e
Contents?: true
Size: 1.29 KB
Versions: 9
Compression:
Stored size: 1.29 KB
Contents
# frozen_string_literal: true require 'avm/apps/sources/configuration' require 'avm/result' require 'eac_ruby_utils/fs/temp' module Avm module Git module Issue class Complete module Test def test_result test_command = configuration.if_present(&:any_test_command) return ::Avm::Result.success('unconfigured') if test_command.blank? infom "Running test command \"#{test_command}\"..." result = test_command.execute test_result_log(result) if result.fetch(:exit_code).zero? ::Avm::Result.success('yes') else ::Avm::Result.error('no') end end private def test_result_log(result) stdout_file = ::EacRubyUtils::Fs::Temp.file stderr_file = ::EacRubyUtils::Fs::Temp.file stdout_file.write(result.fetch(:stdout)) stderr_file.write(result.fetch(:stderr)) infov ' * Exit code', result.fetch(:exit_code) infov ' * STDOUT', stdout_file.to_path infov ' * STDERR', stderr_file.to_path end def configuration_uncached ::Avm::Apps::Sources::Configuration.find_by_path(@git) end end end end end end
Version data entries
9 entries across 9 versions & 2 rubygems