3
require 'puppet/util/windows'
5
describe "Puppet::Util::Windows::AccessControlEntry", :if => Puppet.features.microsoft_windows? do
6
let(:klass) { Puppet::Util::Windows::AccessControlEntry }
7
let(:sid) { 'S-1-5-18' }
8
let(:mask) { Windows::File::FILE_ALL_ACCESS }
10
it "creates an access allowed ace" do
11
ace = klass.new(sid, mask)
13
ace.type.should == klass::ACCESS_ALLOWED_ACE_TYPE
16
it "creates an access denied ace" do
17
ace = klass.new(sid, mask, 0, klass::ACCESS_DENIED_ACE_TYPE)
19
ace.type.should == klass::ACCESS_DENIED_ACE_TYPE
22
it "creates a non-inherited ace by default" do
23
ace = klass.new(sid, mask)
25
ace.should_not be_inherited
28
it "creates an inherited ace" do
29
ace = klass.new(sid, mask, klass::INHERITED_ACE)
31
ace.should be_inherited
34
it "creates a non-inherit-only ace by default" do
35
ace = klass.new(sid, mask)
37
ace.should_not be_inherit_only
40
it "creates an inherit-only ace" do
41
ace = klass.new(sid, mask, klass::INHERIT_ONLY_ACE)
43
ace.should be_inherit_only
46
context "when comparing aces" do
47
let(:ace1) { klass.new(sid, mask, klass::INHERIT_ONLY_ACE, klass::ACCESS_DENIED_ACE_TYPE) }
48
let(:ace2) { klass.new(sid, mask, klass::INHERIT_ONLY_ACE, klass::ACCESS_DENIED_ACE_TYPE) }
50
it "returns true if different objects have the same set of values" do
54
it "returns false if different objects have different sets of values" do
55
ace = klass.new(sid, mask)
56
ace.should_not == ace1
59
it "returns true when testing if two objects are eql?" do
63
it "returns false when comparing object identity" do
64
ace1.should_not be_equal(ace2)