Sha256: 7a22b0230a510242d43387e8b64a0d889c209a29b9a33eaa3428a069a9f65480

Contents?: true

Size: 1.13 KB

Versions: 51

Compression:

Stored size: 1.13 KB

Contents

module Windows::File
  include Beaker::CommandFactory

  def tmpfile(name)
    execute("cygpath -m $(mktemp -t #{name}.XXXXXX)")
  end

  def tmpdir(name)
    execute("cygpath -m $(mktemp -td #{name}.XXXXXX)")
  end

  def system_temp_path
    # under CYGWIN %TEMP% may not be set
    tmp_path = execute('ECHO %SYSTEMROOT%', :cmdexe => true)
    tmp_path.gsub(/\n/, '') + '\\TEMP'
  end

  # Updates a file path for use with SCP, depending on the SSH Server
  #
  # @note This will fail with an SSH server that is not OpenSSL or BitVise.
  #
  # @param [String] path Path to be changed
  #
  # @return [String] Path updated for use by SCP
  def scp_path(path)
    case determine_ssh_server
    when :bitvise
      # swap out separators
      network_path = path.gsub('\\', scp_separator)
    when :openssh
      path
    else
      raise ArgumentError("windows/file.rb:scp_path: ssh server not recognized: '#{determine_ssh_server}'")
    end
  end

  def path_split(paths)
    paths.split(';')
  end

  def file_exist?(path)
    result = exec(Beaker::Command.new("test -e '#{path}'"), :acceptable_exit_codes => [0, 1])
    result.exit_code == 0
  end
end

Version data entries

51 entries across 51 versions & 1 rubygems

Version Path
beaker-3.37.0 lib/beaker/host/windows/file.rb
beaker-3.36.0 lib/beaker/host/windows/file.rb
beaker-3.35.0 lib/beaker/host/windows/file.rb
beaker-3.34.0 lib/beaker/host/windows/file.rb
beaker-3.33.0 lib/beaker/host/windows/file.rb
beaker-3.32.0 lib/beaker/host/windows/file.rb
beaker-3.31.0 lib/beaker/host/windows/file.rb
beaker-3.30.0 lib/beaker/host/windows/file.rb
beaker-3.29.0 lib/beaker/host/windows/file.rb
beaker-3.28.0 lib/beaker/host/windows/file.rb
beaker-3.27.0 lib/beaker/host/windows/file.rb
beaker-3.26.0 lib/beaker/host/windows/file.rb
beaker-3.25.0 lib/beaker/host/windows/file.rb
beaker-3.24.0 lib/beaker/host/windows/file.rb
beaker-3.23.0 lib/beaker/host/windows/file.rb
beaker-3.22.0 lib/beaker/host/windows/file.rb
beaker-3.21.1 lib/beaker/host/windows/file.rb
beaker-3.21.0 lib/beaker/host/windows/file.rb
beaker-3.20.0 lib/beaker/host/windows/file.rb
beaker-3.19.0 lib/beaker/host/windows/file.rb