spec/beaker/host/unix_spec.rb in beaker-4.42.0 vs spec/beaker/host/unix_spec.rb in beaker-5.0.0
- old
+ new
@@ -1,245 +1,49 @@
require 'spec_helper'
module Unix
describe Host do
- let( :options ) { @options ? @options : {} }
- let( :platform ) {
+ let(:options) { @options ? @options : {} }
+ let(:platform) do
if @platform
- { :platform => Beaker::Platform.new( @platform) }
+ { :platform => Beaker::Platform.new(@platform) }
else
- { :platform => Beaker::Platform.new( 'el-vers-arch-extra' ) }
+ { :platform => Beaker::Platform.new('el-vers-arch-extra') }
end
- }
- let( :host ) { make_host( 'name', options.merge(platform) ) }
- let( :opts ) { { :download_url => 'download_url' } }
-
-
- describe '#solaris_puppet_agent_dev_package_info' do
- it 'raises an error if puppet_collection is not passed' do
- expect {
- host.solaris_puppet_agent_dev_package_info
- }.to raise_error( ArgumentError, /^Must\ provide\ puppet_collection/ )
- end
-
- it 'raises an error if puppet_agent_version is not passed' do
- expect {
- host.solaris_puppet_agent_dev_package_info( 'collection' )
- }.to raise_error( ArgumentError, /^Must\ provide\ puppet_agent_version/ )
- end
-
- it 'raises an error if the download URL is not passed' do
- expect {
- host.solaris_puppet_agent_dev_package_info( 'collection', 'version' )
- }.to raise_error( ArgumentError, /^Must\ provide\ opts\[\:download_url\]/ )
- end
-
- it 'raises an error if called on a non-solaris platform' do
- @platform = 'ubuntu-14.04-x86_64'
- opts = { :download_url => 'download_url' }
- expect {
- host.solaris_puppet_agent_dev_package_info( 'collection', 'version', opts )
- }.to raise_error( ArgumentError, /^Incorrect\ platform \'ubuntu\'/ )
- end
-
- it 'sets release_path_end correctly' do
- @platform = 'solaris-10-arch'
- allow( host ).to receive( :link_exists? ).and_return(true)
- release_path_end, _ = host.solaris_puppet_agent_dev_package_info(
- 'pa_collection4', 'pa_version', opts )
- expect( release_path_end ).to be === "solaris/10/pa_collection4"
- end
-
- it 'sets the arch correctly for x86_64 platforms' do
- @platform = 'solaris-10-x86_64'
- allow( host ).to receive( :link_exists? ).and_return(true)
- _, release_file = host.solaris_puppet_agent_dev_package_info(
- 'pa_collection', 'pa_version', opts )
- expect( release_file ).to match( /i386/ )
- expect( release_file ).not_to match( /x86_64/ )
- end
-
- context 'sets release_file name appropriately for puppet-agent version' do
- context 'on solaris 10' do
- before do
- @platform = 'solaris-10-arch'
- end
-
- [ '1.0.1.786.477',
- '1.0.1.786.a477',
- '1.0.1.786.477-',
- '1.0.1.0000786.477',
- '1.000000.1.786.477',
- '-1.0.1.786.477',
- '1.2.5.38.6813',
- ].each do |pa_version|
-
- context "#{pa_version}" do
- it "URL exists" do
- allow( host ).to receive( :link_exists? ).and_return(true)
- _, release_file = host.solaris_puppet_agent_dev_package_info(
- 'pa_collection', pa_version, opts )
- expect( release_file ).to be === "puppet-agent-#{pa_version}-1.arch.pkg.gz"
- end
-
- it "fallback URL" do
- allow( host ).to receive( :link_exists? ).and_return(false)
- _, release_file = host.solaris_puppet_agent_dev_package_info(
- 'pa_collection', pa_version, opts )
- expect( release_file ).to be === "puppet-agent-#{pa_version}.arch.pkg.gz"
- end
- end
- end
- end
-
- context 'on solaris 11' do
- before do
- @platform = 'solaris-11-arch'
- end
-
- [
- ['1.0.1.786.477', '1.0.1.786.477'],
- ['1.0.1.786.a477', '1.0.1.786.477'],
- ['1.0.1.786.477-', '1.0.1.786.477'],
- ['1.0.1.0000786.477', '1.0.1.786.477'],
- ['1.000000.1.786.477', '1.0.1.786.477'],
- ['-1.0.1.786.477', '1.0.1.786.477'],
- ['1.2.5-78-gbb3022f', '1.2.5.78.3022'],
- ['1.2.5.38.6813', '1.2.5.38.6813']
- ].each do |pa_version, pa_version_cleaned|
-
- context "#{pa_version}" do
- it "URL exists" do
- allow( host ).to receive( :link_exists? ).and_return(true)
- _, release_file = host.solaris_puppet_agent_dev_package_info(
- 'pa_collection', pa_version, opts )
- expect( release_file ).to be === "puppet-agent@#{pa_version_cleaned},5.11-1.arch.p5p"
- end
-
- it "fallback URL" do
- allow( host ).to receive( :link_exists? ).and_return(false)
- _, release_file = host.solaris_puppet_agent_dev_package_info(
- 'pa_collection', pa_version, opts )
- expect( release_file ).to be === "puppet-agent@#{pa_version_cleaned},5.11.arch.p5p"
- end
- end
- end
- end
- end
end
+ let(:host) { make_host('name', options.merge(platform)) }
+ let(:opts) { { :download_url => 'download_url' } }
- describe '#puppet_agent_dev_package_info' do
-
- it 'raises an error if puppet_collection is not passed' do
- expect {
- host.puppet_agent_dev_package_info
- }.to raise_error( ArgumentError, /^Must\ provide\ puppet_collection/ )
- end
-
- it 'raises an error if puppet_agent_version is not passed' do
- expect {
- host.puppet_agent_dev_package_info( 'collection' )
- }.to raise_error( ArgumentError, /^Must\ provide\ puppet_agent_version/ )
- end
-
- it 'raises an error on unknown platforms' do
- @platform = 'ubuntu-14.04-x86_64'
- expect {
- host.puppet_agent_dev_package_info( 'collection', 'version' )
- }.to raise_error( ArgumentError, /^puppet_agent\ dev\ package\ info\ unknown/ )
- end
-
- it 'calls out to the right method for solaris & returns what it gets' do
- @platform = 'solaris-10-x86_64'
- release_path_end_correct = 'release_path_end_correct_1'
- release_file_correct = 'release_file_correct_1'
- allow( host ).to receive( :solaris_puppet_agent_dev_package_info ) {
- [release_path_end_correct, release_file_correct]
- }
-
- release_path_end, release_file = host.puppet_agent_dev_package_info(
- 'pa_collection', 'pa_version' )
- expect( release_path_end ).to be === release_path_end_correct
- expect( release_file ).to be === release_file_correct
- end
-
- it 'sets up sles|aix platforms correctly' do
- @platform = 'sles-12-arch'
- release_path_end, release_file = host.puppet_agent_dev_package_info(
- 'pa_collection', 'pa_version1' )
- expect( release_path_end ).to be === "sles/12/pa_collection/arch"
- expect( release_file ).to be === "puppet-agent-pa_version1-1.sles12.arch.rpm"
- end
-
- it 'sets up opensuse platforms correctly' do
- @platform = 'opensuse-15-x86_64'
- release_path_end, release_file = host.puppet_agent_dev_package_info(
- 'pa_collection', 'pa_version1' )
- expect( release_path_end ).to be === "sles/15/pa_collection/x86_64"
- expect( release_file ).to be === "puppet-agent-pa_version1-1.sles15.x86_64.rpm"
- end
-
- it 'sets the arch correctly on aix-power platforms' do
- @platform = 'aix-6.1-power'
- release_path_end, release_file = host.puppet_agent_dev_package_info(
- 'pa_collection', '6.0.0' )
- expect( release_path_end ).to be === "aix/6.1/pa_collection/ppc"
- expect( release_file ).to be === "puppet-agent-6.0.0-1.aix6.1.ppc.rpm"
- end
- end
-
- describe '#pe_puppet_agent_promoted_package_info' do
- context 'on ubuntu platforms' do
- it 'splits the platform string version to get puppet-agent packages (format 9999)' do
- @platform = 'ubuntu-9999-x42'
- _, _, download_file = host.pe_puppet_agent_promoted_package_info(
- 'pa_collection'
- )
- expect( download_file ).to match( /-ubuntu-99\.99-x42/ )
- end
-
- it 'skips splitting the platform string version to get puppet-agent packages when unnecessary (format 99.99)' do
- @platform = 'ubuntu-88.88-x63'
- _, _, download_file = host.pe_puppet_agent_promoted_package_info(
- 'pa_collection'
- )
- expect( download_file ).to match( /-ubuntu-88\.88-x63/ )
- end
- end
- end
-
describe '#external_copy_base' do
-
it 'returns /root in general' do
copy_base = host.external_copy_base
- expect( copy_base ).to be === '/root'
+ expect(copy_base).to be === '/root'
end
it 'returns /root if solaris but not version 10' do
@platform = 'solaris-11-arch'
copy_base = host.external_copy_base
- expect( copy_base ).to be === '/root'
+ expect(copy_base).to be === '/root'
end
it 'returns / if on a solaris 10 platform' do
@platform = 'solaris-10-arch'
copy_base = host.external_copy_base
- expect( copy_base ).to be === '/'
+ expect(copy_base).to be === '/'
end
end
describe '#determine_ssh_server' do
it 'returns :openssh' do
- expect( host.determine_ssh_server ).to be === :openssh
+ expect(host.determine_ssh_server).to be === :openssh
end
end
describe '#validate_setup' do
-
it 'does nothing for non cisco_nexus-7 platforms' do
@platform = 'el-7-x86_64'
validate_test = host.validate_setup
- expect( validate_test ).to be_nil
+ expect(validate_test).to be_nil
end
end
end
end