File tree Expand file tree Collapse file tree 3 files changed +58
-1
lines changed
provider/openldap_database
spec/unit/puppet/provider/openldap_database Expand file tree Collapse file tree 3 files changed +58
-1
lines changed Original file line number Diff line number Diff line change @@ -50,7 +50,7 @@ def self.instances
50
50
when %r{^olcRelay: }
51
51
relay = line . split [ 1 ]
52
52
when %r{^olcReadOnly: }i
53
- readonly = line . split [ 1 ]
53
+ readonly = line . split [ 1 ] == 'TRUE' ? :true : :false
54
54
when %r{^olcSizeLimit: }i
55
55
sizelimit = line . split [ 1 ]
56
56
when %r{^olcDbMaxSize: }i
Original file line number Diff line number Diff line change @@ -167,6 +167,8 @@ def should_to_s(_newvalue)
167
167
168
168
newproperty ( :readonly ) do
169
169
desc 'Puts the database into read-only mode.'
170
+ newvalues ( :true , :false )
171
+ defaultto ( :false )
170
172
end
171
173
172
174
newproperty ( :sizelimit ) do
Original file line number Diff line number Diff line change
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe Puppet ::Type . type ( :openldap_database ) . provider ( :olc ) do
6
+ let ( :params ) do
7
+ {
8
+ suffix : 'dc=example,dc=com' ,
9
+ backend : 'mdb' ,
10
+ readonly : false ,
11
+ # provider: described_class.name,
12
+ }
13
+ end
14
+
15
+ let ( :resource ) do
16
+ Puppet ::Type . type ( :openldap_database ) . new ( params )
17
+ end
18
+ let ( :provider ) do
19
+ resource . provider
20
+ end
21
+
22
+ before do
23
+ allow ( described_class ) . to receive ( :slapcat ) . with ( '(|(olcDatabase=monitor)(olcDatabase={0}config)(&(objectClass=olcDatabaseConfig)(|(objectClass=olcBdbConfig)(objectClass=olcHdbConfig)(objectClass=olcMdbConfig)(objectClass=olcMonitorConfig)(objectClass=olcRelayConfig)(objectClass=olcLDAPConfig))))' ) . and_return ( <<~SLAPCAT )
24
+ dn: olcDatabase={1}mdb,cn=config
25
+ olcDatabase: {1}mdb
26
+ olcReadOnly: FALSE
27
+ SLAPCAT
28
+ allow ( provider ) . to receive ( :slapcat )
29
+ allow ( provider ) . to receive ( :ldapmodify )
30
+ allow ( provider ) . to receive ( :ldapadd )
31
+ # allow(described_class).to receive(:slapcat)
32
+ # allow(described_class).to receive(:ldapmodify)
33
+ # allow(described_class).to receive(:ldapadd)
34
+ end
35
+
36
+ describe 'when creating' do
37
+ context 'with readonly set to false' do
38
+ it 'parses olcReadOnly as false' do
39
+ provider . create
40
+ expect ( described_class . instances . first . readonly ) . to eq :false
41
+ # expect(described_class.instances.first.readonly).to eq(:false)
42
+ end
43
+ end
44
+
45
+ context 'with readonly set to true' do
46
+ let ( :params ) do
47
+ super ( ) . merge ( { readonly : true } )
48
+ end
49
+
50
+ it 'parses olcReadonly' do
51
+ expect ( described_class . instances . first . readonly ) . to eq ( :true )
52
+ end
53
+ end
54
+ end
55
+ end
You can’t perform that action at this time.
0 commit comments