Skip to content

Commit

Permalink
Fix unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
tony-josi-aws committed Apr 3, 2024
1 parent 4d9b2df commit 630690d
Show file tree
Hide file tree
Showing 7 changed files with 255 additions and 33 deletions.
2 changes: 1 addition & 1 deletion test/unit-test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ include( ${UNIT_TEST_DIR}/FreeRTOS_Routing_ConfigCompatibleWithSingle/ut.cmake )
add_custom_target( coverage
COMMAND ${CMAKE_COMMAND} -P ${MODULE_ROOT_DIR}/test/unit-test/cmock/coverage.cmake
DEPENDS cmock unity
FreeRTOS_ARP_utest
FreeRTOS_ARP_utest
FreeRTOS_ARP_DataLenLessThanMinPacket_utest
FreeRTOS_BitConfig_utest
FreeRTOS_DHCP_utest
Expand Down
17 changes: 6 additions & 11 deletions test/unit-test/FreeRTOS_IP/FreeRTOS_IP_utest.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@
#include "mock_FreeRTOS_IP_Private.h"
#include "mock_FreeRTOS_IPv4_Private.h"
#include "mock_FreeRTOS_IP_Utils.h"
#include "mock_FreeRTOS_IPv6_Utils.h"
#include "mock_FreeRTOS_IP_Timers.h"
#include "mock_FreeRTOS_TCP_IP.h"
#include "mock_FreeRTOS_ICMP.h"
Expand Down Expand Up @@ -170,6 +171,7 @@ void test_vIPNetworkUpCalls( void )
NetworkEndPoint_t xEndPoint = { 0 };

xEndPoint.bits.bEndPointUp = pdFALSE;
xEndPoint.bits.bIPv6 = pdFALSE;

vApplicationIPNetworkEventHook_Multi_Expect( eNetworkUp, &xEndPoint );
vDNSInitialise_Expect();
Expand Down Expand Up @@ -4002,11 +4004,6 @@ static void prvIPNetworkUpCalls_Generic( const uint8_t * pucAddress,
xEndPoint.bits.bWantDHCP = pdFALSE_UNSIGNED;
memcpy( xEndPoint.ipv6_settings.xIPAddress.ucBytes, pucAddress, ipSIZE_OF_IPv6_ADDRESS );

if( ( uxSetMembers & ipHAS_METHOD ) != 0U )
{
xInterface.pfAddAllowedMAC = pfAddAllowedMAC;
}

if( ( uxSetMembers & ipHAS_INTERFACE ) != 0U )
{
xEndPoint.pxNetworkInterface = &xInterface;
Expand All @@ -4029,8 +4026,8 @@ static void prvIPNetworkUpCalls_Generic( const uint8_t * pucAddress,

if( xEndPoint.bits.bIPv6 == pdTRUE_UNSIGNED )
{
/* The xIPv6_GetIPType() function is mocked. */
xIPv6_GetIPType_ExpectAnyArgsAndReturn( eType );
/* The vManageSolicitedNodeAddress() function is mocked. */
vManageSolicitedNodeAddress_Expect( &xEndPoint, pdTRUE );
}

vApplicationIPNetworkEventHook_Multi_Expect( eNetworkUp, &xEndPoint );
Expand All @@ -4040,8 +4037,6 @@ static void prvIPNetworkUpCalls_Generic( const uint8_t * pucAddress,
vIPNetworkUpCalls( &xEndPoint );

TEST_ASSERT_EQUAL( pdTRUE, xEndPoint.bits.bEndPointUp );
/* See if pfAddAllowedMAC() was called when it has to. */
TEST_ASSERT_EQUAL( xMACAddExpected, xMACFunctionCalled );
}

void test_prvIPNetworkUpCalls_LinkLocal()
Expand All @@ -4060,9 +4055,9 @@ void test_prvIPNetworkUpCalls_LinkLocal()
};

/* Test all combinations of what might go wrong. */
prvIPNetworkUpCalls_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_METHOD | ipHAS_INTERFACE );
prvIPNetworkUpCalls_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_INTERFACE );
prvIPNetworkUpCalls_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_METHOD );
prvIPNetworkUpCalls_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_INTERFACE );
prvIPNetworkUpCalls_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 );
prvIPNetworkUpCalls_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_INTERFACE );
}

Expand Down
1 change: 1 addition & 0 deletions test/unit-test/FreeRTOS_IP/ut.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ list(APPEND mock_list
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IPv4_Private.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IP_Timers.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IP_Utils.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IPv6_Utils.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_ARP.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_ICMP.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_DNS.h"
Expand Down
1 change: 1 addition & 0 deletions test/unit-test/FreeRTOS_IP_DiffConfig2/ut.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ list(APPEND mock_list
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IPv4_Private.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IP_Timers.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IP_Utils.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_IPv6_Utils.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_ARP.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_ICMP.h"
"${CMAKE_BINARY_DIR}/Annexed_TCP/FreeRTOS_DNS.h"
Expand Down
38 changes: 17 additions & 21 deletions test/unit-test/FreeRTOS_IP_Utils/FreeRTOS_IP_Utils_utest.c
Original file line number Diff line number Diff line change
Expand Up @@ -621,8 +621,8 @@ void test_prvProcessNetworkDownEvent_PassDHCPv6( void )

if( xEndPoint.bits.bIPv6 == pdTRUE_UNSIGNED )
{
/* The xIPv6_GetIPType() function is mocked. */
xIPv6_GetIPType_ExpectAnyArgsAndReturn( eIPv6_Multicast );
/* The vManageSolicitedNodeAddress() function is mocked. */
vManageSolicitedNodeAddress_Expect( &xEndPoint, pdFALSE );
}

FreeRTOS_NextEndPoint_IgnoreAndReturn( NULL );
Expand Down Expand Up @@ -658,8 +658,8 @@ void test_prvProcessNetworkDownEvent_PassRA( void )

if( xEndPoint.bits.bIPv6 == pdTRUE_UNSIGNED )
{
/* The xIPv6_GetIPType() function is mocked. */
xIPv6_GetIPType_ExpectAnyArgsAndReturn( eIPv6_Multicast );
/* The vManageSolicitedNodeAddress() function is mocked. */
vManageSolicitedNodeAddress_Expect( &xEndPoint, pdFALSE );
}

FreeRTOS_NextEndPoint_IgnoreAndReturn( NULL );
Expand Down Expand Up @@ -697,8 +697,8 @@ void test_prvProcessNetworkDownEvent_PassStaticIP( void )

if( xEndPoint.bits.bIPv6 == pdTRUE_UNSIGNED )
{
/* The xIPv6_GetIPType() function is mocked. */
xIPv6_GetIPType_ExpectAnyArgsAndReturn( eIPv6_Multicast );
/* The vManageSolicitedNodeAddress() function is mocked. */
vManageSolicitedNodeAddress_Expect( &xEndPoint, pdFALSE );
}

FreeRTOS_NextEndPoint_IgnoreAndReturn( NULL );
Expand Down Expand Up @@ -3107,11 +3107,6 @@ static void prvProcessNetworkDownEvent_Generic( const uint8_t * pucAddress,
xEndPoint.bits.bWantDHCP = pdFALSE_UNSIGNED;
memcpy( xEndPoint.ipv6_settings.xIPAddress.ucBytes, pucAddress, ipSIZE_OF_IPv6_ADDRESS );

if( ( uxSetMembers & ipHAS_METHOD ) != 0U )
{
xInterface.pfRemoveAllowedMAC = pfRemoveAllowedMAC;
}

if( ( uxSetMembers & ipHAS_INTERFACE ) != 0U )
{
xEndPoint.pxNetworkInterface = &xInterface;
Expand All @@ -3138,8 +3133,8 @@ static void prvProcessNetworkDownEvent_Generic( const uint8_t * pucAddress,

if( xEndPoint.bits.bIPv6 == pdTRUE_UNSIGNED )
{
/* The xIPv6_GetIPType() function is mocked. */
xIPv6_GetIPType_ExpectAnyArgsAndReturn( eType );
/* The vManageSolicitedNodeAddress() function is mocked. */
vManageSolicitedNodeAddress_Expect( &xEndPoint, pdFALSE );
}

FreeRTOS_NextEndPoint_IgnoreAndReturn( NULL );
Expand Down Expand Up @@ -3171,9 +3166,9 @@ void test_prvProcessNetworkDownEvent_LinkLocal()
};

/* Test all combinations of what might go wrong. */
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_METHOD | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_METHOD );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_IPV6 );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_LinkLocal, ipHAS_INTERFACE );
}

Expand All @@ -3192,9 +3187,9 @@ void test_prvProcessNetworkDownEvent_Global()
0x70U, 0x09U
};

prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Global, ipHAS_IPV6 | ipHAS_METHOD | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Global, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Global, ipHAS_IPV6 | ipHAS_METHOD );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Global, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Global, ipHAS_IPV6 );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Global, ipHAS_INTERFACE );
}

Expand All @@ -3213,9 +3208,9 @@ void test_prvProcessNetworkDownEvent_SiteLocal()
0x70U, 0x09U
};

prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_SiteLocal, ipHAS_IPV6 | ipHAS_METHOD | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_SiteLocal, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_SiteLocal, ipHAS_IPV6 | ipHAS_METHOD );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_SiteLocal, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_SiteLocal, ipHAS_IPV6 );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_SiteLocal, ipHAS_INTERFACE );
}

Expand All @@ -3235,10 +3230,11 @@ void test_prvProcessNetworkDownEvent_Multicast()
0x00U, 0xFBU
};

prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Multicast, ipHAS_IPV6 | ipHAS_METHOD | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Multicast, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Multicast, ipHAS_IPV6 | ipHAS_METHOD );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Multicast, ipHAS_IPV6 | ipHAS_INTERFACE );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Multicast, ipHAS_IPV6 );
prvProcessNetworkDownEvent_Generic( ucAddress, eIPv6_Multicast, ipHAS_INTERFACE );
}

/**
* @brief test_eGetDHCPState
Expand Down

0 comments on commit 630690d

Please sign in to comment.