Skip to content

Commit

Permalink
Fix nasa#811, add Mempool functional tets
Browse files Browse the repository at this point in the history
  • Loading branch information
zanzaben committed May 4, 2021
1 parent 911865c commit 8dd6693
Show file tree
Hide file tree
Showing 4 changed files with 77 additions and 5 deletions.
1 change: 1 addition & 0 deletions modules/cfe_testcase/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ add_cfe_app(cfe_testcase
src/es_info_test.c
src/es_task_test.c
src/es_cds_test.c
src/es_mempool_test.c
src/fs_header_test.c
src/time_current_test.c
)
Expand Down
11 changes: 6 additions & 5 deletions modules/cfe_testcase/src/cfe_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,11 +50,12 @@ void CFE_TestMain(void)
/*
* Register test cases in UtAssert
*/
ESInfoTestSetup();
ESTaskTestSetup();
ESCDSTestSetup();
FSHeaderTestSetup();
TimeCurrentTestSetup();
//ESInfoTestSetup();
//ESTaskTestSetup();
//ESCDSTestSetup();
ESMemPoolTestSetup();
//FSHeaderTestSetup();
//TimeCurrentTestSetup();

/*
* Execute the tests
Expand Down
1 change: 1 addition & 0 deletions modules/cfe_testcase/src/cfe_test.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ void CFE_TestMain(void);
void ESInfoTestSetup(void);
void ESTaskTestSetup(void);
void ESCDSTestSetup(void);
void ESMemPoolTestSetup(void);
void FSHeaderTestSetup(void);
void TimeCurrentTestSetup(void);

Expand Down
69 changes: 69 additions & 0 deletions modules/cfe_testcase/src/es_mempool_test.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
/*************************************************************************
**
** GSC-18128-1, "Core Flight Executive Version 6.7"
**
** Copyright (c) 2006-2019 United States Government as represented by
** the Administrator of the National Aeronautics and Space Administration.
** All Rights Reserved.
**
** 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.
**
** File: es_info_test.c
**
** Purpose:
** Functional test of basic ES Critical Data Store APIs
**
** Demonstration of how to register and use the UT assert functions.
**
*************************************************************************/

/*
* Includes
*/

#include "cfe_test.h"

void TestMemPool(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;

UtPrintf("Testing: CFE_ES_RegisterCDS, CFE_ES_GetCDSBlockIDByName, CFE_ES_GetCDSBlockName");

status = CFE_ES_RegisterCDS(&CDSHandlePtr, BlockSize, Name);

if (status == CFE_ES_CDS_ALREADY_EXISTS)
{
UtAssert_NA("CDS already exists. CFE_ES_RegisterCDS new allocation could not be properly tested");
}
else
{
UtAssert_INT32_EQ(status, CFE_SUCCESS);
}

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);
}


void ESMemPoolTestSetup(void)
{
UtTest_Add(TestMemPool, NULL, NULL, "Test Mem Pool");
}

0 comments on commit 8dd6693

Please sign in to comment.