Sha256: d246321514738dd8d7e0b581723ecab91e7fb14ac9312c80233bd71f22aef445

Contents?: true

Size: 1.22 KB

Versions: 42

Compression:

Stored size: 1.22 KB

Contents

require File.dirname(__FILE__) + '/../../spec_helper'

describe Sprinkle::Installers::FreebsdPkg do

  before do
    @package = mock(Sprinkle::Package, :name => 'package')
  end

  def create_pkg(pkgs, &block)
    Sprinkle::Installers::FreebsdPkg.new(@package, pkgs, &block)
  end

  describe 'when created' do

    it 'should accept a single package to install' do
      @installer = create_pkg 'ruby'
      @installer.packages.should == [ 'ruby' ]
    end

    it 'should accept an array of packages to install' do
      @installer = create_pkg %w( gcc gdb g++ )
      @installer.packages.should == ['gcc', 'gdb', 'g++']
    end

  end

  describe 'during installation' do

    before do
      @installer = create_pkg 'ruby' do
        pre :install, 'op1'
        post :install, 'op2'
      end
      @install_commands = @installer.send :install_commands
    end

    it 'should invoke the freebsd_pkg installer for all specified packages' do
      @install_commands.should =~ /pkg_add -r ruby/
    end

    it 'should automatically insert pre/post commands for the specified package' do
      @installer.send(:install_sequence).should == [ 'op1', 'pkg_add -r ruby', 'op2' ]
    end

    it 'should install a specific version if defined'

  end

end

Version data entries

42 entries across 42 versions & 10 rubygems

Version Path
lachlan-sprinkle-0.0.6 spec/sprinkle/installers/freebsd_pkg_spec.rb
lachlan-sprinkle-0.0.7 spec/sprinkle/installers/freebsd_pkg_spec.rb
lachlan-sprinkle-0.0.8 spec/sprinkle/installers/freebsd_pkg_spec.rb
lachlan-sprinkle-0.0.9 spec/sprinkle/installers/freebsd_pkg_spec.rb
mdwan-sprinkle-0.2.2 spec/sprinkle/installers/freebsd_pkg_spec.rb
mdwan-sprinkle-0.2.3 spec/sprinkle/installers/freebsd_pkg_spec.rb
trevorturk-sprinkle-0.2.2 spec/sprinkle/installers/freebsd_pkg_spec.rb
trevorturk-sprinkle-0.2.6 spec/sprinkle/installers/freebsd_pkg_spec.rb
dhill-sprinkle-0.3.3.1 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.3.3 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.3.2 spec/sprinkle/installers/freebsd_pkg_spec.rb
powcloud-sprinkle-0.3.4 spec/sprinkle/installers/freebsd_pkg_spec.rb
powcloud-sprinkle-0.3.0 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.3.1 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.3.0 spec/sprinkle/installers/freebsd_pkg_spec.rb
maxmpz-sprinkle-0.2.6.1 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.2.6 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.2.3 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.2.4 spec/sprinkle/installers/freebsd_pkg_spec.rb
sprinkle-0.2.5 spec/sprinkle/installers/freebsd_pkg_spec.rb