From c7d7a16631c27d0fab4fa2c935097bebcd6b822b Mon Sep 17 00:00:00 2001 From: Alex Campbell Date: Thu, 17 Jun 2021 16:23:23 -0400 Subject: [PATCH] Fix #1478, Expand CDS Functional Tests. --- modules/cfe_testcase/src/es_cds_test.c | 51 +++++++++++++++++++++----- 1 file changed, 42 insertions(+), 9 deletions(-) diff --git a/modules/cfe_testcase/src/es_cds_test.c b/modules/cfe_testcase/src/es_cds_test.c index 6f2d1faa4..a83758aed 100644 --- a/modules/cfe_testcase/src/es_cds_test.c +++ b/modules/cfe_testcase/src/es_cds_test.c @@ -33,17 +33,17 @@ #include "cfe_test.h" -void TestCDS(void) +void TestRegisterCDS(void) { CFE_ES_CDSHandle_t CDSHandlePtr; - size_t BlockSize = 10; - const char * Name = "CDS_Test"; - const char * CDSName = "CFE_TEST_APP.CDS_Test"; - CFE_ES_CDSHandle_t IdByName; - char CDSNameBuf[CFE_MISSION_ES_CDS_MAX_FULL_NAME_LEN]; - CFE_Status_t status; + CFE_ES_CDSHandle_t CDSHandlePtr2; + + size_t BlockSize = 10; + const char * Name = "CDS_Test"; + const char * LongName = "VERY_LONG_NAME_CDS_Test"; + CFE_Status_t status; - UtPrintf("Testing: CFE_ES_RegisterCDS, CFE_ES_GetCDSBlockIDByName, CFE_ES_GetCDSBlockName"); + UtPrintf("Testing: CFE_ES_RegisterCDS"); status = CFE_ES_RegisterCDS(&CDSHandlePtr, BlockSize, Name); @@ -56,10 +56,42 @@ void TestCDS(void) UtAssert_INT32_EQ(status, CFE_SUCCESS); } + UtAssert_INT32_EQ(CFE_ES_RegisterCDS(&CDSHandlePtr2, BlockSize, Name), CFE_ES_CDS_ALREADY_EXISTS); + + UtAssert_INT32_EQ(CFE_ES_RegisterCDS(NULL, BlockSize, Name), CFE_ES_BAD_ARGUMENT); + UtAssert_INT32_EQ(CFE_ES_RegisterCDS(&CDSHandlePtr, 0, Name), CFE_ES_CDS_INVALID_SIZE); + UtAssert_INT32_EQ(CFE_ES_RegisterCDS(&CDSHandlePtr, BlockSize, NULL), CFE_ES_BAD_ARGUMENT); + UtAssert_INT32_EQ(CFE_ES_RegisterCDS(&CDSHandlePtr, BlockSize, LongName), CFE_ES_CDS_INVALID_NAME); +} + +void TestCDSName(void) +{ + CFE_ES_CDSHandle_t CDSHandlePtr; + size_t BlockSize = 10; + const char * Name = "CDS_Test"; + const char * CDSName = "CFE_TEST_APP.CDS_Test"; + const char * INVALID_NAME = "INVALID_NAME"; + + CFE_ES_CDSHandle_t IdByName; + char CDSNameBuf[CFE_MISSION_ES_CDS_MAX_FULL_NAME_LEN]; + + UtPrintf("Testing: CFE_ES_GetCDSBlockIDByName, CFE_ES_GetCDSBlockName"); + + UtAssert_INT32_EQ(CFE_ES_RegisterCDS(&CDSHandlePtr, BlockSize, Name), CFE_ES_CDS_ALREADY_EXISTS); + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockName(CDSNameBuf, CDSHandlePtr, sizeof(CDSNameBuf)), CFE_SUCCESS); UtAssert_StrCmp(CDSNameBuf, CDSName, "CFE_ES_GetCDSBlockName() = %s", CDSNameBuf); UtAssert_INT32_EQ(CFE_ES_GetCDSBlockIDByName(&IdByName, CDSNameBuf), CFE_SUCCESS); UtAssert_ResourceID_EQ(CDSHandlePtr, IdByName); + + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockName(NULL, CDSHandlePtr, sizeof(CDSNameBuf)), CFE_ES_BAD_ARGUMENT); + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockName(CDSNameBuf, CFE_ES_CDS_BAD_HANDLE, sizeof(CDSNameBuf)), + CFE_ES_ERR_RESOURCEID_NOT_VALID); + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockName(CDSNameBuf, CDSHandlePtr, 0), CFE_ES_BAD_ARGUMENT); + + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockIDByName(NULL, CDSNameBuf), CFE_ES_BAD_ARGUMENT); + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockIDByName(&IdByName, NULL), CFE_ES_BAD_ARGUMENT); + UtAssert_INT32_EQ(CFE_ES_GetCDSBlockIDByName(&IdByName, INVALID_NAME), CFE_ES_ERR_NAME_NOT_FOUND); } void TestCopyRestoreCDS(void) @@ -85,6 +117,7 @@ void TestCopyRestoreCDS(void) void ESCDSTestSetup(void) { - UtTest_Add(TestCDS, NULL, NULL, "Test CDS"); + UtTest_Add(TestRegisterCDS, NULL, NULL, "Test Register CDS"); + UtTest_Add(TestCDSName, NULL, NULL, "Test CDS Name"); UtTest_Add(TestCopyRestoreCDS, NULL, NULL, "Test Copy Restore CDS"); }