Add missing new files from commit 131e09855e06
[mirror/dsa-puppet.git] / 3rdparty / modules / stdlib / spec / type_aliases / filemode_spec.rb
1 # coding: utf-8
2
3 require 'spec_helper'
4
5 if Puppet::Util::Package.versioncmp(Puppet.version, '4.5.0') >= 0
6   describe 'Stdlib::Filemode' do
7     describe 'valid modes' do
8       [
9         '7',
10         '12',
11         '666',
12
13         '0000',
14         '0644',
15         '1644',
16         '2644',
17         '4644',
18         '0123',
19         '0777',
20
21         'a=,o-r,u+X,g=w',
22         'a=Xr,+0',
23         'u=rwx,g+rX',
24         'u+s,g-s',
25       ].each do |value|
26         describe value.inspect do
27           it { is_expected.to allow_value(value) }
28         end
29       end
30     end
31
32     describe 'invalid modes' do
33       context 'with garbage inputs' do
34         [
35           true,
36           false,
37           :keyword,
38           nil,
39           [nil],
40           [nil, nil],
41           { 'foo' => 'bar' },
42           {},
43           '',
44           'ネット',
45           '55555',
46           '0x123',
47           '0649',
48
49           '=8,X',
50           'x=r,a=wx',
51         ].each do |value|
52           describe value.inspect do
53             it { is_expected.not_to allow_value(value) }
54           end
55         end
56       end
57     end
58   end
59 end