Suggest different variables to use if we want to tunnel both v4 and v6
[mirror/dsa-puppet.git] / 3rdparty / modules / stdlib / spec / functions / merge_spec.rb
1 require 'spec_helper'
2
3 describe 'merge' do
4   it { is_expected.not_to eq(nil) }
5   it { is_expected.to run.with_params.and_raise_error(Puppet::ParseError, %r{wrong number of arguments}i) }
6   it { is_expected.to run.with_params({}, 'two').and_raise_error(Puppet::ParseError, %r{unexpected argument type String}) }
7   it { is_expected.to run.with_params({}, 1).and_raise_error(Puppet::ParseError, %r{unexpected argument type (Fixnum|Integer)}) }
8   it {
9     pending 'should not special case this'
10     is_expected.to run.with_params({}).and_return({})
11   }
12   it { is_expected.to run.with_params({}, {}).and_return({}) }
13   it { is_expected.to run.with_params({}, {}, {}).and_return({}) }
14   describe 'should accept empty strings as puppet undef' do
15     it { is_expected.to run.with_params({}, '').and_return({}) }
16   end
17   it { is_expected.to run.with_params({ 'key' => 'value' }, {}).and_return('key' => 'value') }
18   it { is_expected.to run.with_params({}, 'key' => 'value').and_return('key' => 'value') }
19   it { is_expected.to run.with_params({ 'key' => 'value1' }, 'key' => 'value2').and_return('key' => 'value2') }
20   it {
21     is_expected.to run \
22       .with_params({ 'key1' => 'value1' }, { 'key2' => 'value2' }, 'key3' => 'value3') \
23       .and_return('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3')
24   }
25 end