From: OKUMURA Takahiro Date: Sat, 4 Jun 2016 18:09:31 +0000 (+0900) Subject: Fix regexp for $ensure params X-Git-Tag: 2.3.0~12^2 X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=459f5158795c25056306a7f51f1cf265bce6895e;p=puppet-modules%2Fpuppetlabs-apt.git Fix regexp for $ensure params /\Aabsent|present\Z/ match wrong values like 'absentaaa' or 'aaapresent'. And add tests to the context of 'invalid ensure'. --- diff --git a/manifests/key.pp b/manifests/key.pp index 8fbb47a..914ec88 100644 --- a/manifests/key.pp +++ b/manifests/key.pp @@ -49,7 +49,7 @@ define apt::key ( } validate_re($_id, ['\A(0x)?[0-9a-fA-F]{8}\Z', '\A(0x)?[0-9a-fA-F]{16}\Z', '\A(0x)?[0-9a-fA-F]{40}\Z']) - validate_re($ensure, ['\Aabsent|present\Z',]) + validate_re($ensure, ['\A(absent|present)\Z',]) if $_content { validate_string($_content) diff --git a/spec/defines/key_spec.rb b/spec/defines/key_spec.rb index d4a85a4..14a3efb 100644 --- a/spec/defines/key_spec.rb +++ b/spec/defines/key_spec.rb @@ -268,13 +268,15 @@ describe 'apt::key' do end context 'invalid ensure' do - let :params do - { - :ensure => 'foo', - } - end - it 'fails' do - expect { subject.call }.to raise_error(/does not match/) + %w(foo aabsent absenta apresent presenta).each do |param| + let :params do + { + :ensure => param, + } + end + it 'fails' do + expect { subject.call }.to raise_error(/does not match/) + end end end