hunting/test/utils/SharedData/src/SharedData_Test.cpp
2024-01-24 08:20:47 -08:00

347 lines
15 KiB
C++

/*
* Copyright (c) 2023 Fancy Code.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include "ILog.h"
#include "SharedData.h"
#include <gmock/gmock.h>
#include <gtest/gtest.h>
namespace SharedDataTest
{
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo
TEST(SharedDataTest, Demo)
{
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataMinor) {
int writableData = 99;
sharedDataMinor->mMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int));
sharedDataMinor->mSetWritableData(sharedDataMinor, &writableData, sizeof(int));
}
if (nullptr != sharedDataPrimary) {
int readableData = -1;
sharedDataPrimary->mMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
sharedDataPrimary->mGetReadableData(sharedDataPrimary, &readableData, sizeof(int));
LogInfo("readableData = %d\n", readableData);
sharedDataPrimary->mFree(sharedDataPrimary);
}
if (nullptr != sharedDataMinor) {
sharedDataMinor->mFree(sharedDataMinor);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo2
TEST(SharedDataTest, Demo2)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataMinor) {
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int));
ISetWritableData(sharedDataMinor, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataPrimary) {
int readableData = 0;
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataPrimary, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_EQ(readableData, WRITABLE_DATA);
IShareDataFree(sharedDataPrimary);
}
if (nullptr != sharedDataMinor) {
IShareDataFree(sharedDataMinor);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo3
TEST(SharedDataTest, Demo3)
{
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataMinor) {
constexpr int WRITABLE_DATA_LENGTH = 9;
char writableData[WRITABLE_DATA_LENGTH] = {0};
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(writableData));
ISetWritableData(sharedDataMinor, writableData, sizeof(writableData));
}
if (nullptr != sharedDataPrimary) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataPrimary, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, DEFAULT_DATA);
IShareDataFree(sharedDataPrimary);
}
if (nullptr != sharedDataMinor) {
IShareDataFree(sharedDataMinor);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo4
TEST(SharedDataTest, Demo4)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataMinor) {
IMakeSharedData(sharedDataMinor, sizeof(int) * 2, sizeof(int));
ISetWritableData(sharedDataMinor, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataPrimary) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataPrimary, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_EQ(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, WRITABLE_DATA);
IShareDataFree(sharedDataPrimary);
}
if (nullptr != sharedDataMinor) {
IShareDataFree(sharedDataMinor);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo5
TEST(SharedDataTest, Demo5)
{
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataPrimary, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, DEFAULT_DATA);
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo6
TEST(SharedDataTest, Demo6)
{
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataPrimary, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, DEFAULT_DATA);
IShareDataFree(sharedDataPrimary);
}
if (nullptr != sharedDataMinor) {
IShareDataFree(sharedDataMinor);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.Demo7
TEST(SharedDataTest, Demo7)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
ISetWritableData(sharedDataPrimary, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataMinor) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataMinor, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_EQ(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, WRITABLE_DATA);
IShareDataFree(sharedDataMinor);
}
if (nullptr != sharedDataPrimary) {
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.UNIT_SharedData_DEME_Demo7
TEST(SharedDataTest, UNIT_SharedData_DEME_Demo7)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
IMakeSharedData(sharedDataPrimary, sizeof(int) * 2, sizeof(int));
ISetWritableData(sharedDataPrimary, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataMinor) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataMinor, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, DEFAULT_DATA);
IShareDataFree(sharedDataMinor);
}
if (nullptr != sharedDataPrimary) {
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.UNIT_SharedData_DEME_Demo8
TEST(SharedDataTest, UNIT_SharedData_DEME_Demo8)
{
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
int writableData[2] = {0};
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int) * 2);
ISetWritableData(sharedDataPrimary, &writableData, sizeof(writableData));
}
if (nullptr != sharedDataMinor) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int));
StatusCode code = IGetReadableData(sharedDataMinor, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, DEFAULT_DATA);
IShareDataFree(sharedDataMinor);
}
if (nullptr != sharedDataPrimary) {
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.UNIT_SharedData_DEME_Demo9
TEST(SharedDataTest, UNIT_SharedData_DEME_Demo9)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
ISetWritableData(sharedDataPrimary, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataMinor) {
constexpr int DEFAULT_DATA = 0;
int readableData = DEFAULT_DATA;
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int) * 2);
StatusCode code = IGetReadableData(sharedDataMinor, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, DEFAULT_DATA);
IShareDataFree(sharedDataMinor);
}
if (nullptr != sharedDataPrimary) {
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.UNIT_SharedData_DEME_Demo10
TEST(SharedDataTest, UNIT_SharedData_DEME_Demo10)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
if (nullptr != sharedDataPrimary) {
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
ISetWritableData(sharedDataPrimary, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataMinor) {
int readableData[2] = {0};
IMakeSharedData(sharedDataMinor, sizeof(int) * 2, sizeof(int));
StatusCode code = IGetReadableData(sharedDataMinor, readableData, sizeof(readableData));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_NE(code.mStatusCode, STATUS_CODE_OK);
IShareDataFree(sharedDataMinor);
}
if (nullptr != sharedDataPrimary) {
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
// ../output_files/test/bin/SharedDataTest --gtest_filter=SharedDataTest.UNIT_SharedData_DEME_Demo11
TEST(SharedDataTest, UNIT_SharedData_DEME_Demo11)
{
constexpr int WRITABLE_DATA = 189;
CreateLogModule();
ILogInit(LOG_INSTANCE_TYPE_END);
constexpr int PROJECT_ID = 9;
SharedData *sharedDataPrimary = CreateSharedData(SHARER_NAME_PRIMARY, "./shared_file", PROJECT_ID);
SharedData *sharedDataMinor = CreateSharedData(SHARER_NAME_MINOR, "./shared_file", PROJECT_ID);
IMakeSharedData(sharedDataMinor, sizeof(int), sizeof(int));
if (nullptr != sharedDataPrimary) {
IMakeSharedData(sharedDataPrimary, sizeof(int), sizeof(int));
ISetWritableData(sharedDataPrimary, (void *)&WRITABLE_DATA, sizeof(int));
}
if (nullptr != sharedDataMinor) {
int readableData = 0;
StatusCode code = IGetReadableData(sharedDataMinor, &readableData, sizeof(int));
PrintStringCode(code);
LogInfo("readableData = %d\n", readableData);
EXPECT_EQ(code.mStatusCode, STATUS_CODE_OK);
EXPECT_EQ(readableData, 189);
IShareDataFree(sharedDataMinor);
}
if (nullptr != sharedDataPrimary) {
IShareDataFree(sharedDataPrimary);
}
ILogUnInit();
}
} // namespace SharedDataTest