X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Fstdlib%2Fspec%2Faliases%2Fwindowspath_spec.rb;fp=3rdparty%2Fmodules%2Fstdlib%2Fspec%2Faliases%2Fwindowspath_spec.rb;h=c20e373d70866336e55921595c46da1cf2ac9e69;hb=6963202b4b62c2816655ac9532521b018fdf83bd;hp=0000000000000000000000000000000000000000;hpb=a69999e580f8b3abd12446c2d6ad59e517651813;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/stdlib/spec/aliases/windowspath_spec.rb b/3rdparty/modules/stdlib/spec/aliases/windowspath_spec.rb new file mode 100644 index 000000000..c20e373d7 --- /dev/null +++ b/3rdparty/modules/stdlib/spec/aliases/windowspath_spec.rb @@ -0,0 +1,47 @@ +require 'spec_helper' + +if Puppet::Util::Package.versioncmp(Puppet.version, '4.5.0') >= 0 + describe 'test::windowspath', type: :class do + describe 'valid handling' do + %w{ + C:\\ + C:\\WINDOWS\\System32 + C:/windows/system32 + X:/foo/bar + X:\\foo\\bar + \\\\host\\windows + X:/var/ůťƒ8 + X:/var/ネット + }.each do |value| + describe value.inspect do + let(:params) {{ value: value }} + it { is_expected.to compile } + end + end + end + + describe 'invalid path handling' do + context 'garbage inputs' do + [ + nil, + [ nil ], + [ nil, nil ], + { 'foo' => 'bar' }, + { }, + '', + "httds://notquiteright.org", + "/usr2/username/bin:/usr/local/bin:/usr/bin:.", + "C;//notright/here", + "C:noslashes", + "C:ネット", + "C:ůťƒ8" + ].each do |value| + describe value.inspect do + let(:params) {{ value: value }} + it { is_expected.to compile.and_raise_error(/parameter 'value' expects a match for Stdlib::Windowspath/) } + end + end + end + end + end +end