diff options
| author | Luke Kanies <luke@madstop.com> | 2008-05-05 17:16:03 -0500 |
|---|---|---|
| committer | Luke Kanies <luke@madstop.com> | 2008-05-05 17:16:03 -0500 |
| commit | ce6d5787aaefc4c980e51c394328c2ddc2f7cb9c (patch) | |
| tree | 5bc654caf5c6da1127fb93e081b1dcf99929695a /spec | |
| parent | 67dc268fae0489de93f247b08fdaf7b1eec0e15d (diff) | |
The SSL::Host class now uses the CA to generate its certificate when appropriate.
It uses the CA singleton method to determine
whether it's on valid CA host, and if so, uses
the CA instance to sign its generated CSR.
Diffstat (limited to 'spec')
| -rwxr-xr-x | spec/unit/ssl/host.rb | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/spec/unit/ssl/host.rb b/spec/unit/ssl/host.rb index 66e21cd79..233bede9b 100755 --- a/spec/unit/ssl/host.rb +++ b/spec/unit/ssl/host.rb @@ -353,10 +353,31 @@ describe Puppet::SSL::Host do @host.generate end - it "should seek its certificate" do - @host.expects(:certificate) + describe "and it can create a certificate authority" do + before do + @ca = mock 'ca' + Puppet::SSL::CertificateAuthority.stubs(:instance).returns @ca + end - @host.generate + it "should use the CA to sign its certificate request if it does not have a certificate" do + @host.expects(:certificate).returns nil + + @ca.expects(:sign).with(@host.name) + + @host.generate + end + end + + describe "and it cannot create a certificate authority" do + before do + Puppet::SSL::CertificateAuthority.stubs(:instance).returns nil + end + + it "should seek its certificate" do + @host.expects(:certificate) + + @host.generate + end end end end |
