Skip to content

Commit ff69e23

Browse files
authored
Merge pull request #469 from alexjfisher/fix_booleans
Fix boolean parameters
2 parents a9b22d0 + 5bc3474 commit ff69e23

File tree

2 files changed

+38
-12
lines changed

2 files changed

+38
-12
lines changed

lib/puppet/type/java_ks.rb

+6-8
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# frozen_string_literal: true
22

3+
require 'puppet/parameter/boolean'
4+
35
Puppet::Type.newtype(:java_ks) do
46
@doc = 'Manages the entries in a java keystore, and uses composite namevars to
57
accomplish the same alias spread across multiple target keystores.'
@@ -132,14 +134,12 @@ def insync?(is)
132134
keystore. This cannot be used together with :password, but you must pass at least one of these parameters.'
133135
end
134136

135-
newparam(:password_fail_reset) do
137+
newparam(:password_fail_reset, boolean: true, parent: Puppet::Parameter::Boolean) do
136138
desc "If the supplied password does not succeed in unlocking the
137139
keystore file, then delete the keystore file and create a new one.
138140
Default: false."
139141

140-
newvalues(true, false)
141-
142-
defaultto false
142+
defaultto :false
143143
end
144144

145145
newparam(:destkeypass) do
@@ -156,13 +156,11 @@ def insync?(is)
156156
end
157157
end
158158

159-
newparam(:trustcacerts) do
159+
newparam(:trustcacerts, boolean: true, parent: Puppet::Parameter::Boolean) do
160160
desc "Certificate authorities aren't by default trusted so if you are adding a CA you need to set this to true.
161161
Defaults to :false."
162162

163-
newvalues(true, false)
164-
165-
defaultto false
163+
defaultto :false
166164
end
167165

168166
newparam(:path) do

spec/unit/puppet/type/java_ks_spec.rb

+32-4
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,22 @@
102102
expect(described_class.new(jks)[:name]).to eq(jks_resource[:name])
103103
end
104104

105-
it 'has false as the default value to :trustcacerts when parameter not provided' do
106-
expect(described_class.new(jks_resource)[:trustcacerts]).to be_nil
105+
it 'resource[:trustcacerts] is falsey when parameter not provided' do
106+
expect(described_class.new(jks_resource)[:trustcacerts]).to be_falsey
107+
end
108+
109+
it 'resource[:trustcacerts] is the boolean `false` when set to `false`' do
110+
jks = jks_resource.dup
111+
jks[:trustcacerts] = false
112+
113+
expect(described_class.new(jks)[:trustcacerts]).to be false
114+
end
115+
116+
it 'resource[:trustcacerts] is the boolean `true` when set to `true`' do
117+
jks = jks_resource.dup
118+
jks[:trustcacerts] = true
119+
120+
expect(described_class.new(jks)[:trustcacerts]).to be true
107121
end
108122

109123
it 'has :rsa as the default value for :private_key_type' do
@@ -175,8 +189,22 @@
175189
}.to raise_error(Puppet::Error, %r{length 6})
176190
end
177191

178-
it 'has :false value to :password_fail_reset when parameter not provided' do
179-
expect(described_class.new(jks_resource)[:password_fail_reset]).to be_nil
192+
it 'resource[:password_fail_reset] is falsey when parameter not provided' do
193+
expect(described_class.new(jks_resource)[:password_fail_reset]).to be_falsey
194+
end
195+
196+
it 'resource[:password_fail_reset] is the boolean `false` when parameter set to `false`' do
197+
jks = jks_resource.dup
198+
jks[:password_fail_reset] = false
199+
200+
expect(described_class.new(jks)[:password_fail_reset]).to be false
201+
end
202+
203+
it 'resource[:password_fail_reset] is the boolean `true` when parameter set to `true`' do
204+
jks = jks_resource.dup
205+
jks[:password_fail_reset] = true
206+
207+
expect(described_class.new(jks)[:password_fail_reset]).to be true
180208
end
181209

182210
it 'fails if :source_password is not provided for pkcs12 :storetype' do

0 commit comments

Comments
 (0)