Sha256: 732fc871ca37e36c0ea34d80979f8605201ce4e67bcd4eeffca25b4876bfd108

Contents?: true

Size: 1.71 KB

Versions: 68

Compression:

Stored size: 1.71 KB

Contents

require "helpers/test_helper"

test_name "dsl::helpers::host_helpers #archive_file_from" do

  step "archiveroot parameter defaults to `archive/sut-files`" do
    # Create a remote file to archive
    filepath = default.tmpfile('archive-file-test')
    create_remote_file(default, filepath, 'contents ignored')

    # Prepare cleanup so we don't pollute the local filesystem
    teardown do
      FileUtils.rm_rf('archive') if Dir.exists?('archive')
    end

    # Test that the archiveroot default directory is created
    assert_equal(false, Dir.exists?('archive'))
    assert_equal(false, Dir.exists?('archive/sut-files'))
    archive_file_from(default, filepath)
    assert_equal(true, Dir.exists?('archive/sut-files'))
  end

  step "fails archive_file_from when from_path is non-existant" do
    filepath = "foo-filepath-should-not-exist"
    assert_raises IOError do
      archive_file_from(default, filepath)
    end
  end

  step "archive is copied to local <archiveroot>/<hostname>/<filepath> directory" do
    # Create a remote file to archive
    filepath = default.tmpfile('archive-file-test')
    create_remote_file(default, filepath, 'number of the beast')
    assert_equal(false, Dir.exists?(filepath))

    # Test that the file is copied locally to <archiveroot>/<hostname>/<filepath>
    Dir.mktmpdir do |tmpdir|
      tar_path = File.join(tmpdir, default, filepath + '.tgz')
      archive_file_from(default, filepath, {}, tmpdir, tar_path)
      assert(File.exists?(tar_path))
      expected_path = File.join(tmpdir, default)

      tgz = Zlib::GzipReader.new(File.open(tar_path, 'rb'))
      Minitar.unpack(tgz, expected_path)
      assert_equal('number of the beast', File.read(expected_path + '/' + filepath).strip)
    end
  end
end

Version data entries

68 entries across 68 versions & 1 rubygems

Version Path
beaker-4.38.1 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.38.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.37.2 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.37.1 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.37.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.36.1 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.36.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.35.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.34.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.33.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.32.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.31.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.30.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.29.1 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.29.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.28.1 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.28.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.27.1 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.27.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb
beaker-4.26.0 acceptance/tests/base/dsl/helpers/host_helpers/archive_file_from_test.rb