}
}
+void setCertStatusToStore(CertStatus certStatus)
+{
+ int result;
+ for (auto storeType : storeTypeMap)
+ {
+ installCertToStore(std::string(), std::string(), PemCertInfo::CertPEM.c_str(), PEM_CRT);
+
+ result = setCertificateStatusToStore(storeType.second, certStatus, gNamePrefix.c_str(), DISABLED);
+ BOOST_CHECK_EQUAL(result, CERTSVC_SUCCESS);
+
+ result = setCertificateStatusToStore(storeType.second, certStatus, gNamePrefix.c_str(), ENABLED);
+ BOOST_CHECK_EQUAL(result, CERTSVC_SUCCESS);
+
+ uninstallCertFromStore();
+ }
+}
+
BOOST_AUTO_TEST_SUITE(CERT_SERVER_LOGIC_TEST)
+POSITIVE_TEST_CASE(T_set_certificate_status_to_store)
+{
+ int result = initialize_db();
+ BOOST_CHECK_EQUAL(result, CERTSVC_SUCCESS);
+
+ setCertStatusToStore(ENABLED);
+
+ setCertStatusToStore(DISABLED);
+
+ deinitialize_db();
+}
+
+NEGATIVE_TEST_CASE(T_set_certificate_status_to_store_with_database_no_records)
+{
+ int result = initialize_db();
+ BOOST_CHECK_EQUAL(result, CERTSVC_SUCCESS);
+
+ for (auto storeType : storeTypeMap)
+ {
+ result = setCertificateStatusToStore(storeType.second, DISABLED, systemGname.c_str(), ENABLED);
+ BOOST_CHECK_EQUAL(result, CERTSVC_FAIL);
+ }
+
+ deinitialize_db();
+}
+
+NEGATIVE_TEST_CASE(T_set_certificate_status_to_store_with_database_no_init_and_gname_parameter_is_null)
+{
+ int result = setCertificateStatusToStore(SYSTEM_STORE, DISABLED, systemGname.c_str(), ENABLED);
+ BOOST_CHECK_EQUAL(result, CERTSVC_FAIL);
+
+ for (auto storeType : storeTypeMap)
+ {
+ result = setCertificateStatusToStore(storeType.second, ENABLED, NULL, ENABLED);
+ BOOST_CHECK_EQUAL(result, CERTSVC_WRONG_ARGUMENT);
+ }
+}
+
+NEGATIVE_TEST_CASE(T_set_certificate_status_to_store_with_status_parameter_invalid)
+{
+ CertStatus outOfCertStatus = static_cast<CertStatus>(1 << 2);
+ int result;
+ for (auto storeType : storeTypeMap)
+ {
+ result = setCertificateStatusToStore(storeType.second, ENABLED, systemGname.c_str(), outOfCertStatus);
+ BOOST_CHECK_EQUAL(result, CERTSVC_INVALID_STATUS);
+ }
+}
+
POSITIVE_TEST_CASE(T_install_certificate_to_store)
{
int result;