diff options
| author | Luke Kanies <luke@madstop.com> | 2008-08-07 17:39:13 -0700 |
|---|---|---|
| committer | Luke Kanies <luke@madstop.com> | 2008-08-07 17:39:13 -0700 |
| commit | 113d74aaa630f499c8b7989aac6680e22e8e38c8 (patch) | |
| tree | 250783a4ef765ca37b70f98d6df6782f986d99ba /spec/unit/ssl | |
| parent | 2cad30a18c5e0e4fb93603ab422c290a62d45131 (diff) | |
Certificates now work over REST.
All of the format work is done, they all
support plaintext successfully, and I've got
integration tests that demonstrate that it
actually works.
Signed-off-by: Luke Kanies <luke@madstop.com>
Diffstat (limited to 'spec/unit/ssl')
| -rwxr-xr-x | spec/unit/ssl/certificate.rb | 16 | ||||
| -rwxr-xr-x | spec/unit/ssl/certificate_request.rb | 16 | ||||
| -rwxr-xr-x | spec/unit/ssl/certificate_revocation_list.rb | 16 | ||||
| -rwxr-xr-x | spec/unit/ssl/host.rb | 8 |
4 files changed, 53 insertions, 3 deletions
diff --git a/spec/unit/ssl/certificate.rb b/spec/unit/ssl/certificate.rb index eb2464a48..34868dcd2 100755 --- a/spec/unit/ssl/certificate.rb +++ b/spec/unit/ssl/certificate.rb @@ -26,7 +26,21 @@ describe Puppet::SSL::Certificate do end it "should only support the text format" do - @class.supported_formats.should == [:str] + @class.supported_formats.should == [:s] + end + + describe "when converting from a string" do + it "should create a certificate instance with its name set to the certificate subject and its content set to the extracted certificate" do + cert = stub 'certificate', :subject => "/CN=Foo.madstop.com" + OpenSSL::X509::Certificate.expects(:new).with("my certificate").returns(cert) + + mycert = stub 'sslcert' + mycert.expects(:content=).with(cert) + + @class.expects(:new).with("foo.madstop.com").returns mycert + + @class.from_s("my certificate") + end end describe "when managing instances" do diff --git a/spec/unit/ssl/certificate_request.rb b/spec/unit/ssl/certificate_request.rb index 4a7d655ac..aa6bba625 100755 --- a/spec/unit/ssl/certificate_request.rb +++ b/spec/unit/ssl/certificate_request.rb @@ -27,7 +27,21 @@ describe Puppet::SSL::CertificateRequest do end it "should only support the text format" do - @class.supported_formats.should == [:str] + @class.supported_formats.should == [:s] + end + + describe "when converting from a string" do + it "should create a CSR instance with its name set to the CSR subject and its content set to the extracted CSR" do + csr = stub 'csr', :subject => "/CN=Foo.madstop.com" + OpenSSL::X509::Request.expects(:new).with("my csr").returns(csr) + + mycsr = stub 'sslcsr' + mycsr.expects(:content=).with(csr) + + @class.expects(:new).with("foo.madstop.com").returns mycsr + + @class.from_s("my csr") + end end describe "when managing instances" do diff --git a/spec/unit/ssl/certificate_revocation_list.rb b/spec/unit/ssl/certificate_revocation_list.rb index 39e32976d..3963b407f 100755 --- a/spec/unit/ssl/certificate_revocation_list.rb +++ b/spec/unit/ssl/certificate_revocation_list.rb @@ -17,7 +17,21 @@ describe Puppet::SSL::CertificateRevocationList do end it "should only support the text format" do - @class.supported_formats.should == [:str] + @class.supported_formats.should == [:s] + end + + describe "when converting from a string" do + it "should create a CRL instance with its name set to 'foo' and its content set to the extracted CRL" do + crl = stub 'crl' + OpenSSL::X509::CRL.expects(:new).returns(crl) + + mycrl = stub 'sslcrl' + mycrl.expects(:content=).with(crl) + + @class.expects(:new).with("foo").returns mycrl + + @class.from_s("my crl").should == mycrl + end end describe "when an instance" do diff --git a/spec/unit/ssl/host.rb b/spec/unit/ssl/host.rb index f945d703f..73ce9c7f2 100755 --- a/spec/unit/ssl/host.rb +++ b/spec/unit/ssl/host.rb @@ -394,6 +394,14 @@ describe Puppet::SSL::Host do Puppet::SSL::Host.new("me").should respond_to(:ssl_store) end + it "should always return the same store" do + host = Puppet::SSL::Host.new("foo") + store = mock 'store' + store.stub_everything + OpenSSL::X509::Store.expects(:new).returns store + host.ssl_store.should equal(host.ssl_store) + end + describe "when creating an SSL store" do before do @host = Puppet::SSL::Host.new("me") |
