diff --git a/tests/fixtures/AuthRegistrationExecutorTestFixture.cpp b/tests/fixtures/AuthRegistrationExecutorTestFixture.cpp index ea41403..d4b188c 100644 --- a/tests/fixtures/AuthRegistrationExecutorTestFixture.cpp +++ b/tests/fixtures/AuthRegistrationExecutorTestFixture.cpp @@ -1,10 +1,35 @@ #include "AuthRegistrationExecutorTestFixture.h" #include +#include + +#include + +#include "./../../src/db/mysql_connector.h" + +using namespace std; namespace uad { -F::F(): i( 0 ) { BOOST_TEST_MESSAGE( "setup fixture" ); } +F::F() : + argv(boost::unit_test::framework::master_test_suite().argv), + mysql_credentials(argv[1]), + mysql_session(new mysqlx::Session(mysql_credentials)) +{ + uad::SetMySqlSession(mysql_session); -F::~F() { BOOST_TEST_MESSAGE( "teardown fixture" ); } + user_dao = make_shared(GetMySqlSession()); + executor = make_unique(GetMySqlSession(), user_dao); + BOOST_TEST_MESSAGE("setup fixture"); +} + +F::~F() +{ + SetMySqlSession(nullptr); + delete mysql_session; + mysql_session = nullptr; + mysql_credentials = nullptr; + argv = nullptr; + BOOST_TEST_MESSAGE("teardown fixture"); +} } diff --git a/tests/fixtures/AuthRegistrationExecutorTestFixture.h b/tests/fixtures/AuthRegistrationExecutorTestFixture.h index 3b4cfc1..57840a1 100644 --- a/tests/fixtures/AuthRegistrationExecutorTestFixture.h +++ b/tests/fixtures/AuthRegistrationExecutorTestFixture.h @@ -11,6 +11,7 @@ namespace uad { class F { +public: using RouteAuthRegistrationExecutor = AuthRegistrationExecutor, boost::beast::http::string_body>; @@ -23,7 +24,7 @@ class F { mysqlx::Session* mysql_session; std::shared_ptr user_dao; - RouteAuthRegistrationExecutor executor; + std::unique_ptr executor; Request req;