diff options
author | Michael Polenchuk <mpolenchuk@mirantis.com> | 2015-11-18 14:32:24 +0300 |
---|---|---|
committer | Michael Polenchuk <mpolenchuk@mirantis.com> | 2015-12-31 12:46:07 +0300 |
commit | 27782242bc27dced7bed316a01c21fffd94e34f8 (patch) | |
tree | 67bd90fde8238bfff754d2fcdd782c9fbc6d88f0 /spec/functions | |
parent | 61333cfc48026af204483d681bd8b10cb44d6fc6 (diff) |
Add clamp function
Clamp keeps value within the range.
Employ of soft() makes the whole thing is independant of order.
Diffstat (limited to 'spec/functions')
-rw-r--r-- | spec/functions/clamp_spec.rb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/spec/functions/clamp_spec.rb b/spec/functions/clamp_spec.rb new file mode 100644 index 0000000..3e2fe7a --- /dev/null +++ b/spec/functions/clamp_spec.rb @@ -0,0 +1,16 @@ +require 'spec_helper' + +describe 'clamp' 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(Puppet::ParseError) } + it { is_expected.to run.with_params(12, 88, 71, 190).and_raise_error(Puppet::ParseError, /Wrong number of arguments, need three to clamp/) } + it { is_expected.to run.with_params('12string', 88, 15).and_raise_error(Puppet::ParseError, /Required explicit numeric/) } + it { is_expected.to run.with_params(1, 2, {'a' => 55}).and_raise_error(Puppet::ParseError, /The Hash type is not allowed/) } + it { is_expected.to run.with_params('24', [575, 187]).and_return(187) } + it { is_expected.to run.with_params([4, 3, '99']).and_return(4) } + it { is_expected.to run.with_params(16, 750, 88).and_return(88) } + it { is_expected.to run.with_params([3, 873], 73).and_return(73) } + it { is_expected.to run.with_params([4], 8, 75).and_return(8) } + it { is_expected.to run.with_params([6], [31], 9911).and_return(31) } +end |