mirror of
https://github.com/falk-werner/webfuse-provider
synced 2024-10-27 20:44:10 +00:00
added unit tests for server_config
This commit is contained in:
parent
ae9fb63900
commit
bc1b5343df
@ -23,6 +23,7 @@ add_executable(alltests
|
|||||||
test/core/test_message_queue.cc
|
test/core/test_message_queue.cc
|
||||||
test/adapter/test_response_parser.cc
|
test/adapter/test_response_parser.cc
|
||||||
test/adapter/test_server.cc
|
test/adapter/test_server.cc
|
||||||
|
test/adapter/test_server_config.cc
|
||||||
test/adapter/test_timepoint.cc
|
test/adapter/test_timepoint.cc
|
||||||
test/adapter/test_timer.cc
|
test/adapter/test_timer.cc
|
||||||
test/adapter/test_credentials.cc
|
test/adapter/test_credentials.cc
|
||||||
|
175
test/adapter/test_server_config.cc
Normal file
175
test/adapter/test_server_config.cc
Normal file
@ -0,0 +1,175 @@
|
|||||||
|
#include <gtest/gtest.h>
|
||||||
|
#include "webfuse/adapter/server_config.h"
|
||||||
|
#include "webfuse/adapter/impl/server_config.h"
|
||||||
|
#include "webfuse/adapter/impl/authenticator.h"
|
||||||
|
#include "tempdir.hpp"
|
||||||
|
|
||||||
|
using webfuse_test::TempDir;
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
|
||||||
|
wf_mountpoint * create_mountpoint(
|
||||||
|
char const * filesystem,
|
||||||
|
void * user_data)
|
||||||
|
{
|
||||||
|
(void) filesystem;
|
||||||
|
(void) user_data;
|
||||||
|
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool authenticate(
|
||||||
|
wf_credentials * credentials,
|
||||||
|
void * user_data)
|
||||||
|
{
|
||||||
|
(void) credentials;
|
||||||
|
(void) user_data;
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
TEST(server_config, create_dispose)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, set_documentroot)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
|
||||||
|
ASSERT_EQ(nullptr, config->document_root);
|
||||||
|
|
||||||
|
wf_server_config_set_documentroot(config, "www");
|
||||||
|
ASSERT_STREQ("www", config->document_root);
|
||||||
|
|
||||||
|
wf_server_config_set_documentroot(config, "/var/www");
|
||||||
|
ASSERT_STREQ("/var/www", config->document_root);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, set_keypath)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
|
||||||
|
ASSERT_EQ(nullptr, config->key_path);
|
||||||
|
|
||||||
|
wf_server_config_set_keypath(config, "key.pem");
|
||||||
|
ASSERT_STREQ("key.pem", config->key_path);
|
||||||
|
|
||||||
|
wf_server_config_set_keypath(config, "pki/self/key.pem");
|
||||||
|
ASSERT_STREQ("pki/self/key.pem", config->key_path);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, set_certpath)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
|
||||||
|
ASSERT_EQ(nullptr, config->key_path);
|
||||||
|
|
||||||
|
wf_server_config_set_certpath(config, "cert.pem");
|
||||||
|
ASSERT_STREQ("cert.pem", config->cert_path);
|
||||||
|
|
||||||
|
wf_server_config_set_certpath(config, "pki/self/cert.pem");
|
||||||
|
ASSERT_STREQ("pki/self/cert.pem", config->cert_path);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, set_vhostname)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
|
||||||
|
ASSERT_EQ(nullptr, config->key_path);
|
||||||
|
|
||||||
|
wf_server_config_set_vhostname(config, "webfuse");
|
||||||
|
ASSERT_STREQ("webfuse", config->vhost_name);
|
||||||
|
|
||||||
|
wf_server_config_set_vhostname(config, "localhost");
|
||||||
|
ASSERT_STREQ("localhost", config->vhost_name);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, set_port)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
|
||||||
|
ASSERT_EQ(0, config->port);
|
||||||
|
|
||||||
|
wf_server_config_set_port(config, 8443);
|
||||||
|
ASSERT_EQ(8443, config->port);
|
||||||
|
|
||||||
|
wf_server_config_set_port(config, 8080);
|
||||||
|
ASSERT_EQ(8080, config->port);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, set_mountpoint)
|
||||||
|
{
|
||||||
|
TempDir temp("server_config");
|
||||||
|
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.create_mountpoint);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.user_data);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.dispose);
|
||||||
|
|
||||||
|
wf_server_config_set_mountpoint(config, temp.path());
|
||||||
|
ASSERT_NE(nullptr, config->mountpoint_factory.create_mountpoint);
|
||||||
|
ASSERT_NE(nullptr, config->mountpoint_factory.user_data);
|
||||||
|
ASSERT_NE(nullptr, config->mountpoint_factory.dispose);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_cnfig, set_mounpoint_factory)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.create_mountpoint);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.user_data);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.dispose);
|
||||||
|
|
||||||
|
int value = 42;
|
||||||
|
void * user_data = reinterpret_cast<void*>(&value);
|
||||||
|
wf_server_config_set_mountpoint_factory(config, &create_mountpoint, user_data);
|
||||||
|
ASSERT_NE(&create_mountpoint, config->mountpoint_factory.create_mountpoint);
|
||||||
|
ASSERT_EQ(user_data, config->mountpoint_factory.user_data);
|
||||||
|
ASSERT_EQ(nullptr, config->mountpoint_factory.dispose);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
TEST(server_config, add_authenticator)
|
||||||
|
{
|
||||||
|
wf_server_config * config = wf_server_config_create();
|
||||||
|
ASSERT_NE(nullptr, config);
|
||||||
|
ASSERT_EQ(nullptr, config->authenticators.first);
|
||||||
|
|
||||||
|
int value = 42;
|
||||||
|
void * user_data = reinterpret_cast<void*>(&value);
|
||||||
|
wf_server_config_add_authenticator(config, "username", &authenticate, user_data);
|
||||||
|
|
||||||
|
wf_impl_authenticator * authenticator = config->authenticators.first;
|
||||||
|
ASSERT_STREQ("username", authenticator->type);
|
||||||
|
ASSERT_EQ(&authenticate, authenticator->authenticate);
|
||||||
|
ASSERT_EQ(user_data, authenticator->user_data);
|
||||||
|
|
||||||
|
wf_server_config_dispose(config);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user