*/
#include <cynara_test_admin.h>
+#include <cynara_test_cynara_mask.h>
#include <memory.h>
#include <plugins.h>
#include <tests_common.h>
+
#include <algorithm>
#include <cstring>
#include <cstdlib>
+#include <memory>
#include <ostream>
#include <string>
#include <sstream>
return os;
}
-Admin::Admin()
- : m_admin(nullptr)
+Admin::Admin(bool isOnline)
+ : m_admin(nullptr), m_online(isOnline)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
+
int ret = cynara_admin_initialize(&m_admin);
RUNNER_ASSERT_MSG(ret == CYNARA_API_SUCCESS,
"cynara_admin_initialize failed. ret: " << ret);
RUNNER_ASSERT_MSG(m_admin != nullptr, "cynara_admin struct was not initialized");
}
-Admin::~Admin()
+Admin::~Admin() noexcept(false)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
cynara_admin_finish(m_admin);
}
void Admin::setPolicies(const CynaraPoliciesContainer &policiesContainer,
int expectedResult)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
const cynara_admin_policy *policies[policiesContainer.m_policies.size()+1];
for (size_t i = 0; i < policiesContainer.m_policies.size(); ++i) {
void Admin::setBucket(const char *bucket, int operation, const char *extra,
int expectedResult)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
int ret = cynara_admin_set_bucket(m_admin, bucket, operation, extra);
RUNNER_ASSERT_MSG(ret == expectedResult,
"cynara_admin_set_bucket returned wrong value: "
int expectedCheckResult, const char *expectedCheckResultExtra,
int expectedResult)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
int checkResult;
char *checkResultExtra = nullptr;
CynaraPoliciesContainer &expectedPolicyList,
int expectedResult) {
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
struct cynara_admin_policy **policies = nullptr;
int ret = cynara_admin_list_policies(m_admin,
const char *client, const char *user, const char *privilege,
int expectedResult)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
int ret = cynara_admin_erase(m_admin,
startBucket, recursive,
client, user, privilege);
void Admin::listPoliciesDescriptions(CynaraTestPlugins::Descriptions &expectedDescriptions,
int expectedResult)
{
+ std::unique_ptr<CynaraMask>(m_online ? nullptr : new CynaraMask());
+
struct cynara_admin_policy_descr **descriptions = nullptr;
int ret = cynara_admin_list_policies_descriptions(m_admin, &descriptions);