From 195224a989fa57e9a70fa10c0cdd6603295bb0dd Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 26 Jan 2013 10:52:36 +0100 Subject: removing the leap_ca namespacing from certs --- certs/test/unit/cert_test.rb | 39 ------------------------------ certs/test/unit/client_certificate_test.rb | 39 ++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 39 deletions(-) delete mode 100644 certs/test/unit/cert_test.rb create mode 100644 certs/test/unit/client_certificate_test.rb (limited to 'certs/test') 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..a721483 --- /dev/null +++ b/certs/test/unit/client_certificate_test.rb @@ -0,0 +1,39 @@ +require 'test_helper' + +class ClientCertificateTest < ActiveSupport::TestCase + + setup do + @sample = ClientCertificate.new ClientCertificate.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 -- cgit v1.2.3 From 4c2abd107f5959ea0f15f052acf73440648d8d52 Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 26 Jan 2013 11:03:18 +0100 Subject: moving leap_ca configs into defaults.yml --- certs/test/files/ca.crt | 14 ++++++++++++++ certs/test/files/ca.key | 18 ++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 certs/test/files/ca.crt create mode 100644 certs/test/files/ca.key (limited to 'certs/test') 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----- -- cgit v1.2.3 From 0975583e3c6ec9d2bf0269841073031537db1c37 Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 26 Jan 2013 11:08:05 +0100 Subject: we're not using a cert pool anymore - remove anything related --- certs/test/unit/cert_pool_test.rb | 52 --------------------------------------- 1 file changed, 52 deletions(-) delete mode 100644 certs/test/unit/cert_pool_test.rb (limited to 'certs/test') 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 -- cgit v1.2.3 From 0f8efed9afa480174c77c89d4d9d4a40f99bddab Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 26 Jan 2013 11:13:24 +0100 Subject: adopting tests to the way certs work now. should pass. * We now generate cert and key on validate. * we don't expect the controller to pick from the pool anymore - just create instead --- certs/test/functional/certs_controller_test.rb | 2 +- certs/test/unit/client_certificate_test.rb | 23 ++++------------------- 2 files changed, 5 insertions(+), 20 deletions(-) (limited to 'certs/test') diff --git a/certs/test/functional/certs_controller_test.rb b/certs/test/functional/certs_controller_test.rb index 3d6946e..887d5f0 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(:create).returns(cert) get :show assert_response :success assert_equal cert.key + cert.cert, @response.body diff --git a/certs/test/unit/client_certificate_test.rb b/certs/test/unit/client_certificate_test.rb index a721483..7dbb8a9 100644 --- a/certs/test/unit/client_certificate_test.rb +++ b/certs/test/unit/client_certificate_test.rb @@ -10,30 +10,15 @@ class ClientCertificateTest < ActiveSupport::TestCase 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" + assert @sample.valid? + assert @sample.key, "Cert should generate key" end test "validates cert" do @sample.cert = nil - assert !@sample.valid?, "Cert should require cert" + assert @sample.valid? + assert @sample.cert, "Cert should generate cert" end end -- cgit v1.2.3 From 8d9c2e90b77d417f9715c95de91c629e80ca6603 Mon Sep 17 00:00:00 2001 From: Azul Date: Sat, 26 Jan 2013 11:23:43 +0100 Subject: no need to store the cert anymore - just new initialize and send it --- certs/test/functional/certs_controller_test.rb | 2 +- certs/test/unit/client_certificate_test.rb | 18 ++++-------------- 2 files changed, 5 insertions(+), 15 deletions(-) (limited to 'certs/test') diff --git a/certs/test/functional/certs_controller_test.rb b/certs/test/functional/certs_controller_test.rb index 887d5f0..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" - ClientCertificate.expects(:create).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/client_certificate_test.rb b/certs/test/unit/client_certificate_test.rb index 7dbb8a9..492a44a 100644 --- a/certs/test/unit/client_certificate_test.rb +++ b/certs/test/unit/client_certificate_test.rb @@ -3,22 +3,12 @@ require 'test_helper' class ClientCertificateTest < ActiveSupport::TestCase setup do - @sample = ClientCertificate.new ClientCertificate.valid_attributes_hash + @sample = ClientCertificate.new end - test "stub cert for testing is valid" do - assert @sample.valid? + test "new cert has all we need" do + assert @sample.key + assert @sample.cert end - test "validates key" do - @sample.key = nil - assert @sample.valid? - assert @sample.key, "Cert should generate key" - end - - test "validates cert" do - @sample.cert = nil - assert @sample.valid? - assert @sample.cert, "Cert should generate cert" - end end -- cgit v1.2.3