Files
SimCore/tests/test_UtilFunctions.cpp
2023-01-18 13:41:15 +01:00

49 lines
1.2 KiB
C++

#include <SimCore/UtilFunctions.hpp>
#include <string>
#define CATCH_CONFIG_MAIN
#include <catch2/catch.hpp>
#include <loguru.hpp>
SCENARIO("Testing the SimCorePositionClass")
{
GIVEN("different position in different forms")
{
std::string s1 = "hello.world.guy";
std::string s2 = "my;Name;is;henry";
std::string ownIP = SimCore::UtilFunctions::getOwnIP();
LOG_S(INFO)<<ownIP;
auto ip = SimCore::UtilFunctions::explode(ownIP, '.');
ip[3] = "255";
LOG_S(INFO)<< ip[0]+"."+ip[1]+"."+ip[2]+"."+ip[3];
LOG_S(INFO)<<SimCore::UtilFunctions::implode(ip, '.');
WHEN("constructing Position Object with data")
{
auto v1 = SimCore::UtilFunctions::explode(s1, '.');
auto v2 = SimCore::UtilFunctions::explode(s2, ';');
auto v3 = SimCore::UtilFunctions::explode(s2, '.');
THEN("positions attributes are correct")
{
REQUIRE(v1.size() == 3);
REQUIRE(v1.begin()->compare("hello") == 0);
REQUIRE(v2.size() == 4);
REQUIRE(v2[1].compare("Name") == 0);
REQUIRE(ownIP.size() > 0);
REQUIRE(ip.size() == 4);
} //THEN
} // WHEN
} // GIVEN
} //SCENARIO