From 3f5abd9cce220d68a9d17c5a1795517f4864ec4e Mon Sep 17 00:00:00 2001 From: Alex Campbell Date: Mon, 2 Aug 2021 11:38:26 -0400 Subject: [PATCH 1/2] Fix #1649, Add Functional Test for EVS Reset Filters API. --- modules/cfe_testcase/CMakeLists.txt | 1 + modules/cfe_testcase/src/cfe_test.c | 1 + modules/cfe_testcase/src/cfe_test.h | 1 + modules/cfe_testcase/src/evs_filters_test.c | 49 +++++++++++++++++++++ 4 files changed, 52 insertions(+) create mode 100644 modules/cfe_testcase/src/evs_filters_test.c diff --git a/modules/cfe_testcase/CMakeLists.txt b/modules/cfe_testcase/CMakeLists.txt index 8189dba9b..7303144d2 100644 --- a/modules/cfe_testcase/CMakeLists.txt +++ b/modules/cfe_testcase/CMakeLists.txt @@ -7,6 +7,7 @@ add_cfe_app(cfe_testcase src/es_cds_test.c src/es_misc_test.c src/es_mempool_test.c + src/evs_filters_test.c src/evs_send_test.c src/fs_header_test.c src/fs_util_test.c diff --git a/modules/cfe_testcase/src/cfe_test.c b/modules/cfe_testcase/src/cfe_test.c index b1dbe4767..ecfe26dcc 100644 --- a/modules/cfe_testcase/src/cfe_test.c +++ b/modules/cfe_testcase/src/cfe_test.c @@ -56,6 +56,7 @@ void CFE_TestMain(void) ESMemPoolTestSetup(); ESMiscTestSetup(); ESTaskTestSetup(); + EVSFiltersTestSetup(); EVSSendTestSetup(); FSHeaderTestSetup(); FSUtilTestSetup(); diff --git a/modules/cfe_testcase/src/cfe_test.h b/modules/cfe_testcase/src/cfe_test.h index 558b0a1f6..98bd7021c 100644 --- a/modules/cfe_testcase/src/cfe_test.h +++ b/modules/cfe_testcase/src/cfe_test.h @@ -85,6 +85,7 @@ void ESInfoTestSetup(void); void ESMemPoolTestSetup(void); void ESMiscTestSetup(void); void ESTaskTestSetup(void); +void EVSFiltersTestSetup(void); void EVSSendTestSetup(void); void FSHeaderTestSetup(void); void FSUtilTestSetup(void); diff --git a/modules/cfe_testcase/src/evs_filters_test.c b/modules/cfe_testcase/src/evs_filters_test.c new file mode 100644 index 000000000..60dc17dad --- /dev/null +++ b/modules/cfe_testcase/src/evs_filters_test.c @@ -0,0 +1,49 @@ +/************************************************************************* +** +** 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: evs_filters_test.c +** +** Purpose: +** Functional test of basic EVS Reset Filters APIs +** +** Demonstration of how to register and use the UT assert functions. +** +*************************************************************************/ + +/* + * Includes + */ + +#include "cfe_test.h" + +void TestResetFilters(void) +{ + UtPrintf("Testing: CFE_EVS_ResetFilter, CFE_EVS_ResetAllFilters"); + + UtAssert_INT32_EQ(CFE_EVS_ResetFilter(1), CFE_SUCCESS); + UtAssert_INT32_EQ(CFE_EVS_ResetAllFilters(), CFE_SUCCESS); + + UtAssert_INT32_EQ(CFE_EVS_ResetFilter(0), CFE_EVS_EVT_NOT_REGISTERED); +} + +void EVSFiltersTestSetup(void) +{ + UtTest_Add(TestResetFilters, NULL, NULL, "Test Reset Filters"); +} From 3f2ee86460b5c89ad483774ad94d1d7fcff86e8e Mon Sep 17 00:00:00 2001 From: Alex Campbell Date: Tue, 10 Aug 2021 10:29:20 -0400 Subject: [PATCH 2/2] Fix #1649, Add comment for logic dependency --- modules/cfe_testcase/src/evs_filters_test.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/cfe_testcase/src/evs_filters_test.c b/modules/cfe_testcase/src/evs_filters_test.c index 60dc17dad..1a7fe121a 100644 --- a/modules/cfe_testcase/src/evs_filters_test.c +++ b/modules/cfe_testcase/src/evs_filters_test.c @@ -37,6 +37,11 @@ void TestResetFilters(void) { UtPrintf("Testing: CFE_EVS_ResetFilter, CFE_EVS_ResetAllFilters"); + /* Test logic below depends on the test case registering an EID of 1 and not registering 0, and the resets in theory + * could impact test behavior/management related to events. Although the expectation is either all or none of an EID + * would be filtered (no use case for a "counting" filter within the test app) so for normal use this is no impact. + */ + UtAssert_INT32_EQ(CFE_EVS_ResetFilter(1), CFE_SUCCESS); UtAssert_INT32_EQ(CFE_EVS_ResetAllFilters(), CFE_SUCCESS);