Sha256: 9b8afe019d23716724489eb6fdbc5bf31a718d42bb465e129adc0c222d589274

Contents?: true

Size: 982 Bytes

Versions: 2

Compression:

Stored size: 982 Bytes

Contents

require 'spec_helper'
require 'fileutils'
require 'furoshiki/zip'

describe Furoshiki::Zip::Directory do
  subject { Furoshiki::Zip::Directory.new input_dir, output_file }

  context "output file" do
    include_context 'zip'

    before :all do
      zip_directory = Furoshiki::Zip::Directory.new input_dir, @output_file
      zip_directory.write
      @zip = Zip::ZipFile.open @output_file
    end

    it "exists" do
      @output_file.should exist
    end

    it "includes input directory without parents" do
      @zip.entries.map(&:name).should include(add_trailing_slash input_dir.basename)
    end

    relative_input_paths(input_dir.parent).each do |path|
      it "includes all children of input directory" do
        @zip.entries.map(&:name).should include(path)
      end
    end

    it "doesn't include extra files" do
      number_of_files = Dir.glob("#{input_dir}/**/*").push(input_dir).length
      @zip.entries.length.should eq(number_of_files)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
furoshiki-0.1.2 spec/zip/directory_spec.rb
furoshiki-0.1.1 spec/zip/directory_spec.rb