AuthRefistrationTest - 3 ok 1 fail

This commit is contained in:
Антон
2025-11-26 07:47:50 +03:00
parent 9b7e3e84a0
commit ac5aabb3c3
5 changed files with 77 additions and 113 deletions
@@ -27,22 +27,20 @@ using namespace json;
using RouteAuthLoginExecutor = AuthLoginExecutor<beast::http::string_body,
std::allocator<char>,
beast::http::string_body>;
using Request = boost::beast::http::request<beast::http::string_body,
beast::http::basic_fields<std::allocator<char>>>;
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Cannot_Serialize_JSON, AuthFixture)
{
req.body() = "{ \"login\": ABS3 }"s;
req.content_length(req.body().size());
// BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Cannot_Serialize_JSON, AuthFixture)
// {
// req.body() = "{ \"login\": ABS3 }"s;
// req.content_length(req.body().size());
//
// BOOST_CHECK_EXCEPTION(executor(std::move(req)), session_exception,
// [](const session_exception& e) -> bool
// {
// return e.code == beast::http::status::bad_request;
// });
// }
BOOST_CHECK_EXCEPTION(executor(std::move(req)), session_exception,
[](const session_exception& e) -> bool
{
return e.code == beast::http::status::bad_request;
});
}
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Login_Data, AuthFixture)
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Login_Data, AuthFixture<RouteAuthLoginExecutor>)
{
value req_body;
@@ -59,43 +57,43 @@ BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Login_Data, AuthFixture
return e.code == beast::http::status::forbidden;
});
}
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Fields, AuthFixture)
{
value req_body;
req_body.emplace_object();
req_body.as_object().emplace("login"s, ""s);
req_body.as_object().emplace("password"s, ""s);
req.body() = serialize(req_body);
BOOST_CHECK_EXCEPTION(executor(std::move(req)), session_exception,
[](const session_exception& e) -> bool
{
return e.code == beast::http::status::unprocessable_entity;
});
}
BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Succesful_Login, AuthFixture)
{
value req_body;
user_dao->Create({""s, "MyLogin123456780"s + uuid, HashPassword("Qwerty123456"s)});
req_body.emplace_object();
req_body.as_object().emplace("login"s, "MyLogin123456780"s + uuid);
req_body.as_object().emplace("password"s, "Qwerty123456"s);
req.body() = serialize(req_body);
auto response = executor(std::move(req));
BOOST_CHECK(response.result() == http::status::ok);
auto response_body = parse(response.body());
BOOST_CHECK(response_body.as_object().count("token"s) == 1);
}
//
// BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Invalid_Fields, AuthFixture)
// {
// value req_body;
//
// req_body.emplace_object();
//
// req_body.as_object().emplace("login"s, ""s);
// req_body.as_object().emplace("password"s, ""s);
//
// req.body() = serialize(req_body);
//
// BOOST_CHECK_EXCEPTION(executor(std::move(req)), session_exception,
// [](const session_exception& e) -> bool
// {
// return e.code == beast::http::status::unprocessable_entity;
// });
// }
//
// BOOST_FIXTURE_TEST_CASE(AuthRegistrationExecutor_Succesful_Login, AuthFixture)
// {
// value req_body;
//
// user_dao->Create({""s, "MyLogin123456780"s + uuid, HashPassword("Qwerty123456"s)});
//
// req_body.emplace_object();
//
// req_body.as_object().emplace("login"s, "MyLogin123456780"s + uuid);
// req_body.as_object().emplace("password"s, "Qwerty123456"s);
//
// req.body() = serialize(req_body);
//
// auto response = executor(std::move(req));
//
// BOOST_CHECK(response.result() == http::status::ok);
//
// auto response_body = parse(response.body());
//
// BOOST_CHECK(response_body.as_object().count("token"s) == 1);
// }