From 40159874afd7983ab124d3b7d915c77589b2aed6 Mon Sep 17 00:00:00 2001 From: Kevin Schoedel <67607049+kpschoedel@users.noreply.github.com> Date: Mon, 13 Dec 2021 15:27:52 -0500 Subject: [PATCH] Fix the SystemStats part of TestInetEndPointLimit (#12946) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix the SystemStats part of TestInetEndPointLimit #### Problem The newly added ‘fake’ platform was the first to actually run with both a static EndPoint pool and SystemStats enabled, and revealed that the newly added stats test was incorrect. #### Change overview Fix the stats checks. #### Testing Run locally on fake platform. * forgot to commit the #if --- src/inet/tests/TestInetEndPoint.cpp | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/inet/tests/TestInetEndPoint.cpp b/src/inet/tests/TestInetEndPoint.cpp index 6eabfb47555338..34fc95267f2666 100644 --- a/src/inet/tests/TestInetEndPoint.cpp +++ b/src/inet/tests/TestInetEndPoint.cpp @@ -354,7 +354,7 @@ static void TestInetEndPointInternal(nlTestSuite * inSuite, void * inContext) NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_HIGH_WATER_MARK(System::Stats::kInetLayer_NumTCPEps, 1)); } -#if !CHIP_SYSTEM_CONFIG_POOL_USE_HEAP && (!defined(CHIP_DEVICE_LAYER_TARGET_FAKE) || CHIP_DEVICE_LAYER_TARGET_FAKE != 1) +#if !CHIP_SYSTEM_CONFIG_POOL_USE_HEAP // Test the Inet resource limitations. static void TestInetEndPointLimit(nlTestSuite * inSuite, void * inContext) { @@ -369,7 +369,11 @@ static void TestInetEndPointLimit(nlTestSuite * inSuite, void * inContext) { err = gUDP.NewEndPoint(&testUDPEP[i]); NL_TEST_ASSERT(inSuite, err == (i ? CHIP_NO_ERROR : CHIP_ERROR_ENDPOINT_POOL_FULL)); - NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumUDPEps, ++udpCount)); + if (err == CHIP_NO_ERROR) + { + ++udpCount; + NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumUDPEps, udpCount)); + } } const int udpHighWaterMark = udpCount; NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_HIGH_WATER_MARK(System::Stats::kInetLayer_NumUDPEps, udpHighWaterMark)); @@ -380,7 +384,11 @@ static void TestInetEndPointLimit(nlTestSuite * inSuite, void * inContext) { err = gTCP.NewEndPoint(&testTCPEP[i]); NL_TEST_ASSERT(inSuite, err == (i ? CHIP_NO_ERROR : CHIP_ERROR_ENDPOINT_POOL_FULL)); - NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumTCPEps, ++tcpCount)); + if (err == CHIP_NO_ERROR) + { + ++tcpCount; + NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumTCPEps, tcpCount)); + } } const int tcpHighWaterMark = tcpCount; NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_HIGH_WATER_MARK(System::Stats::kInetLayer_NumTCPEps, tcpHighWaterMark)); @@ -405,7 +413,8 @@ static void TestInetEndPointLimit(nlTestSuite * inSuite, void * inContext) if (testUDPEP[i] != nullptr) { testUDPEP[i]->Free(); - NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumTCPEps, --udpCount)); + --udpCount; + NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumUDPEps, udpCount)); } } NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_HIGH_WATER_MARK(System::Stats::kInetLayer_NumUDPEps, udpHighWaterMark)); @@ -416,7 +425,8 @@ static void TestInetEndPointLimit(nlTestSuite * inSuite, void * inContext) if (testTCPEP[i] != nullptr) { testTCPEP[i]->Free(); - NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumTCPEps, --tcpCount)); + --tcpCount; + NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_IN_USE(System::Stats::kInetLayer_NumTCPEps, tcpCount)); } } NL_TEST_ASSERT(inSuite, SYSTEM_STATS_TEST_HIGH_WATER_MARK(System::Stats::kInetLayer_NumTCPEps, tcpHighWaterMark)); @@ -435,7 +445,7 @@ static const nlTest sTests[] = { NL_TEST_DEF("InetEndPoint::PreTest", TestInetPr NL_TEST_DEF("InetEndPoint::TestInetError", TestInetError), NL_TEST_DEF("InetEndPoint::TestInetInterface", TestInetInterface), NL_TEST_DEF("InetEndPoint::TestInetEndPoint", TestInetEndPointInternal), -#if !CHIP_SYSTEM_CONFIG_POOL_USE_HEAP && (!defined(CHIP_DEVICE_LAYER_TARGET_FAKE) || CHIP_DEVICE_LAYER_TARGET_FAKE != 1) +#if !CHIP_SYSTEM_CONFIG_POOL_USE_HEAP NL_TEST_DEF("InetEndPoint::TestEndPointLimit", TestInetEndPointLimit), #endif NL_TEST_SENTINEL() };