Sha256: 103c4af2b0c7391b85c6753df0a090f0aea8cf6b28ca17d16ec3d29672cfd712

Contents?: true

Size: 1011 Bytes

Versions: 12

Compression:

Stored size: 1011 Bytes

Contents

require File.expand_path('../gem_package_tar_test_case', __FILE__)
require 'rubygems/package'

class TestGemPackageTarReader < TarTestCase

  def test_each_entry
    tar = tar_dir_header "foo", "bar", 0
    tar << tar_file_header("bar", "baz", 0, 0)

    io = TempIO.new tar

    entries = 0

    Gem::Package::TarReader.new io do |tar_reader|
      tar_reader.each_entry do |entry|
        assert_kind_of Gem::Package::TarReader::Entry, entry

        entries += 1
      end
    end

    assert_equal 2, entries
  end

  def test_rewind
    content = ('a'..'z').to_a.join(" ")

    str = tar_file_header("lib/foo", "", 010644, content.size) + content +
            "\0" * (512 - content.size)
    str << "\0" * 1024

    Gem::Package::TarReader.new(TempIO.new(str)) do |tar_reader|
      3.times do
        tar_reader.rewind
        i = 0
        tar_reader.each_entry do |entry|
          assert_equal(content, entry.read)
          i += 1
        end
        assert_equal(1, i)
      end
    end
  end

end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
slimgems-1.3.9.5 test/test_gem_package_tar_reader.rb
slimgems-1.3.9.4 test/test_gem_package_tar_reader.rb
slimgems-1.3.9.3 test/test_gem_package_tar_reader.rb
slimgems-1.3.9.2 test/test_gem_package_tar_reader.rb
slimgems-1.3.9.1 test/test_gem_package_tar_reader.rb
slimgems-1.3.9 test/test_gem_package_tar_reader.rb
slimgems-1.3.8 test/test_gem_package_tar_reader.rb
rubygems-update-1.4.2 test/test_gem_package_tar_reader.rb
rubygems-update-1.4.1 test/test_gem_package_tar_reader.rb
rubygems-update-1.4.0 test/test_gem_package_tar_reader.rb
rubygems-update-1.3.7 test/test_gem_package_tar_reader.rb
rubygems-update-1.3.6 test/test_gem_package_tar_reader.rb