lib/git_commands/prompt.rb in git_commands-2.1.0 vs lib/git_commands/prompt.rb in git_commands-3.0.1

- old
+ new

@@ -1,43 +1,48 @@ -require 'git_commands/colorize' +require "git_commands/colorize" module GitCommands + using Colorize module Prompt VALID_ANSWERS = %w[Y y N n] class AbortError < StandardError; end - def warning(message, char = '*') + def out + @out ||= STDOUT + end + + def warning(message, char = "*") spacer = (char * (message.size + 4)).grey - puts "\n", spacer, "#{char} #{message.to_s.yellow} #{char}", spacer, "\n" + out.puts "\n", spacer, "#{char} #{message.to_s.yellow} #{char}", spacer, "\n" end def error(message, error = StandardError) - puts message.to_s.red + out.puts message.to_s.red yield if block_given? fail error, message end def success(message) - puts message.to_s.green + out.puts message.to_s.green end def confirm(message) res = begin ask "#{message} (Y/N)?" end until VALID_ANSWERS.include?(res) case res when /y/i yield else - error('Aborted operation!', AbortError) + error("Aborted operation!", AbortError) end end private def ask(message) - print message.cyan + out.print message.cyan input end def input STDIN.gets.chomp