CKM: Add new test to check if getCertificateChain return proper code.
authorBartlomiej Grzelewski <b.grzelewski@samsung.com>
Mon, 9 Feb 2015 18:15:50 +0000 (19:15 +0100)
committerMaciej J. Karpiuk <m.karpiuk2@samsung.com>
Wed, 18 Feb 2015 09:47:45 +0000 (10:47 +0100)
Change-Id: I293e6132dbe179254575940e6c51acd261e0145e

tests/ckm/main.cpp

index a06ea1c..45705f8 100644 (file)
@@ -3648,7 +3648,7 @@ RUNNER_TEST(T1811_remove_bundle_with_chain_certificates)
         "Error=" << CKM::ErrorToString(tmp));
 }
 
-RUNNER_TEST(T1812_negative_get_pkcs12_wrong_password)
+RUNNER_TEST(T1812_get_pkcs12_password_tests)
 {
     CKM::Alias alias = "t1812alias1";
 
@@ -3658,6 +3658,8 @@ RUNNER_TEST(T1812_negative_get_pkcs12_wrong_password)
     std::vector<char> buff(begin, end);
 
     CKM::PKCS12ShPtr pkcs12;
+    CKM::Password pass1 = "easypass1";
+    CKM::Password pass2 = "easypass2";
 
     CKM::RawBuffer buffer(buff.size());
     memcpy(buffer.data(), buff.data(), buff.size());
@@ -3669,12 +3671,41 @@ RUNNER_TEST(T1812_negative_get_pkcs12_wrong_password)
 
     int temp;
     RUNNER_ASSERT_MSG_BT(
-        CKM_API_SUCCESS == (temp = manager->savePKCS12(alias, pkcs, CKM::Policy("easypass"), CKM::Policy("easypass"))),
+        CKM_API_SUCCESS == (temp = manager->savePKCS12(alias, pkcs, CKM::Policy(pass1), CKM::Policy(pass2))),
         "Error=" << CKM::ErrorToString(temp));
 
     RUNNER_ASSERT_MSG_BT(
         CKM_API_ERROR_AUTHENTICATION_FAILED == (temp = manager->getPKCS12(alias, pkcs)),
         "Error=" << CKM::ErrorToString(temp));
+
+    RUNNER_ASSERT_MSG_BT(
+        CKM_API_ERROR_AUTHENTICATION_FAILED == (temp = manager->getPKCS12(alias, CKM::Password(), CKM::Password(), pkcs)),
+        "Error=" << CKM::ErrorToString(temp));
+
+    RUNNER_ASSERT_MSG_BT(
+        CKM_API_ERROR_AUTHENTICATION_FAILED == (temp = manager->getPKCS12(alias, pass1, CKM::Password(), pkcs)),
+        "Error=" << CKM::ErrorToString(temp));
+
+    RUNNER_ASSERT_MSG_BT(
+        CKM_API_ERROR_AUTHENTICATION_FAILED == (temp = manager->getPKCS12(alias, CKM::Password(), pass2, pkcs)),
+        "Error=" << CKM::ErrorToString(temp));
+
+    RUNNER_ASSERT_MSG_BT(
+        CKM_API_SUCCESS == (temp = manager->getPKCS12(alias, pass1, pass2, pkcs)),
+        "Error=" << CKM::ErrorToString(temp));
+
+    CKM::CertificateShPtr cert;
+    RUNNER_ASSERT_MSG_BT(
+        CKM_API_SUCCESS == (temp = manager->getCertificate(alias, pass2, cert)),
+        "Error=" << CKM::ErrorToString(temp));
+
+    CKM::CertificateShPtrVector certChain;
+    CKM::AliasVector certVect;
+    certVect.push_back(alias);
+
+    RUNNER_ASSERT_MSG_BT(
+        CKM_API_ERROR_AUTHENTICATION_FAILED == (temp = manager->getCertificateChain(cert, certVect, certVect, true, certChain)),
+        "Error=" << CKM::ErrorToString(temp));
 }
 
 RUNNER_TEST(T1813_deinit)