generated from Sithas/conan_template
AuthRefistrationTest - 4 ok 0 fail
This commit is contained in:
@@ -93,6 +93,7 @@ add_executable(AuthRegistrationExecutorTests ./tests/endpoint_handlers/AuthRegis
|
|||||||
./src/db/mysql_connector.h
|
./src/db/mysql_connector.h
|
||||||
./src/db/mysql_connector.cpp
|
./src/db/mysql_connector.cpp
|
||||||
tests/fixtures/AuthFixture.h
|
tests/fixtures/AuthFixture.h
|
||||||
|
tests/fixtures/AuthFixture.cpp
|
||||||
./tests/fixtures/fixture_session_initialization_helper.h
|
./tests/fixtures/fixture_session_initialization_helper.h
|
||||||
./tests/fixtures/fixture_session_initialization_helper.cpp)
|
./tests/fixtures/fixture_session_initialization_helper.cpp)
|
||||||
target_link_libraries(AuthRegistrationExecutorTests PRIVATE Boost::boost
|
target_link_libraries(AuthRegistrationExecutorTests PRIVATE Boost::boost
|
||||||
|
|||||||
@@ -27,8 +27,10 @@ using RouteAuthRegistrationExecutor = AuthRegistrationExecutor<beast::http::stri
|
|||||||
using Request = boost::beast::http::request<beast::http::string_body,
|
using Request = boost::beast::http::request<beast::http::string_body,
|
||||||
beast::http::basic_fields<std::allocator<char>>>;
|
beast::http::basic_fields<std::allocator<char>>>;
|
||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Failed_Parse_Payload, AuthFixture<RouteAuthRegistrationExecutor>)
|
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Failed_Parse_Payload, AuthFixture)
|
||||||
{
|
{
|
||||||
|
RouteAuthRegistrationExecutor executor(GetMySqlSession(), user_dao);
|
||||||
|
|
||||||
req.body() = "{ \"login\": ABS3 }"s;
|
req.body() = "{ \"login\": ABS3 }"s;
|
||||||
|
|
||||||
BOOST_CHECK_EXCEPTION(executor(std::move(req)), session_exception, [](const session_exception& e) -> bool
|
BOOST_CHECK_EXCEPTION(executor(std::move(req)), session_exception, [](const session_exception& e) -> bool
|
||||||
@@ -37,8 +39,10 @@ BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Failed_Parse_Payload, AuthFixtu
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Login_Data, AuthFixture<RouteAuthRegistrationExecutor>)
|
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Login_Data, AuthFixture)
|
||||||
{
|
{
|
||||||
|
RouteAuthRegistrationExecutor executor(GetMySqlSession(), user_dao);
|
||||||
|
|
||||||
value req_body;
|
value req_body;
|
||||||
|
|
||||||
req_body.emplace_object();
|
req_body.emplace_object();
|
||||||
@@ -54,8 +58,10 @@ BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Login_Data, AuthFixture
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Succesfull_User_Login, AuthFixture<RouteAuthRegistrationExecutor>)
|
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Succesfull_User_Login, AuthFixture)
|
||||||
{
|
{
|
||||||
|
RouteAuthRegistrationExecutor executor(GetMySqlSession(), user_dao);
|
||||||
|
|
||||||
value req_body;
|
value req_body;
|
||||||
|
|
||||||
req_body.emplace_object();
|
req_body.emplace_object();
|
||||||
@@ -70,8 +76,10 @@ BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Succesfull_User_Login, AuthFixt
|
|||||||
BOOST_CHECK_EQUAL(response.result(), http::status::created);
|
BOOST_CHECK_EQUAL(response.result(), http::status::created);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Unsuccesfull_User_Registration, AuthFixture<RouteAuthRegistrationExecutor>)
|
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Unsuccesfull_User_Registration, AuthFixture)
|
||||||
{
|
{
|
||||||
|
RouteAuthRegistrationExecutor executor(GetMySqlSession(), user_dao);
|
||||||
|
|
||||||
user_dao->Create(
|
user_dao->Create(
|
||||||
user {
|
user {
|
||||||
.login = "MyLogin123456780"s + uuid,
|
.login = "MyLogin123456780"s + uuid,
|
||||||
|
|||||||
Vendored
+36
@@ -0,0 +1,36 @@
|
|||||||
|
#include "AuthFixture.h"
|
||||||
|
|
||||||
|
#include <boost/test/unit_test.hpp>
|
||||||
|
#include <boost/beast.hpp>
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
|
#include "./../../src/db/mysql_connector.h"
|
||||||
|
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
namespace uad
|
||||||
|
{
|
||||||
|
AuthFixture::AuthFixture() :
|
||||||
|
uuid(std::to_string(uad::Random())),
|
||||||
|
argv(boost::unit_test::framework::master_test_suite().argv),
|
||||||
|
mysql_credentials(argv[1]),
|
||||||
|
mysql_session(new mysqlx::Session(mysql_credentials)),
|
||||||
|
helper(mysql_session),
|
||||||
|
user_dao(std::make_shared<MySQLUserDAO>(GetMySqlSession())),
|
||||||
|
auth_dao(make_shared<MemoryAuthDAO>(GetMySqlSession()))
|
||||||
|
{
|
||||||
|
BOOST_TEST_MESSAGE("Setup RouteAuthRegistrationExecutor fixture");
|
||||||
|
}
|
||||||
|
|
||||||
|
AuthFixture::~AuthFixture()
|
||||||
|
{
|
||||||
|
argv = nullptr;
|
||||||
|
mysql_session->close();
|
||||||
|
delete mysql_session;
|
||||||
|
mysql_session = nullptr;
|
||||||
|
SetMySqlSession(nullptr);
|
||||||
|
|
||||||
|
BOOST_TEST_MESSAGE("Teardown RouteAuthRegistrationExecutor fixture");
|
||||||
|
}
|
||||||
|
}
|
||||||
Vendored
+12
-18
@@ -17,30 +17,24 @@ namespace uad
|
|||||||
using Request = boost::beast::http::request<boost::beast::http::string_body,
|
using Request = boost::beast::http::request<boost::beast::http::string_body,
|
||||||
boost::beast::http::basic_fields<std::allocator<char>>>;
|
boost::beast::http::basic_fields<std::allocator<char>>>;
|
||||||
|
|
||||||
template <class Executor>
|
class AuthFixture
|
||||||
class AuthFixture {
|
{
|
||||||
public:
|
public:
|
||||||
const std::string uuid = std::to_string(uad::Random());
|
const std::string uuid;
|
||||||
char** argv = boost::unit_test::framework::master_test_suite().argv;
|
char** argv;
|
||||||
|
|
||||||
const std::string mysql_credentials = argv[1];
|
const std::string mysql_credentials;
|
||||||
mysqlx::Session* mysql_session = new mysqlx::Session(mysql_credentials);
|
mysqlx::Session* mysql_session;
|
||||||
|
|
||||||
fixture_session_initialization_helper helper = fixture_session_initialization_helper(mysql_session);
|
fixture_session_initialization_helper helper;
|
||||||
|
|
||||||
std::shared_ptr<IUserDAO> user_dao = std::make_shared<MySQLUserDAO>(GetMySqlSession());
|
std::shared_ptr<IUserDAO> user_dao;
|
||||||
std::shared_ptr<MemoryAuthDAO> auth_dao = std::make_shared<MemoryAuthDAO>(GetMySqlSession());
|
std::shared_ptr<MemoryAuthDAO> auth_dao;
|
||||||
Executor executor = Executor(GetMySqlSession(), user_dao);
|
|
||||||
|
|
||||||
Request req;
|
Request req;
|
||||||
|
|
||||||
AuthFixture()
|
AuthFixture();
|
||||||
{
|
|
||||||
BOOST_TEST_MESSAGE("Setup fixture");
|
~AuthFixture();
|
||||||
}
|
|
||||||
~AuthFixture()
|
|
||||||
{
|
|
||||||
BOOST_TEST_MESSAGE("Teardown fixture");
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user