Sha256: 3d0d96d3dc0be278ab226ae646c88986c74362b9ff3e942e91eeebcd59d46a86

Contents?: true

Size: 801 Bytes

Versions: 7

Compression:

Stored size: 801 Bytes

Contents

require 'aruba/api' unless defined? Aruba::Api

module ::Cuken
  module Api
    module Common

      def with_args(*args)
        backup = ARGV.dup
        begin
          ARGV.replace(args)
          yield
        rescue Exception => e
          puts e.backtrace.join("\n") if $!.respond_to?(:status) && $!.status && $!.status > 0
        ensure
          ARGV.replace(backup)
        end
      end

    end
  end
end

#
# We strip ANSI code from output strings.
#
module ::Aruba
  class Process
    def remove_ansi_codes(str)
      str.gsub(/\e\[(\d+)m/, '')
    end
    def stdout
      wait_for_io do
        @out.rewind
        remove_ansi_codes(@out.read)
      end
    end
    def stderr
      wait_for_io do
        @err.rewind
        remove_ansi_codes(@err.read)
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
cuken-0.1.13 lib/cuken/api/common.rb
cuken-0.1.12 lib/cuken/api/common.rb
cuken-0.1.11 lib/cuken/api/common.rb
cuken-0.1.10 lib/cuken/api/common.rb
cuken-0.1.9 lib/cuken/api/common.rb
cuken-0.1.8 lib/cuken/api/common.rb
cuken-0.1.7 lib/cuken/api/common.rb