diff options
Diffstat (limited to 'spec/functions/type_of_spec.rb')
-rw-r--r-- | spec/functions/type_of_spec.rb | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/spec/functions/type_of_spec.rb b/spec/functions/type_of_spec.rb index b823460..f770990 100644 --- a/spec/functions/type_of_spec.rb +++ b/spec/functions/type_of_spec.rb @@ -1,13 +1,23 @@ -#! /usr/bin/env ruby -S rspec - require 'spec_helper' -describe 'type_of', :if => Puppet.version.to_f >= 4.0 do - it 'gives the type of a string' do - expect(subject.call_function('type_of', 'hello world')).to be_kind_of(Puppet::Pops::Types::PStringType) +if ENV["FUTURE_PARSER"] == 'yes' + describe 'type_of' do + pending 'teach rspec-puppet to load future-only functions under 3.7.5' end +end + +if Puppet.version.to_f >= 4.0 + describe 'type_of' do + it { is_expected.not_to eq(nil) } + it { is_expected.to run.with_params().and_raise_error(ArgumentError) } + it { is_expected.to run.with_params('', '').and_raise_error(ArgumentError) } + + it 'gives the type of a string' do + expect(subject.call({}, 'hello world')).to be_kind_of(Puppet::Pops::Types::PStringType) + end - it 'gives the type of an integer' do - expect(subject.call_function('type_of', 5)).to be_kind_of(Puppet::Pops::Types::PIntegerType) + it 'gives the type of an integer' do + expect(subject.call({}, 5)).to be_kind_of(Puppet::Pops::Types::PIntegerType) + end end end |