summaryrefslogtreecommitdiff
path: root/certs/test
diff options
context:
space:
mode:
Diffstat (limited to 'certs/test')
-rw-r--r--certs/test/files/ca.crt14
-rw-r--r--certs/test/files/ca.key18
-rw-r--r--certs/test/functional/certs_controller_test.rb2
-rw-r--r--certs/test/unit/cert_pool_test.rb52
-rw-r--r--certs/test/unit/cert_test.rb39
-rw-r--r--certs/test/unit/client_certificate_test.rb14
6 files changed, 47 insertions, 92 deletions
diff --git a/certs/test/files/ca.crt b/certs/test/files/ca.crt
new file mode 100644
index 0000000..cade598
--- /dev/null
+++ b/certs/test/files/ca.crt
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICPDCCAYmgAwIBAgIEUKCI4DANBgkqhkiG9w0BAQsFADAkMSIwIAYDVQQDExlS
+b290IENBIGZvciBydW5uaW5nIHRlc3RzMB4XDTEyMTExMjA1MjgwMFoXDTEzMTEx
+MjA1MjgwMFowJDEiMCAGA1UEAxMZUm9vdCBDQSBmb3IgcnVubmluZyB0ZXN0czCB
+uzANBgkqhkiG9w0BAQEFAAOBqQAwgaUCgZ0ApeqCGQOmiHxCFxsfUKmBV6ruOYar
+EsepFAycTmmakXBjNj4B9Pd3gE3Cc56rvkq0uxluRvqspzpEOQpCg8M5fkft/fxS
+acw+ackj3ys7r0MrXgL66QeLnNGe8+RjBO8UHb3OPx547hqUHVg+3HqSCdn9cGQX
+9//EJrnSJsLuZw9ktkN4Ytyd1deZo6AkiIeCyz0HxKQBIhdJAPRlAgMBAAGjQzBB
+MA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcEADAdBgNVHQ4EFgQUBe1l
+BbuGErEkHLffGvkY5dDOH1YwDQYJKoZIhvcNAQELBQADgZ0ADpudncToYPS183w8
+c68dObCCvNfv/FTBg4ihCLW6PapADYuvXmCvXgHflylET+rFdcrnUfl+XjNT5IjF
+ImUyyOnCiy7scRgY+9qrEb7neH4CopGZKkWBTadZLu0QZqMcsWyAZBzaI8tBwL+G
++ylSgw3xTSf/HFjmTJAlDzUieV4DufrPqz7Yx0GrTswdJOcccc/PWUvQIU1GXvto
+-----END CERTIFICATE-----
diff --git a/certs/test/files/ca.key b/certs/test/files/ca.key
new file mode 100644
index 0000000..d266ef7
--- /dev/null
+++ b/certs/test/files/ca.key
@@ -0,0 +1,18 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIC2gIBAAKBnQCl6oIZA6aIfEIXGx9QqYFXqu45hqsSx6kUDJxOaZqRcGM2PgH0
+93eATcJznqu+SrS7GW5G+qynOkQ5CkKDwzl+R+39/FJpzD5pySPfKzuvQyteAvrp
+B4uc0Z7z5GME7xQdvc4/HnjuGpQdWD7cepIJ2f1wZBf3/8QmudImwu5nD2S2Q3hi
+3J3V15mjoCSIh4LLPQfEpAEiF0kA9GUCAwEAAQKBnAKz9FSgqO42Sq6tBBtAolkh
+nBSXK2L4mmTiOQr/UMOnzLtN0qMBWRK1Bu2dRcz+0zztEs0t45wsfdS0DxYDGy+s
+elBrSOhs/w34IeZ5LM6xY0u4HZDmhn0pQNo6QZcFICr0GkkYdmWDlkLvIeJ/u6+q
+nmyqAQXvj3R4nA7hrKUXzJjfvN3RYrhLN+/T41zLybeJ5vLZQK3jJSiIjQJPAMhS
+HTIbYTUi2pxYVSwJDY4S2klTdroNGvTCkqcTRcB4Ms70FGLPZ6+ZumrkbSohHUsj
+gDRRy3e4fjA9qMSQynVr2gkUobsR0tAdQGVOKwJPANQIUPaTc2ouNYNLAiHoAXoL
+qAcF5g7/vtlMOwr+16EYoG7bLbiEie7nBfg9zz/VUnvOEy6pZ89YvsZOMlGicsRs
++tfUM1g/u0ZFEoQPrwJOC6bbE+ML0G9qj9WDfsA4DZ+DGujD6yZ//uSiax1v3TYg
+nnEMDoNJ4KjscvM+dkjez1QNTP3E+/27OUsc2fIiFJplYEnW7m6m+Hv7FulpAk8A
+tiASk0oiV/ErLARw53jmU9PRV378lqOcZgAxswclZo3FuJLxmc3WwOuV2B4Xd+gf
+epKPLYR708GR1Lp0RGS6GfjWGi9+ju3nSbuo5OCnAk5yun/UvDdtnZ6fXo9aF22/
+yoiztru7yhJdVrMx3PbbndfN2y9ctqcd6CD5fIQdyZ4K8eTr686RjH8C0XP095Ib
+an3AO/TQG1c4yE2hSvQ=
+-----END RSA PRIVATE KEY-----
diff --git a/certs/test/functional/certs_controller_test.rb b/certs/test/functional/certs_controller_test.rb
index 3d6946e..75256ca 100644
--- a/certs/test/functional/certs_controller_test.rb
+++ b/certs/test/functional/certs_controller_test.rb
@@ -13,7 +13,7 @@ class CertsControllerTest < ActionController::TestCase
test "should send cert" do
login
cert = stub :cert => "adsf", :key => "key"
- LeapCA::Cert.expects(:pick_from_pool).returns(cert)
+ ClientCertificate.expects(:new).returns(cert)
get :show
assert_response :success
assert_equal cert.key + cert.cert, @response.body
diff --git a/certs/test/unit/cert_pool_test.rb b/certs/test/unit/cert_pool_test.rb
deleted file mode 100644
index 06f7ce0..0000000
--- a/certs/test/unit/cert_pool_test.rb
+++ /dev/null
@@ -1,52 +0,0 @@
-require 'test_helper'
-
-class CertPoolTest < ActiveSupport::TestCase
-
- setup do
- 2.times { LeapCA::Cert.create(LeapCA::Cert.valid_attributes_hash) }
- end
-
- teardown do
- LeapCA::Cert.all.each {|c| c.destroy}
- end
-
- test "picks random sample" do
- # with 3 certs chances are pretty low we pick the same one 40 times.
- LeapCA::Cert.create! LeapCA::Cert.valid_attributes_hash
- picked = []
- first = LeapCA::Cert.sample.id
- current = LeapCA::Cert.sample.id
- 40.times do
- break if current != first
- current = LeapCA::Cert.sample.id
- end
- assert_not_equal current, first
- end
-
- test "picks cert from the pool" do
- assert_difference "LeapCA::Cert.count", -1 do
- cert = LeapCA::Cert.pick_from_pool
- end
- end
-
- test "err's out if all certs have been destroyed" do
- sample = LeapCA::Cert.first.tap{|c| c.destroy}
- LeapCA::Cert.all.each {|c| c.destroy}
- assert_raises RECORD_NOT_FOUND do
- LeapCA::Cert.expects(:sample).returns(sample)
- cert = LeapCA::Cert.pick_from_pool
- end
- end
-
- test "picks other cert if first pick has been destroyed" do
- first = LeapCA::Cert.first.tap{|c| c.destroy}
- second = LeapCA::Cert.first
- LeapCA::Cert.expects(:sample).at_least_once.
- returns(first).
- then.returns(second)
- cert = LeapCA::Cert.pick_from_pool
- assert_equal second, cert
- assert_nil LeapCA::Cert.first
- end
-
-end
diff --git a/certs/test/unit/cert_test.rb b/certs/test/unit/cert_test.rb
deleted file mode 100644
index 0b21d0b..0000000
--- a/certs/test/unit/cert_test.rb
+++ /dev/null
@@ -1,39 +0,0 @@
-require 'test_helper'
-
-class CertTest < ActiveSupport::TestCase
-
- setup do
- @sample = LeapCA::Cert.new LeapCA::Cert.valid_attributes_hash
- end
-
- test "stub cert for testing is valid" do
- assert @sample.valid?
- end
-
- test "setting random on create validation" do
- @sample.random = "asdf"
- assert @sample.valid?
- assert @sample.random.is_a? Float
- assert @sample.random >= 0
- assert @sample.random < 1
- end
-
- test "validates random" do
- @sample.save # make sure we are past the on_create
- assert @sample.valid?
- ["asdf", 1, 2, -0.1, nil, "asdf"].each do |invalid|
- @sample.random = invalid
- assert !@sample.valid?, "#{invalid} should not be a valid value for random"
- end
- end
-
- test "validates key" do
- @sample.key = nil
- assert !@sample.valid?, "Cert should require key"
- end
-
- test "validates cert" do
- @sample.cert = nil
- assert !@sample.valid?, "Cert should require cert"
- end
-end
diff --git a/certs/test/unit/client_certificate_test.rb b/certs/test/unit/client_certificate_test.rb
new file mode 100644
index 0000000..492a44a
--- /dev/null
+++ b/certs/test/unit/client_certificate_test.rb
@@ -0,0 +1,14 @@
+require 'test_helper'
+
+class ClientCertificateTest < ActiveSupport::TestCase
+
+ setup do
+ @sample = ClientCertificate.new
+ end
+
+ test "new cert has all we need" do
+ assert @sample.key
+ assert @sample.cert
+ end
+
+end