From 2e69662c5ce85633dc3f709296893dfaa175a8d3 Mon Sep 17 00:00:00 2001 From: havencarlson Date: Tue, 30 Aug 2022 13:24:16 -0400 Subject: [PATCH 1/2] Fix #4, Consolidate common patterns in sc_app.c --- fsw/src/sc_app.c | 215 +++++++++++++++++---------------------- fsw/src/sc_app.h | 4 + unit-test/sc_app_tests.c | 64 ++++++++---- 3 files changed, 144 insertions(+), 139 deletions(-) diff --git a/fsw/src/sc_app.c b/fsw/src/sc_app.c index e6e2147..2c9dc20 100644 --- a/fsw/src/sc_app.c +++ b/fsw/src/sc_app.c @@ -306,61 +306,60 @@ int32 SC_InitTables(void) int32 SC_RegisterAllTables(void) { - int i; - int32 Result; - int32 TableSize; - uint16 TableOptions; - char TableName[CFE_MISSION_TBL_MAX_NAME_LENGTH]; - - /* Set table options for dump only tables */ - TableOptions = (CFE_TBL_OPT_DEFAULT | CFE_TBL_OPT_SNGL_BUFFER | CFE_TBL_OPT_DUMP_ONLY); - - /* Register dump only RTS information table */ - TableSize = sizeof(SC_RtsInfoEntry_t) * SC_NUMBER_OF_RTS; - Result = CFE_TBL_Register(&SC_OperData.RtsInfoHandle, SC_RTSINFO_TABLE_NAME, TableSize, TableOptions, NULL); - if (Result != CFE_SUCCESS) - { - CFE_EVS_SendEvent(SC_REGISTER_RTS_INFO_TABLE_ERR_EID, CFE_EVS_EventType_ERROR, - "RTS info table register failed, returned: 0x%08X", (unsigned int)Result); - return (Result); - } + int32 Result; - /* Register dump only RTP control block table */ - TableSize = sizeof(SC_RtpControlBlock_t); - Result = CFE_TBL_Register(&SC_OperData.RtsCtrlBlckHandle, SC_RTP_CTRL_TABLE_NAME, TableSize, TableOptions, NULL); + Result = SC_RegisterDumpOnlyTables(); if (Result != CFE_SUCCESS) { - CFE_EVS_SendEvent(SC_REGISTER_RTS_CTRL_BLK_TABLE_ERR_EID, CFE_EVS_EventType_ERROR, - "RTS control block table register failed, returned: 0x%08X", (unsigned int)Result); return (Result); } - /* Register dump only ATS information table */ - TableSize = sizeof(SC_AtsInfoTable_t) * SC_NUMBER_OF_ATS; - Result = CFE_TBL_Register(&SC_OperData.AtsInfoHandle, SC_ATSINFO_TABLE_NAME, TableSize, TableOptions, NULL); + Result = SC_RegisterLoadableTables(); if (Result != CFE_SUCCESS) { - CFE_EVS_SendEvent(SC_REGISTER_ATS_INFO_TABLE_ERR_EID, CFE_EVS_EventType_ERROR, - "ATS Info table register failed, returned: 0x%08X", (unsigned int)Result); return (Result); } - /* Register dump only ATP control block table */ - TableSize = sizeof(SC_AtpControlBlock_t); - Result = CFE_TBL_Register(&SC_OperData.AtsCtrlBlckHandle, SC_ATS_CTRL_TABLE_NAME, TableSize, TableOptions, NULL); - if (Result != CFE_SUCCESS) - { - CFE_EVS_SendEvent(SC_REGISTER_ATS_CTRL_BLK_TABLE_ERR_EID, CFE_EVS_EventType_ERROR, - "ATS control block table register failed, returned: 0x%08X", (unsigned int)Result); - return (Result); + return (CFE_SUCCESS); + +} /* end SC_RegisterAllTables() */ + +int32 SC_RegisterDumpOnlyTables(void) +{ + int i; + int32 Result; + char TableName[CFE_MISSION_TBL_MAX_NAME_LENGTH]; + + CFE_TBL_Handle_t *TblHandlePtr[4] = {&SC_OperData.RtsInfoHandle, &SC_OperData.RtsCtrlBlckHandle, + &SC_OperData.AtsInfoHandle, &SC_OperData.AtsCtrlBlckHandle}; + const char * Name[4] = {SC_RTSINFO_TABLE_NAME, SC_RTP_CTRL_TABLE_NAME, SC_ATSINFO_TABLE_NAME, + SC_ATS_CTRL_TABLE_NAME}; + int32 TableSize[4] = {sizeof(SC_RtsInfoEntry_t) * SC_NUMBER_OF_RTS, sizeof(SC_RtpControlBlock_t), + sizeof(SC_AtsInfoTable_t) * SC_NUMBER_OF_ATS, sizeof(SC_AtpControlBlock_t)}; + uint16 EventID[4] = {SC_REGISTER_RTS_INFO_TABLE_ERR_EID, SC_REGISTER_RTS_CTRL_BLK_TABLE_ERR_EID, + SC_REGISTER_ATS_INFO_TABLE_ERR_EID, SC_REGISTER_ATS_CTRL_BLK_TABLE_ERR_EID}; + const char * Spec[4] = {"RTS info", "RTS control block", "ATS Info", "ATS control block"}; + uint16 TableOptions = (CFE_TBL_OPT_DEFAULT | CFE_TBL_OPT_SNGL_BUFFER | CFE_TBL_OPT_DUMP_ONLY); + + for (i = 0; i < 4; i++) + { + /* Register dump only table */ + Result = CFE_TBL_Register(TblHandlePtr[i], Name[i], TableSize[i], TableOptions, NULL); + if (Result != CFE_SUCCESS) + { + CFE_EVS_SendEvent(EventID[i], CFE_EVS_EventType_ERROR, "%s table register failed, returned: 0x%08X", + Spec[i], (unsigned int)Result); + return (Result); + } } /* Register dump only ATS command status tables */ - TableSize = SC_MAX_ATS_CMDS * sizeof(uint32); for (i = 0; i < SC_NUMBER_OF_ATS; i++) { snprintf(TableName, CFE_MISSION_TBL_MAX_NAME_LENGTH, "%s%d", SC_ATS_CMD_STAT_TABLE_NAME, i + 1); - Result = CFE_TBL_Register(&SC_OperData.AtsCmdStatusHandle[i], TableName, TableSize, TableOptions, NULL); + Result = CFE_TBL_Register(&SC_OperData.AtsCmdStatusHandle[i], TableName, SC_MAX_ATS_CMDS * sizeof(uint32), + TableOptions, NULL); + if (Result != CFE_SUCCESS) { CFE_EVS_SendEvent(SC_REGISTER_ATS_CMD_STATUS_TABLE_ERR_EID, CFE_EVS_EventType_ERROR, @@ -370,43 +369,47 @@ int32 SC_RegisterAllTables(void) } } - /* Register loadable RTS tables */ - TableOptions = CFE_TBL_OPT_DEFAULT | CFE_TBL_OPT_SNGL_BUFFER; - TableSize = SC_RTS_BUFF_SIZE32 * SC_BYTES_IN_WORD; - for (i = 0; i < SC_NUMBER_OF_RTS; i++) - { - snprintf(TableName, CFE_MISSION_TBL_MAX_NAME_LENGTH, "%s%03d", SC_RTS_TABLE_NAME, i + 1); - Result = CFE_TBL_Register(&SC_OperData.RtsTblHandle[i], TableName, TableSize, TableOptions, SC_ValidateRts); - if (Result != CFE_SUCCESS) - { - CFE_EVS_SendEvent(SC_REGISTER_RTS_TBL_ERR_EID, CFE_EVS_EventType_ERROR, - "RTS Table Registration Failed for RTS %d, returned: 0x%08X", i + 1, - (unsigned int)Result); - return (Result); - } - } + return (CFE_SUCCESS); - /* Register loadable ATS tables */ - TableOptions = CFE_TBL_OPT_DBL_BUFFER; - TableSize = SC_ATS_BUFF_SIZE32 * SC_BYTES_IN_WORD; - for (i = 0; i < SC_NUMBER_OF_ATS; i++) +} /* end SC_RegisterDumpOnlyTables() */ + +int32 SC_RegisterLoadableTables(void) +{ + int i, j; + int32 Result; + char TableName[CFE_MISSION_TBL_MAX_NAME_LENGTH]; + + uint16 NumTables[2] = {SC_NUMBER_OF_RTS, SC_NUMBER_OF_ATS}; + const char * StrFormat[2] = {"%s%03d", "%s%d"}; + const char * Name[2] = {SC_RTS_TABLE_NAME, SC_ATS_TABLE_NAME}; + CFE_TBL_Handle_t *TblHandlePtr[2] = {SC_OperData.RtsTblHandle, SC_OperData.AtsTblHandle}; + int32 TableSize[2] = {SC_RTS_BUFF_SIZE32 * SC_BYTES_IN_WORD, SC_ATS_BUFF_SIZE32 * SC_BYTES_IN_WORD}; + uint16 TableOptions[2] = {(CFE_TBL_OPT_DEFAULT | CFE_TBL_OPT_SNGL_BUFFER), CFE_TBL_OPT_DBL_BUFFER}; + uint16 EventID[2] = {SC_REGISTER_RTS_TBL_ERR_EID, SC_REGISTER_ATS_TBL_ERR_EID}; + const char * Spec[2] = {"RTS", "ATS"}; + CFE_TBL_CallbackFuncPtr_t TblValidationFuncPtr[2] = {SC_ValidateRts, SC_ValidateAts}; + + for (i = 0; i < 2; i++) { - snprintf(TableName, CFE_MISSION_TBL_MAX_NAME_LENGTH, "%s%d", SC_ATS_TABLE_NAME, i + 1); - Result = CFE_TBL_Register(&SC_OperData.AtsTblHandle[i], TableName, TableSize, TableOptions, SC_ValidateAts); - if (Result != CFE_SUCCESS) + for (j = 0; j < NumTables[i]; j++) { - CFE_EVS_SendEvent(SC_REGISTER_ATS_TBL_ERR_EID, CFE_EVS_EventType_ERROR, - "ATS Table Registration Failed for ATS %d, returned: 0x%08X", i + 1, - (unsigned int)Result); - return (Result); + snprintf(TableName, CFE_MISSION_TBL_MAX_NAME_LENGTH, StrFormat[i], Name[i], j + 1); + Result = CFE_TBL_Register(&TblHandlePtr[i][j], TableName, TableSize[i], TableOptions[i], + TblValidationFuncPtr[i]); + + if (Result != CFE_SUCCESS) + { + CFE_EVS_SendEvent(EventID[i], CFE_EVS_EventType_ERROR, + "Table Registration Failed for %s %d, returned: 0x%08X", Spec[i], j + 1, + (unsigned int)Result); + return (Result); + } } } /* Register loadable Append ATS table */ - TableOptions = CFE_TBL_OPT_DBL_BUFFER; - TableSize = SC_APPEND_BUFF_SIZE32 * SC_BYTES_IN_WORD; - Result = CFE_TBL_Register(&SC_OperData.AppendTblHandle, SC_APPEND_TABLE_NAME, TableSize, TableOptions, - SC_ValidateAppend); + Result = CFE_TBL_Register(&SC_OperData.AppendTblHandle, SC_APPEND_TABLE_NAME, + SC_APPEND_BUFF_SIZE32 * SC_BYTES_IN_WORD, CFE_TBL_OPT_DBL_BUFFER, SC_ValidateAppend); if (Result != CFE_SUCCESS) { CFE_EVS_SendEvent(SC_REGISTER_APPEND_TBL_ERR_EID, CFE_EVS_EventType_ERROR, @@ -416,7 +419,7 @@ int32 SC_RegisterAllTables(void) return (CFE_SUCCESS); -} /* end SC_RegisterAllTables() */ +} /* end SC_RegisterLoadableTables() */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ /* */ @@ -429,40 +432,22 @@ int32 SC_GetDumpTablePointers(void) int i; int32 Result; - /* Get buffer address for dump only RTS information table */ - Result = CFE_TBL_GetAddress((void **)&SC_OperData.RtsInfoTblAddr, SC_OperData.RtsInfoHandle); - if (Result != CFE_SUCCESS) - { - CFE_EVS_SendEvent(SC_GET_ADDRESS_RTS_INFO_ERR_EID, CFE_EVS_EventType_ERROR, - "RTS Info table failed Getting Address, returned: 0x%08X", (unsigned int)Result); - return (Result); - } - - /* Get buffer address for dump only RTP control block table */ - Result = CFE_TBL_GetAddress((void **)&SC_OperData.RtsCtrlBlckAddr, SC_OperData.RtsCtrlBlckHandle); - if (Result != CFE_SUCCESS) - { - CFE_EVS_SendEvent(SC_GET_ADDRESS_RTS_CTRL_BLCK_ERR_EID, CFE_EVS_EventType_ERROR, - "RTS Ctrl Blck table failed Getting Address, returned: 0x%08X", (unsigned int)Result); - return (Result); - } - - /* Get buffer address for dump only ATS information table */ - Result = CFE_TBL_GetAddress((void **)&SC_OperData.AtsInfoTblAddr, SC_OperData.AtsInfoHandle); - if (Result != CFE_SUCCESS) - { - CFE_EVS_SendEvent(SC_GET_ADDRESS_ATS_INFO_ERR_EID, CFE_EVS_EventType_ERROR, - "ATS Info table failed Getting Address, returned: 0x%08X", (unsigned int)Result); - return (Result); - } + void ** TblAddr[4] = {(void **)&SC_OperData.RtsInfoTblAddr, (void **)&SC_OperData.RtsCtrlBlckAddr, + (void **)&SC_OperData.AtsInfoTblAddr, (void **)&SC_OperData.AtsCtrlBlckAddr}; + CFE_TBL_Handle_t TblHandle[4] = {SC_OperData.RtsInfoHandle, SC_OperData.RtsCtrlBlckHandle, + SC_OperData.AtsInfoHandle, SC_OperData.AtsCtrlBlckHandle}; + uint16 EventID[4] = {SC_GET_ADDRESS_RTS_INFO_ERR_EID, SC_GET_ADDRESS_RTS_CTRL_BLCK_ERR_EID, + SC_GET_ADDRESS_ATS_INFO_ERR_EID, SC_GET_ADDRESS_ATS_CTRL_BLCK_ERR_EID}; - /* Get buffer address for dump only ATP control block table */ - Result = CFE_TBL_GetAddress((void **)&SC_OperData.AtsCtrlBlckAddr, SC_OperData.AtsCtrlBlckHandle); - if (Result != CFE_SUCCESS) + for (i = 0; i < 4; i++) { - CFE_EVS_SendEvent(SC_GET_ADDRESS_ATS_CTRL_BLCK_ERR_EID, CFE_EVS_EventType_ERROR, - "ATS Ctrl Blck table failed Getting Address, returned: 0x%08X", (unsigned int)Result); - return (Result); + Result = CFE_TBL_GetAddress(TblAddr[i], TblHandle[i]); + if (Result != CFE_SUCCESS) + { + CFE_EVS_SendEvent(EventID[i], CFE_EVS_EventType_ERROR, "Table failed Getting Address, returned: 0x%08X", + (unsigned int)Result); + return (Result); + } } /* Get buffer address for dump only ATS command status tables */ @@ -481,7 +466,6 @@ int32 SC_GetDumpTablePointers(void) return (CFE_SUCCESS); } /* end SC_GetDumpTablePointers() */ - /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ /* */ /* Get buffer pointers for loadable tables */ @@ -607,25 +591,16 @@ void SC_RegisterManageCmds(void) { int32 i; - /* Register for RTS info table manage request commands */ - CFE_TBL_NotifyByMessage(SC_OperData.RtsInfoHandle, CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, - SC_TBL_ID_RTS_INFO); - - /* Register for RTS control block table manage request commands */ - CFE_TBL_NotifyByMessage(SC_OperData.RtsCtrlBlckHandle, CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, - SC_TBL_ID_RTP_CTRL); + CFE_TBL_Handle_t TblHandles[5] = {SC_OperData.RtsInfoHandle, SC_OperData.RtsCtrlBlckHandle, + SC_OperData.AtsInfoHandle, SC_OperData.AtsCtrlBlckHandle, + SC_OperData.AppendTblHandle}; + uint32 params[5] = {SC_TBL_ID_RTS_INFO, SC_TBL_ID_RTP_CTRL, SC_TBL_ID_ATS_INFO, SC_TBL_ID_ATP_CTRL, + SC_TBL_ID_APPEND}; - /* Register for ATS info table manage request commands */ - CFE_TBL_NotifyByMessage(SC_OperData.AtsInfoHandle, CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, - SC_TBL_ID_ATS_INFO); - - /* Register for ATS control block table manage request commands */ - CFE_TBL_NotifyByMessage(SC_OperData.AtsCtrlBlckHandle, CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, - SC_TBL_ID_ATP_CTRL); - - /* Register for ATS Append table manage request commands */ - CFE_TBL_NotifyByMessage(SC_OperData.AppendTblHandle, CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, - SC_TBL_ID_APPEND); + for (i = 0; i < 5; i++) + { + CFE_TBL_NotifyByMessage(TblHandles[i], CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, params[i]); + } for (i = 0; i < SC_NUMBER_OF_ATS; i++) { diff --git a/fsw/src/sc_app.h b/fsw/src/sc_app.h index c8a3630..6dd8fea 100644 --- a/fsw/src/sc_app.h +++ b/fsw/src/sc_app.h @@ -105,6 +105,10 @@ int32 SC_InitTables(void); */ int32 SC_RegisterAllTables(void); +int32 SC_RegisterDumpOnlyTables(void); + +int32 SC_RegisterLoadableTables(void); + /** * \brief Get dump only table buffer pointers * diff --git a/unit-test/sc_app_tests.c b/unit-test/sc_app_tests.c index 3678c3e..e9265f9 100644 --- a/unit-test/sc_app_tests.c +++ b/unit-test/sc_app_tests.c @@ -563,8 +563,7 @@ void SC_AppInit_Test_InitTablesError(void) int32 strCmpResult; char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; - snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS info table register failed, returned: 0x%%08X"); + snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, "%%s table register failed, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 in order to reach return statement immediately after * comment "Must be able to create and initialize tables" */ @@ -614,8 +613,7 @@ void SC_InitTables_Test_ErrorRegisterAllTables(void) int32 strCmpResult; char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; - snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS info table register failed, returned: 0x%%08X"); + snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, "%%s table register failed, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 in order to reach return statement immediately after * comment "Must be able to create and initialize tables" */ @@ -648,7 +646,7 @@ void SC_InitTables_Test_ErrorGetDumpTablePointers(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS Info table failed Getting Address, returned: 0x%%08X"); + "Table failed Getting Address, returned: 0x%%08X"); /* Set CFE_TBL_GetAddress to return -1 in order to cause SC_GetDumpTablePointers to return -1, in order to reach * "return(Result)" after SC_GetDumpTablePointers */ @@ -738,8 +736,7 @@ void SC_RegisterAllTables_Test_ErrorRegisterRTSInformation(void) int32 strCmpResult; char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; - snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS info table register failed, returned: 0x%%08X"); + snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, "%%s table register failed, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 on the 1st call in order to generate error message * SC_REGISTER_RTS_INFO_TABLE_ERR_EID */ @@ -771,8 +768,7 @@ void SC_RegisterAllTables_Test_ErrorRegisterRTPControl(void) int32 strCmpResult; char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; - snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS control block table register failed, returned: 0x%%08X"); + snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, "%%s table register failed, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 on the 2nd call in order to generate error message * SC_REGISTER_RTS_CTRL_BLK_TABLE_ERR_EID */ @@ -804,8 +800,7 @@ void SC_RegisterAllTables_Test_ErrorRegisterATSInformation(void) int32 strCmpResult; char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; - snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "ATS Info table register failed, returned: 0x%%08X"); + snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, "%%s table register failed, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 on the 3rd call in order to generate error message * SC_REGISTER_ATS_INFO_TABLE_ERR_EID */ @@ -837,8 +832,7 @@ void SC_RegisterAllTables_Test_ErrorRegisterATPControl(void) int32 strCmpResult; char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; - snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "ATS control block table register failed, returned: 0x%%08X"); + snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, "%%s table register failed, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 on the 4th call in order to generate error message * SC_REGISTER_ATS_CTRL_BLK_TABLE_ERR_EID */ @@ -904,7 +898,7 @@ void SC_RegisterAllTables_Test_ErrorRegisterLoadableRTS(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS Table Registration Failed for RTS %%d, returned: 0x%%08X"); + "Table Registration Failed for %%s %%d, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 on the last call when registering loadable RTS tables in order to generate * error message SC_REGISTER_RTS_TBL_ERR_EID */ @@ -937,7 +931,7 @@ void SC_RegisterAllTables_Test_ErrorRegisterLoadableATS(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "ATS Table Registration Failed for ATS %%d, returned: 0x%%08X"); + "Table Registration Failed for %%s %%d, returned: 0x%%08X"); /* Set CFE_TBL_Register to return -1 on the last call when registering loadable ATS tables in order to generate * error message SC_REGISTER_ATS_TBL_ERR_EID */ @@ -996,6 +990,34 @@ void SC_RegisterAllTables_Test_ErrorRegisterLoadableAppendATS(void) } /* end SC_RegisterAllTables_Test_ErrorRegisterLoadableAppendATS */ +void SC_RegisterDumpOnlyTables_Test_Nominal(void) +{ + int32 ReturnValue; + + /* Execute the function being tested */ + ReturnValue = SC_RegisterDumpOnlyTables(); + + /* Verify results */ + UtAssert_True(ReturnValue == CFE_SUCCESS, "ReturnValue == CFE_SUCCESS"); + UtAssert_STUB_COUNT(CFE_TBL_Register, 6); + UtAssert_STUB_COUNT(CFE_EVS_SendEvent, 0); + +} /* end SC_RegisterDumpOnlyTables_Test_Nominal */ + +void SC_RegisterLoadableTables_Test_Nominal(void) +{ + int32 ReturnValue; + + /* Execute the function being tested */ + ReturnValue = SC_RegisterLoadableTables(); + + /* Verify results */ + UtAssert_True(ReturnValue == CFE_SUCCESS, "ReturnValue == CFE_SUCCESS"); + UtAssert_STUB_COUNT(CFE_TBL_Register, 67); + UtAssert_STUB_COUNT(CFE_EVS_SendEvent, 0); + +} /* end SC_RegisterLoadableTables_Test_Nominal */ + void SC_GetDumpTablePointers_Test_Nominal(void) { int32 ReturnValue; @@ -1022,7 +1044,7 @@ void SC_GetDumpTablePointers_Test_ErrorGetAddressRTSInformation(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS Info table failed Getting Address, returned: 0x%%08X"); + "Table failed Getting Address, returned: 0x%%08X"); /* Need to set CFE_TBL_GetAddress to return -1 on 1st call (to generate error message * SC_GET_ADDRESS_RTS_INFO_ERR_EID) and CFE_SUCCESS on all other calls. This could have been done using just a hook @@ -1059,7 +1081,7 @@ void SC_GetDumpTablePointers_Test_ErrorGetAddressRTPControl(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "RTS Ctrl Blck table failed Getting Address, returned: 0x%%08X"); + "Table failed Getting Address, returned: 0x%%08X"); /* Need to set CFE_TBL_GetAddress to return -1 on 2nd call (to generate error message * SC_GET_ADDRESS_RTS_CTRL_BLCK_ERR_EID) */ @@ -1091,7 +1113,7 @@ void SC_GetDumpTablePointers_Test_ErrorGetAddressATSInformation(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "ATS Info table failed Getting Address, returned: 0x%%08X"); + "Table failed Getting Address, returned: 0x%%08X"); /* Need to set CFE_TBL_GetAddress to return -1 on 3rd call (to generate error message * SC_GET_ADDRESS_ATS_INFO_ERR_EID) */ @@ -1123,7 +1145,7 @@ void SC_GetDumpTablePointers_Test_ErrorGetAddressATPControl(void) char ExpectedEventString[CFE_MISSION_EVS_MAX_MESSAGE_LENGTH]; snprintf(ExpectedEventString, CFE_MISSION_EVS_MAX_MESSAGE_LENGTH, - "ATS Ctrl Blck table failed Getting Address, returned: 0x%%08X"); + "Table failed Getting Address, returned: 0x%%08X"); /* Need to set CFE_TBL_GetAddress to return -1 on 5th call (to generate error message * SC_GET_ADDRESS_ATS_CTRL_BLCK_ERR_EID) */ @@ -1365,6 +1387,10 @@ void UtTest_Setup(void) "SC_RegisterAllTables_Test_ErrorRegisterLoadableATS"); UtTest_Add(SC_RegisterAllTables_Test_ErrorRegisterLoadableAppendATS, SC_Test_Setup, SC_Test_TearDown, "SC_RegisterAllTables_Test_ErrorRegisterLoadableAppendATS"); + UtTest_Add(SC_RegisterDumpOnlyTables_Test_Nominal, SC_Test_Setup, SC_Test_TearDown, + "SC_RegisterDumpOnlyTables_Test_Nominal"); + UtTest_Add(SC_RegisterLoadableTables_Test_Nominal, SC_Test_Setup, SC_Test_TearDown, + "SC_RegisterLoadableTables_Test_Nominal"); UtTest_Add(SC_GetDumpTablePointers_Test_Nominal, SC_Test_Setup, SC_Test_TearDown, "SC_GetDumpTablePointers_Test_Nominal"); UtTest_Add(SC_GetDumpTablePointers_Test_ErrorGetAddressRTSInformation, SC_Test_Setup, SC_Test_TearDown, From 4fd6e6a24c0963d3d959049ef15f1bdd41c60c98 Mon Sep 17 00:00:00 2001 From: Avi Date: Wed, 28 Sep 2022 18:45:38 +1000 Subject: [PATCH 2/2] Fix #56, Remove 'return;' from last line of void functions. --- fsw/platform_inc/sc_msgids.h | 2 +- fsw/src/sc_app.c | 6 ------ fsw/src/sc_cmds.c | 3 --- fsw/src/sc_events.h | 32 ++++++++++++++++---------------- fsw/src/sc_loads.c | 7 +------ fsw/src/sc_rtsrq.c | 12 ------------ 6 files changed, 18 insertions(+), 44 deletions(-) diff --git a/fsw/platform_inc/sc_msgids.h b/fsw/platform_inc/sc_msgids.h index 9187b42..932a5b2 100644 --- a/fsw/platform_inc/sc_msgids.h +++ b/fsw/platform_inc/sc_msgids.h @@ -31,7 +31,7 @@ #define SC_CMD_MID (0x18A9) /**< \brief Msg ID for cmds to SC */ #define SC_SEND_HK_MID (0x18AA) /**< \brief Msg ID to request SC HK */ -#define SC_1HZ_WAKEUP_MID (0x18AB) /**< \brief Msg ID to recieve the 1Hz */ +#define SC_1HZ_WAKEUP_MID (0x18AB) /**< \brief Msg ID to receive the 1Hz */ /**\}*/ diff --git a/fsw/src/sc_app.c b/fsw/src/sc_app.c index e6e2147..271ee09 100644 --- a/fsw/src/sc_app.c +++ b/fsw/src/sc_app.c @@ -592,9 +592,6 @@ void SC_LoadDefaultTables(void) /* Display startup RTS not loaded count */ CFE_EVS_SendEvent(SC_RTS_LOAD_FAIL_COUNT_INFO_EID, CFE_EVS_EventType_INFORMATION, "RTS table files not loaded at initialization = %d of %d", (int)NotLoadedCount, SC_NUMBER_OF_RTS); - - return; - } /* end SC_LoadDefaultTables() */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ @@ -644,9 +641,6 @@ void SC_RegisterManageCmds(void) CFE_TBL_NotifyByMessage(SC_OperData.RtsTblHandle[i], CFE_SB_ValueToMsgId(SC_CMD_MID), SC_MANAGE_TABLE_CC, SC_TBL_ID_RTS_0 + i); } - - return; - } /* End SC_RegisterManageCmds() */ /************************/ diff --git a/fsw/src/sc_cmds.c b/fsw/src/sc_cmds.c index 747f87a..928ade3 100644 --- a/fsw/src/sc_cmds.c +++ b/fsw/src/sc_cmds.c @@ -770,9 +770,6 @@ void SC_TableManageCmd(const CFE_SB_Buffer_t *BufPtr) CFE_EVS_SendEvent(SC_TABLE_MANAGE_ID_ERR_EID, CFE_EVS_EventType_ERROR, "Table manage command packet error: table ID = %d", (int)TableID); } - - return; - } /* End SC_TableManageCmd() */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ diff --git a/fsw/src/sc_events.h b/fsw/src/sc_events.h index 82dafb9..edcac4a 100644 --- a/fsw/src/sc_events.h +++ b/fsw/src/sc_events.h @@ -47,7 +47,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when a command is recieved, but it is not of the expected + * This event message is issued when a command is received, but it is not of the expected * length */ #define SC_LEN_ERR_EID 2 @@ -417,7 +417,7 @@ * \par Type: DEBUG * * \par Cause: - * This event message is issued when the #SC_CONTINUE_ATS_ON_FAILURE_CC command was recieved and + * This event message is issued when the #SC_CONTINUE_ATS_ON_FAILURE_CC command was received and * the state was changed successfully */ #define SC_CONT_CMD_DEB_EID 43 @@ -495,7 +495,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when an RTS comand was about to be sent out, + * This event message is issued when an RTS command was about to be sent out, * but the command failed checksum validation */ #define SC_RTS_CHKSUM_ERR_EID 50 @@ -571,7 +571,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when an invalid message Id is recieved in the + * This event message is issued when an invalid message Id is received in the * command pipe */ #define SC_MID_ERR_EID 63 @@ -582,7 +582,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when an invalid command code was recieved in + * This event message is issued when an invalid command code was received in * the command pipe */ #define SC_INVLD_CMD_ERR_EID 64 @@ -670,7 +670,7 @@ * \par Type: DEBUG * * \par Cause: - * This event message is issued when a #SC_START_RTS_CC cmd is recieved and is sucessful + * This event message is issued when a #SC_START_RTS_CC cmd is received and is successful */ #define SC_STARTRTS_CMD_DBG_EID 72 @@ -680,7 +680,7 @@ * \par Type: INFORMATIONAL * * \par Cause: - * This event message is issued when an RTS is started sucessfully + * This event message is issued when an RTS is started successfully */ #define SC_RTS_START_INF_EID 73 @@ -711,7 +711,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when a #SC_START_RTS_CC command was recieved, but the + * This event message is issued when a #SC_START_RTS_CC command was received, but the * RTS is disabled */ #define SC_STARTRTS_CMD_DISABLED_ERR_EID 76 @@ -722,7 +722,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when a #SC_START_RTS_CC command was recieved, but the + * This event message is issued when a #SC_START_RTS_CC command was received, but the * RTS Id was invalid */ #define SC_STARTRTS_CMD_INVALID_ERR_EID 77 @@ -733,7 +733,7 @@ * \par Type: INFORMATIONAL * * \par Cause: - * This event message is issued when an #SC_STOP_RTS_CC command is received and exexuted sucessfully + * This event message is issued when an #SC_STOP_RTS_CC command is received and exexuted successfully */ #define SC_STOPRTS_CMD_INF_EID 78 @@ -754,7 +754,7 @@ * \par Type: DEBUG * * \par Cause: - * This event message is issued when a #SC_DISABLE_RTS_CC command was recieved, and executed sucessfully + * This event message is issued when a #SC_DISABLE_RTS_CC command was received, and executed successfully */ #define SC_DISABLE_RTS_DEB_EID 80 @@ -764,7 +764,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when a #SC_DISABLE_RTS_CC command was recieved, + * This event message is issued when a #SC_DISABLE_RTS_CC command was received, * but the RTS Id given was invalid */ #define SC_DISRTS_CMD_ERR_EID 81 @@ -775,7 +775,7 @@ * \par Type: DEBUG * * \par Cause: - * This event message is issued when a #SC_ENABLE_RTS_CC command was recieved, and executed sucessfully + * This event message is issued when a #SC_ENABLE_RTS_CC command was received, and executed successfully */ #define SC_ENABLE_RTS_DEB_EID 82 @@ -785,7 +785,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when a #SC_DISABLE_RTS_CC command was recieved, + * This event message is issued when a #SC_DISABLE_RTS_CC command was received, * but the RTS Id given was invalid */ #define SC_ENARTS_CMD_ERR_EID 83 @@ -945,7 +945,7 @@ #define SC_VERIFY_ATS_EID 103 /** - * \brief SC ATS Or Append Table Verification Table Entry Comamnd Number Invalid Event ID + * \brief SC ATS Or Append Table Verification Table Entry Command Number Invalid Event ID * * \par Type: ERROR * @@ -1226,7 +1226,7 @@ * \par Type: ERROR * * \par Cause: - * This event message is issued when a #SC_START_RTSGRP_CC command was recieved, but an + * This event message is issued when a #SC_START_RTSGRP_CC command was received, but an * RTS is marked as #SC_LOADED */ #define SC_STARTRTSGRP_CMD_NOT_LDED_ERR_EID 126 diff --git a/fsw/src/sc_loads.c b/fsw/src/sc_loads.c index e85be06..e1b2ace 100644 --- a/fsw/src/sc_loads.c +++ b/fsw/src/sc_loads.c @@ -171,7 +171,7 @@ void SC_LoadAts(uint16 AtsIndex) /* ** Now the commands are parsed through, need to build the tables - ** if the load was a sucess, need to build the tables + ** if the load was a success, need to build the tables */ /* if the load finished without errors and there was at least one command */ if ((Result == CFE_SUCCESS) && (SC_OperData.AtsInfoTblAddr[AtsIndex].NumberOfCommands > 0)) @@ -599,8 +599,6 @@ void SC_UpdateAppend(void) CFE_EVS_SendEvent(SC_UPDATE_APPEND_EID, CFE_EVS_EventType_INFORMATION, "Update Append ATS Table: load count = %d, command count = %d, byte count = %d", SC_OperData.HkPacket.AppendLoadCount, (int)EntryCount, (int)EntryIndex * SC_BYTES_IN_WORD); - return; - } /* end SC_UpdateAppend */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ @@ -680,9 +678,6 @@ void SC_ProcessAppend(uint16 AtsIndex) /* notify cFE that we have modified the ats table */ CFE_TBL_Modified(SC_OperData.AtsTblHandle[AtsIndex]); - - return; - } /* end SC_ProcessAppend */ /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ diff --git a/fsw/src/sc_rtsrq.c b/fsw/src/sc_rtsrq.c index 57efc88..826999b 100644 --- a/fsw/src/sc_rtsrq.c +++ b/fsw/src/sc_rtsrq.c @@ -260,9 +260,6 @@ void SC_StartRtsGrpCmd(const CFE_SB_Buffer_t *CmdPacket) SC_OperData.HkPacket.CmdErrCtr++; } } - - return; - } /* end SC_StartRtsGrpCmd */ #endif @@ -356,9 +353,6 @@ void SC_StopRtsGrpCmd(const CFE_SB_Buffer_t *CmdPacket) SC_OperData.HkPacket.CmdErrCtr++; } } - - return; - } /* end SC_StopRtsGrpCmd */ #endif @@ -452,9 +446,6 @@ void SC_DisableRtsGrpCmd(const CFE_SB_Buffer_t *CmdPacket) SC_OperData.HkPacket.CmdErrCtr++; } } - - return; - } /* end SC_DisableRtsGrpCmd */ #endif @@ -549,9 +540,6 @@ void SC_EnableRtsGrpCmd(const CFE_SB_Buffer_t *CmdPacket) SC_OperData.HkPacket.CmdErrCtr++; } } - - return; - } /* end SC_EnableRtsGrpCmd */ #endif