JD2022-TU1/main/extern/UbiServices/custom/testsUnit/testServerTime.cpp

39 lines
1.4 KiB
C++

////////////////////////////////////////////////////////////////////////////////
// (c) Copyright, Ubisoft Entertainment Inc. || Created by Harbour //
////////////////////////////////////////////////////////////////////////////////
#include "tests/config.h"
#include "tests/fixture/memoryCheckFixture.h"
#include "tests/fixture/loginMockFixture.h"
#include <ubiservices/core/chrono/clockServer.h>
#include <ubiservices/core/helpers/instancesManager.h>
#include <ubiservices/core/types/dateTime.h>
#include <ubiservices/serverTimeHelper.h>
namespace US_NS {;
US_DEFINE_TEST(TestServerTime);
typedef LeakChecker SERVER_TIME;
typedef LoginMockFixture<> SERVER_TIME_MOCK_LOGIN;
TEST_F(SERVER_TIME, LOCAL_GetLocalServerTimeNoLogin)
{
EXPECT_EQ(DateTime(), ServerTimeHelper::getAdjustedLocalTime());
}
TEST_F(SERVER_TIME, LOCAL_GetUTCServerTimeNoLogin)
{
EXPECT_EQ(DateTime(), ServerTimeHelper::getServerTime());
}
TEST_F(SERVER_TIME_MOCK_LOGIN, LOCAL_GetLocalServerTime)
{
ClockServer& clock = InstancesManager::getInstance()->getServerClock();
const DateTime mockedLocalTime = DateTime(ClockSystem::getLocalTimeComponents(clock.getTime()));
const DateTime localTime = ServerTimeHelper::getAdjustedLocalTime();
EXPECT_EQ(mockedLocalTime.m_time, localTime.m_time);
}
// This test case is covered by test CORE_CHRONO_MOCK_NOLOGIN.USNOT_ServerClock
//TEST_F(SERVER_TIME_MOCK_LOGIN, LOCAL_GetUTCServerTime)
};