CMSIS-RTOS2 Validation  Version 0.9.0-dev77
Validates RTOS2 API Implementation
Message Queue Functions

Message Queue Functions Test Cases. More...

Functions

void TC_osMessageQueueNew_1 (void)
 Test case: TC_osMessageQueueNew_1. More...
 
void TC_osMessageQueueNew_2 (void)
 Test case: TC_osMessageQueueNew_2. More...
 
void TC_osMessageQueueNew_3 (void)
 Test case: TC_osMessageQueueNew_3. More...
 
void TC_osMessageQueueGetName_1 (void)
 Test case: TC_osMessageQueueGetName_1. More...
 
void TC_osMessageQueuePut_1 (void)
 Test case: TC_osMessageQueuePut_1. More...
 
void TC_osMessageQueuePut_2 (void)
 Test case: TC_osMessageQueuePut_2. More...
 
void TC_osMessageQueueGet_1 (void)
 Test case: TC_osMessageQueueGet_1. More...
 
void TC_osMessageQueueGet_2 (void)
 Test case: TC_osMessageQueueGet_2. More...
 
void TC_osMessageQueueGetCapacity_1 (void)
 Test case: TC_osMessageQueueGetCapacity_1. More...
 
void TC_osMessageQueueGetMsgSize_1 (void)
 Test case: TC_osMessageQueueGetMsgSize_1. More...
 
void TC_osMessageQueueGetCount_1 (void)
 Test case: TC_osMessageQueueGetCount_1. More...
 
void TC_osMessageQueueGetSpace_1 (void)
 Test case: TC_osMessageQueueGetSpace_1. More...
 
void TC_osMessageQueueReset_1 (void)
 Test case: TC_osMessageQueueReset_1. More...
 
void TC_osMessageQueueDelete_1 (void)
 Test case: TC_osMessageQueueDelete_1. More...
 
void TC_MsgQBasic (void)
 Test case: TC_MsgQBasic. More...
 
void TC_MsgQWait (void)
 Test case: TC_MsgQWait. More...
 
void TC_MsgQCheckTimeout (void)
 Test case: TC_MsgQCheckTimeout. More...
 
void TC_MsgQAllocation (void)
 Test case: TC_MsgQAllocation. More...
 

Description

The test cases check the osMessage* functions.

Function Documentation

◆ TC_MsgQAllocation()

void TC_MsgQAllocation ( void  )
  • Test message queue object allocation

◆ TC_MsgQBasic()

void TC_MsgQBasic ( void  )
  • Fill message queue with messages
  • Get all messages from queue
  • Check if messages are correct

◆ TC_MsgQCheckTimeout()

void TC_MsgQCheckTimeout ( void  )
  • Set time thresholds
  • Create wakeup thread to put a message after 10 ticks
  • Wait for a message with a defined timeout
  • Check if the message is obtained between the minimum and maximum thresholds
  • Wait for a message with an infinite timeout
  • Check if the message is obtained between the minimum and maximum thresholds

◆ TC_MsgQWait()

void TC_MsgQWait ( void  )
  • Reset global counter
  • Create a thread that increments a counter and waits for message
  • Verify if counter incremented
  • Send message to the waiting thread
  • Verify if counter incremented
  • Verify if message received

◆ TC_osMessageQueueDelete_1()

void TC_osMessageQueueDelete_1 ( void  )
  • Call osMessageQueueDelete to delete empty message queue
  • Call osMessageQueueDelete to delete non-empty message queue
  • Call osMessageQueueDelete from ISR
  • Call osMessageQueueDelete with null object

◆ TC_osMessageQueueGet_1()

void TC_osMessageQueueGet_1 ( void  )
  • Call osMessageQueueGet to get message from the queue
  • Call osMessageQueueGet from ISR with timeout == 0
  • Call osMessageQueueGet from ISR with timeout != 0
  • Call osMessageQueueGet with null object
  • Call osMessageQueueGet from ISR with null object

◆ TC_osMessageQueueGet_2()

void TC_osMessageQueueGet_2 ( void  )
  • Call osMessageQueueGet from ISR to retrieve all available messages

◆ TC_osMessageQueueGetCapacity_1()

void TC_osMessageQueueGetCapacity_1 ( void  )
  • Call osMessageQueueGetCapacity to retrieve the maximum number of messages in the message queue
  • Call osMessageQueueGetCapacity from ISR
  • Call osMessageQueueGetCapacity from ISR with null object
  • Call osMessageQueueGetCapacity with null object

◆ TC_osMessageQueueGetCount_1()

void TC_osMessageQueueGetCount_1 ( void  )
  • Call osMessageQueueGetCount to retrieve the number of queued messages
  • Call osMessageQueueGetCount from ISR
  • Call osMessageQueueGetCount from ISR with null object
  • Call osMessageQueueGetCount with null object

◆ TC_osMessageQueueGetMsgSize_1()

void TC_osMessageQueueGetMsgSize_1 ( void  )
  • Call osMessageQueueGetMsgSize to retrieve the maximum message size
  • Call osMessageQueueGetMsgSize from ISR
  • Call osMessageQueueGetMsgSize from ISR with null object
  • Call osMessageQueueGetMsgSize with null object

◆ TC_osMessageQueueGetName_1()

void TC_osMessageQueueGetName_1 ( void  )
  • Call osMessageQueueGetName to retrieve a name of an unnamed message queue
  • Call osMessageQueueGetName to retrieve a name of a message queue with assigned name
  • Call osMessageQueueGetName from ISR
  • Call osMessageQueueGetName with null object

◆ TC_osMessageQueueGetSpace_1()

void TC_osMessageQueueGetSpace_1 ( void  )
  • Call osMessageQueueGetSpace to retrieve the number of available message slots
  • Call osMessageQueueGetSpace from ISR
  • Call osMessageQueueGetSpace from ISR with null object
  • Call osMessageQueueGetSpace with null object

◆ TC_osMessageQueueNew_1()

void TC_osMessageQueueNew_1 ( void  )
  • Call osMessageQueueNew to create a message queue object
  • Call osMessageQueueNew from ISR

◆ TC_osMessageQueueNew_2()

void TC_osMessageQueueNew_2 ( void  )
  • Call osMessageQueueNew to create message queue object and assign a name to it

◆ TC_osMessageQueueNew_3()

void TC_osMessageQueueNew_3 ( void  )
  • Call osMessageQueueNew to create message queue object by specifying memory for control block and data in attributes

◆ TC_osMessageQueuePut_1()

void TC_osMessageQueuePut_1 ( void  )
  • Call osMessageQueuePut to put message into the queue
  • Call osMessageQueuePut from ISR with timeout == 0
  • Call osMessageQueuePut from ISR with timeout != 0
  • Call osMessageQueuePut with null object
  • Call osMessageQueuePut from ISR with null object

◆ TC_osMessageQueuePut_2()

void TC_osMessageQueuePut_2 ( void  )
  • Call osMessageQueuePut from ISR to put all available messages into the message queue

◆ TC_osMessageQueueReset_1()

void TC_osMessageQueueReset_1 ( void  )
  • Call osMessageQueueReset from ISR
  • Call osMessageQueueReset with null object id