static BaseType_t prvQueueQueryFromISR()

in Debug_extra/FreeRTOS_demo/code_coverage_additions.c [296:359]


static BaseType_t prvQueueQueryFromISR( void )
{
BaseType_t xReturn = pdPASS, xValue = 1;
const UBaseType_t xISRQueueLength = ( UBaseType_t ) 1;
const char *pcISRQueueName = "ISRQueue";
QueueHandle_t xISRQueue = NULL;

	xISRQueue = xQueueCreate( xISRQueueLength, ( UBaseType_t ) sizeof( BaseType_t ) );

	if( xISRQueue != NULL )
	{
		vQueueAddToRegistry( xISRQueue, pcISRQueueName );
		if( strcmp( pcQueueGetName( xISRQueue ), pcISRQueueName ) )
		{
			xReturn = pdFAIL;
		}

		/* Expect the queue to be empty here. */
		if(	uxQueueMessagesWaitingFromISR( xISRQueue ) != 0 )
		{
			xReturn = pdFAIL;
		}

		if( xQueueIsQueueEmptyFromISR( xISRQueue ) != pdTRUE )
		{
			xReturn = pdFAIL;
		}

		if( xQueueIsQueueFullFromISR( xISRQueue ) != pdFALSE )
		{
			xReturn = pdFAIL;
		}

		/* Now fill the queue - it only has one space. */
		if( xQueueSendFromISR( xISRQueue, &xValue, NULL ) != pdPASS )
		{
			xReturn = pdFAIL;
		}

		/* Check it now reports as full. */
		if(	uxQueueMessagesWaitingFromISR( xISRQueue ) != 1 )
		{
			xReturn = pdFAIL;
		}

		if( xQueueIsQueueEmptyFromISR( xISRQueue ) != pdFALSE )
		{
			xReturn = pdFAIL;
		}

		if( xQueueIsQueueFullFromISR( xISRQueue ) != pdTRUE )
		{
			xReturn = pdFAIL;
		}

		vQueueDelete( xISRQueue );
	}
	else
	{
		xReturn = pdFAIL;
	}

	return xReturn;
}