FreeRTOS-Kernel/FreeRTOS/Test
Gaurav-Aggarwal-AWS 2f5a633383
Add tests to increase queue code coverage (#770)
These tests cover the following portion in the queue code:

static void prvUnlockQueue( Queue_t * const pxQueue )
{
    ...

    if( prvNotifyQueueSetContainer( pxQueue ) != pdFALSE )
    {
        /* The queue is a member of a queue set, and posting to
            * the queue set caused a higher priority task to unblock.
            * A context switch is required. */
        vTaskMissedYield();
    }
    else
    {
        mtCOVERAGE_TEST_MARKER();
    }

    ...
}

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
2022-01-05 21:05:11 -08:00
..
CBMC Apply release changes to main branch (#759) 2021-12-23 10:16:27 -08:00
CMock Add tests to increase queue code coverage (#770) 2022-01-05 21:05:11 -08:00
litani@8b4a4ffb33 Advance litani submodule for CBMC proofs (#725) 2021-12-06 17:42:13 -07:00
VeriFast Apply release changes to main branch (#759) 2021-12-23 10:16:27 -08:00
README.md Add uncrustify github workflow (#659) 2021-07-22 14:23:48 -07:00

Testing in FreeRTOS

FreeRTOS kernel consists of common code and porting layer. Extensive static analysis and dynamic analysis are done on both to ensure functional correctness of FreeRTOS kernel.

For more information on FreeRTOS testing please refer to https://www.freertos.org/FreeRTOS-Coding-Standard-and-Style-Guide.html.

Directory structure

This directory is in working progress -- we are migrating scattered test cases to this directory. Here only lists what's currently under this directory.

  • ./CBMC: This directory contains automated proofs of the memory safety of various parts of the FreeRTOS code base.
  • ./VeriFast: This directory contains automated proofs of the functional correctness of various parts of the FreeRTOS code base.