Sha256: f46724123a42e514b423e4b278a6640e3a891d8a5553a239516b316f0fc1d664

Contents?: true

Size: 1.42 KB

Versions: 4

Compression:

Stored size: 1.42 KB

Contents

silence_warnings do
  require 'dply/deplist'
end

module Dply
  describe Deplist do

    before :all do
      @work_dir = "tmp/deplist"
      FileUtils.rm_rf @work_dir
      FileUtils.mkdir_p @work_dir
    end

    def tmp_dir(&block)
      d = Dir.mktmpdir nil, "#{Dir.pwd}/#{@work_dir}"
      FileUtils.cp "spec/test_data/sample_repo/lib/libacl.so.1", "#{d}/libacl.so.1"
      Dir.chdir(d) { yield d }
    end

    describe "#verify!" do

      it "doesn't throw an error when pkgs.yml has the required pkgs" do
        pkgs_data = { "pkgs" => ["libattr"], "build_pkgs" => [] }
        tmp_dir do
          File.write "pkgs.yml", YAML.dump(pkgs_data)
          system! "tar czf test.tar.gz pkgs.yml libacl.so.1"
          deplist = Deplist.new("test.tar.gz")
          silence_warnings do
            expect { deplist.verify! }.to output(/all dependencies satisfied/).to_stdout_from_any_process
          end
        end
      end

      it "throws an error when pkgs.yml doesn't have the required pkgs" do
        pkgs_data = { "pkgs" => [], "build_pkgs" => [] }
        tmp_dir do
          File.write "pkgs.yml", YAML.dump(pkgs_data)
          system! "tar czf test.tar.gz pkgs.yml libacl.so.1"
          deplist = Deplist.new("test.tar.gz")
          silence_warnings do
            expect { deplist.verify! }.to raise_error(Error).and output(/any of \["libattr"\]/).to_stdout_from_any_process
          end
        end
      end

    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dply-0.3.3 spec/dply/deplist_spec.rb
dply-0.3.2 spec/dply/deplist_spec.rb
dply-0.3.1 spec/dply/deplist_spec.rb
dply-0.3.0 spec/dply/deplist_spec.rb