mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-10-17 10:17:45 -04:00
Add unit test for FreeRTOS SMP (#1047)
* Add unit test for FreeRTOS SMP to verify SMP scheduler logic in tasks.c which is enclosed by `configNUMBER_OF_CORES > 1`. --------- Co-authored-by: Joshua Zarr <joshzarr@amazon.com> Co-authored-by: Anubhav Rawal <rawalexe@amazon.com> Co-authored-by: Alfred Gedeon <alfred2g@hotmail.com> Co-authored-by: Adam Scislowicz <adamds@amazon.com> Co-authored-by: jannusi <121577776+jannusi@users.noreply.github.com> Co-authored-by: Krishna Vamsi Tallapaneni <124737189+vamsitas@users.noreply.github.com> Co-authored-by: Kody Stribrny <kstribrn@amazon.com> Co-authored-by: kar-rahul-aws <118818625+kar-rahul-aws@users.noreply.github.com>
This commit is contained in:
parent
1114e8f39b
commit
e7d39763db
64 changed files with 25145 additions and 71 deletions
|
@ -38,6 +38,18 @@ static SemaphoreHandle_t xSemaphoreHandleStatic = NULL;
|
|||
|
||||
/* ========================== CALLBACK FUNCTIONS =========================== */
|
||||
|
||||
/**
|
||||
* @brief Callback for vTaskYieldTaskWithinAPI used by tests for yield counts
|
||||
*
|
||||
* NumCalls is checked in the test assert.
|
||||
*/
|
||||
static void vTaskYieldWithinAPI_Callback( int NumCalls )
|
||||
{
|
||||
( void ) NumCalls;
|
||||
|
||||
portYIELD_WITHIN_API();
|
||||
}
|
||||
|
||||
/* ============================= Unity Fixtures ============================= */
|
||||
|
||||
void setUp( void )
|
||||
|
@ -468,6 +480,7 @@ void test_macro_xSemaphoreTake_blocking_mutex_inherit_timeout( void )
|
|||
|
||||
/* Return a test value from the call to pvTaskIncrementMutexHeldCount */
|
||||
pvTaskIncrementMutexHeldCount_ExpectAndReturn( ( void * ) xFakeMutexHolder );
|
||||
vTaskYieldWithinAPI_Stub( vTaskYieldWithinAPI_Callback );
|
||||
|
||||
/* Take the mutex */
|
||||
TEST_ASSERT_EQUAL( pdTRUE, xSemaphoreTake( xSemaphore, 0 ) );
|
||||
|
@ -553,6 +566,8 @@ void test_macro_xSemaphoreTake_blocking_mutex_inherit_disinherit( void )
|
|||
{
|
||||
xTaskPriorityDisinherit_ExpectAndReturn( NULL, pdFALSE );
|
||||
|
||||
vTaskYieldWithinAPI_Stub( vTaskYieldWithinAPI_Callback );
|
||||
|
||||
SemaphoreHandle_t xSemaphore = xSemaphoreCreateMutex();
|
||||
|
||||
xSemaphoreHandleStatic = xSemaphore;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue