diff options
Diffstat (limited to 'ipc/ipc_unit_test')
-rw-r--r-- | ipc/ipc_unit_test/CMakeLists.txt | 22 | ||||
-rw-r--r-- | ipc/ipc_unit_test/ipc_unit_test_client.c | 171 | ||||
-rw-r--r-- | ipc/ipc_unit_test/ipc_unit_test_common.c | 100 | ||||
-rw-r--r-- | ipc/ipc_unit_test/ipc_unit_test_common.h | 34 | ||||
-rw-r--r-- | ipc/ipc_unit_test/ipc_unit_test_server.c | 218 |
5 files changed, 0 insertions, 545 deletions
diff --git a/ipc/ipc_unit_test/CMakeLists.txt b/ipc/ipc_unit_test/CMakeLists.txt deleted file mode 100644 index 944ad0b..0000000 --- a/ipc/ipc_unit_test/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright (c) 2021, Nippon Seiki Co., Ltd. -# SPDX-License-Identifier: Apache-2.0 - -# Define project Targets -set(TEST_CLIENT_NAME ipc_unit_test_client) -set(TEST_SERVER_NAME ipc_unit_test_server) - -add_executable(${TEST_CLIENT_NAME} ipc_unit_test_client.c ipc_unit_test_common.c) -target_link_libraries(${TEST_CLIENT_NAME} ${TARGET_NAME}) -target_include_directories(${TEST_CLIENT_NAME} PRIVATE - ./ - $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include> -) - -add_executable(${TEST_SERVER_NAME} ipc_unit_test_server.c ipc_unit_test_common.c) -target_link_libraries(${TEST_SERVER_NAME} ${TARGET_NAME}) -target_include_directories(${TEST_SERVER_NAME} PRIVATE - ./ - $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include> -) - - diff --git a/ipc/ipc_unit_test/ipc_unit_test_client.c b/ipc/ipc_unit_test/ipc_unit_test_client.c deleted file mode 100644 index f6e2f5c..0000000 --- a/ipc/ipc_unit_test/ipc_unit_test_client.c +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Copyright (c) 2021, Nippon Seiki Co., Ltd. - * SPDX-License-Identifier: Apache-2.0 - * - * 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 <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <stdbool.h> -#include <unistd.h> -#include <ipc.h> - -#include "ipc_unit_test_common.h" - -IPC_DATA_IC_SERVICE_S g_dataIcService; - -static void changeNotifyCb(void* pData, signed int size, int kind); -static void helpPrint(void); -static void listPrint(void); - -int main(void) -{ - IPC_RET_E ret; - char command[10]; - char dummy[10]; - bool isRunning = true; - signed int size; - char *pRetStr; - - memset(&g_dataIcService, 0, sizeof(g_dataIcService)); - - ret = ipcClientStart(IPC_USAGE_TYPE_IC_SERVICE); - if (ret != IPC_RET_OK) { - printf("ipcClientStart Error:%d\n", ret); - goto end; - } - - ret = ipcRegisterCallback(IPC_USAGE_TYPE_IC_SERVICE, changeNotifyCb); - if (ret != IPC_RET_OK) { - printf("ipcRegisterCallback Error:%d\n", ret); - goto end; - } - - while(isRunning) { - printf("command (h=help, q=quit):"); - pRetStr = fgets(command, 10, stdin); - if (pRetStr == NULL) { - continue; - } - memcpy(dummy, command, 10); - - while(strlen(dummy) == 9 && dummy[8] != '\n') { - pRetStr = fgets(dummy, 10, stdin); - if (pRetStr == NULL) { - break; - } - } - - command[strlen(command)-1] = '\0'; - - switch(command[0]) { - case 'h': - helpPrint(); - break; - case 'q': - isRunning = false; - break; - case 'r': - size = sizeof(g_dataIcService); - ret = ipcReadDataPool(IPC_USAGE_TYPE_IC_SERVICE, &g_dataIcService, &size); - printf("ipcReadDataPool return:%d\n", ret); - listPrint(); - break; - default: - break; - } - } - -end: - ipcClientStop(IPC_USAGE_TYPE_IC_SERVICE); - printf("bye...\n"); - sleep(1); - - return 0; -} - -static void changeNotifyCb(void* pData, signed int size, int kind) -{ - signed long longVal; - signed int intVal; - signed short shortVal; - signed char charVal; - - printf("Enter %s\n", __func__); - - switch(size) { - case 8: - longVal = *((signed long*)pData); - printf("kind = %d, size = %d, data=%ld\n", kind, size, longVal); - break; - case 4: - intVal = *((signed int*)pData); - printf("kind = %d, size = %d, data=%d\n", kind, size, intVal); - break; - case 2: - shortVal = *((signed short *)pData); - printf("kind = %d, size = %d, data=%d\n", kind, size, shortVal); - break; - default: - charVal = *((signed char *)pData); - printf("kind = %d, size = %d, data=%d\n", kind, size, charVal); - break; - } - printf("Leave %s\n", __func__); - return; -} - -static void helpPrint(void) -{ - printf("\n-----------\n"); - printf("'h' : help\n"); - printf("'q' : quit\n"); - printf("'r' : read from Client data pool\n"); - printf("-----------\n\n"); -} - -static void listPrint(void) -{ - int i; - signed long longVal; - signed int intVal; - signed short shortVal; - signed char charVal; - void *pValue; - - for (i = 0; i < IC_SERVICE_LIST_NUM; i++) { - pValue = (void *)&g_dataIcService + IcServiceList[i].offset; - switch(IcServiceList[i].size) { - case 8: - longVal = *((signed long*)pValue); - printf("%3d: %s(%d) = %ld\n", i, IcServiceList[i].name, IcServiceList[i].size, longVal); - break; - case 4: - intVal = *((signed int*)pValue); - printf("%3d: %s(%d) = %d\n", i, IcServiceList[i].name, IcServiceList[i].size, intVal); - break; - case 2: - shortVal = *((signed short *)pValue); - printf("%3d: %s(%d) = %d\n", i, IcServiceList[i].name, IcServiceList[i].size, shortVal); - break; - default: - charVal = *((signed char *)pValue); - printf("%3d: %s(%d) = %d\n", i, IcServiceList[i].name, IcServiceList[i].size, charVal); - break; - } - } -} - diff --git a/ipc/ipc_unit_test/ipc_unit_test_common.c b/ipc/ipc_unit_test/ipc_unit_test_common.c deleted file mode 100644 index 05169bf..0000000 --- a/ipc/ipc_unit_test/ipc_unit_test_common.c +++ /dev/null @@ -1,100 +0,0 @@ -/* - * Copyright (c) 2021, Nippon Seiki Co., Ltd. - * SPDX-License-Identifier: Apache-2.0 - * - * 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 <ipc.h> -#include "ipc_unit_test_common.h" - -IPC_UNIT_TEST_DATA_LIST IcServiceList[] = { - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, turnR), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, turnL), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, brake), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, seatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, frontRightSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, frontCenterSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, frontLeftSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, mid1RightSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, mid1CenterSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, mid1LeftSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, mid2RightSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, mid2CenterSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, mid2LeftSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, rearRightSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, rearCenterSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, rearLeftSeatbelt), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, highbeam), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, door), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, frontRightDoor), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, frontLeftDoor), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, rearRightDoor), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, rearLeftDoor), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, trunkDoor), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, hoodDoor), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, eps), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, srsAirbag), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, abs), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, lowBattery), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, oilPress), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, engine), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, fuel), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, immobi), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, tmFail), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, espAct), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, espOff), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, adaptingLighting), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, autoStop), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, autoStopFail), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, parkingLights), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, frontFog), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, exteriorLightFault), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, accFail), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, ldwOff), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, hillDescent), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, autoHiBeamGreen), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, autoHiBeamAmber), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, sportsMode), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, ldwOperate), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, generalWarn), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, drivingPowerMode), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, hotTemp), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, lowTemp), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, gearAtVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, gearMtVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, spAnalogVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, spAnaDigUnitVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, taAnalogVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, trcomTripAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, trcomTripBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, trcomOdoVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, trcomUnitVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, avgSpeedAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, avgSpeedBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, hourAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, hourBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, minuteAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, minuteBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, secondAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, secondBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, oTempVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, oTempUnitVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, cruRangeVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, avgFuelAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, avgFuelBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, insFuelAVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, insFuelBVal), - DEFINE_STRUCT_DATA(IPC_DATA_IC_SERVICE_S, fuelEconomyUnitVal) -}; - diff --git a/ipc/ipc_unit_test/ipc_unit_test_common.h b/ipc/ipc_unit_test/ipc_unit_test_common.h deleted file mode 100644 index e0a3ed5..0000000 --- a/ipc/ipc_unit_test/ipc_unit_test_common.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2021, Nippon Seiki Co., Ltd. - * SPDX-License-Identifier: Apache-2.0 - * - * 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. - */ - -#ifndef IPC_UNIT_TEST_COMMON_H -#define IPC_UNIT_TEST_COMMON_H -#include <stddef.h> - -#define DEFINE_STRUCT_DATA(struct_name, member) \ - {#member, offsetof(struct_name, member), sizeof(((struct_name *)0)->member)} -#define IC_SERVICE_LIST_NUM (77) - -typedef struct { - const char *name; - int offset; - int size; -} IPC_UNIT_TEST_DATA_LIST; - -extern IPC_UNIT_TEST_DATA_LIST IcServiceList[]; - -#endif // IPC_UNIT_TEST_COMMON_H diff --git a/ipc/ipc_unit_test/ipc_unit_test_server.c b/ipc/ipc_unit_test/ipc_unit_test_server.c deleted file mode 100644 index f627dca..0000000 --- a/ipc/ipc_unit_test/ipc_unit_test_server.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Copyright (c) 2021, Nippon Seiki Co., Ltd. - * SPDX-License-Identifier: Apache-2.0 - * - * 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 <stdio.h> -#include <string.h> -#include <stdlib.h> -#include <unistd.h> -#include <stdbool.h> - -#include <ipc.h> - -#include "ipc_unit_test_common.h" - -static void helpPrint(void); -static void helpWritePrint(void); -static void listPrint(void); -static void writeData(void); -static void writeDataToStruct(int id, long value); - -IPC_DATA_IC_SERVICE_S g_dataIcService; - -int main(void) -{ - IPC_RET_E ret; - char command[10]; - char dummy[10]; - bool isRunning = true; - char *pRetStr; - - memset(&g_dataIcService, 0, sizeof(g_dataIcService)); - - ret = ipcServerStart(IPC_USAGE_TYPE_IC_SERVICE); - if (ret != IPC_RET_OK) { - printf("ipcServerStart Error:%d\n", ret); - goto end; - } - - while(isRunning) { - printf("command (h=help, q=quit):"); - pRetStr = fgets(command, 10, stdin); - if (pRetStr == NULL) { - continue; - } - memcpy(dummy, command, 10); - - while(strlen(dummy) == 9 && dummy[8] != '\n') { - pRetStr = fgets(dummy, 10, stdin); - if (pRetStr == NULL) { - break; - } - } - - command[strlen(command)-1] = '\0'; - - switch(command[0]) { - case 'h': - helpPrint(); - break; - case 'q': - isRunning = false; - break; - case 'l': - listPrint(); - break; - case 'w': - writeData(); - break; - case 's': - ret = ipcSendMessage(IPC_USAGE_TYPE_IC_SERVICE, (const void*)&g_dataIcService, sizeof(g_dataIcService)); - printf("ipcSendMessage return:%d\n", ret); - break; - default: - break; - } - } - -end: - ipcServerStop(IPC_USAGE_TYPE_IC_SERVICE); - printf("bye...\n"); - sleep(1); - - return 0; -} - -static void helpPrint(void) -{ - printf("\n-----------\n"); - printf("'h' : help\n"); - printf("'q' : quit\n"); - printf("'l' : list of Server data\n"); - printf("'w' : write to Server data\n"); - printf("'s' : send data to Client\n"); - printf("-----------\n\n"); -} - -static void listPrint(void) -{ - int i; - signed long longVal; - signed int intVal; - signed short shortVal; - signed char charVal; - void *pValue; - - for (i = 0; i < IC_SERVICE_LIST_NUM; i++) { - pValue = (void *)&g_dataIcService + IcServiceList[i].offset; - switch(IcServiceList[i].size) { - case 8: - longVal = *((signed long*)pValue); - printf("%3d: %s(%d) = %ld\n", i, IcServiceList[i].name, IcServiceList[i].size, longVal); - break; - case 4: - intVal = *((signed int*)pValue); - printf("%3d: %s(%d) = %d\n", i, IcServiceList[i].name, IcServiceList[i].size, intVal); - break; - case 2: - shortVal = *((signed short *)pValue); - printf("%3d: %s(%d) = %d\n", i, IcServiceList[i].name, IcServiceList[i].size, shortVal); - break; - default: - charVal = *((signed char *)pValue); - printf("%3d: %s(%d) = %d\n", i, IcServiceList[i].name, IcServiceList[i].size, charVal); - break; - } - } -} - -static void writeData(void) -{ - char command[40]; - char dummy[40]; - bool isRunning = true; - int i; - - int id; - long value; - - char *pRetStr; - - while(isRunning) { - printf("write command (h=help q=goto main menu):"); - pRetStr = fgets(command, 40, stdin); - if (pRetStr == NULL) { - continue; - } - memcpy(dummy, command, 40); - - while(strlen(dummy) == 39 && dummy[38] != '\n') { - pRetStr = fgets(dummy, 40, stdin); - if (pRetStr == NULL) { - break; - } - } - - command[strlen(command)-1] = '\0'; - switch(command[0]) { - case 'h': - helpWritePrint(); - break; - case 'q': - isRunning = false; - break; - case 'l': - listPrint(); - break; - default: - // write data - id = (int)strtol(command, NULL, 0); - value = 0; - for (i = 0; i < strlen(command); i++) { - if (command[i] == ' ') { - value = (int)strtol(&command[i], NULL, 0); - } - } - writeDataToStruct(id, value); - } - } -} - -static void helpWritePrint(void) -{ - printf("\n-----------\n"); - printf("'h' : help\n"); - printf("'q' : goto main menu\n"); - printf("'l' : list of Server data\n"); - printf("<ID> <value>: write data\n"); - printf(" ex)\n"); - printf(" write command 2 4\n"); - printf(" -> 2: brake = 4\n"); - printf("-----------\n\n"); -} - -static void writeDataToStruct(int id, long value) -{ - void *pValue; - - if (id < 0 || IC_SERVICE_LIST_NUM < id) { - return; - } - - pValue = (void *)&g_dataIcService + IcServiceList[id].offset; - memcpy(pValue, (void *)&value, IcServiceList[id].size); -} - |