diff options
Diffstat (limited to 'FreeRTOS-Plus/Test/CMock/examples/temp_sensor/test/TestUsartConfigurator.c')
-rw-r--r-- | FreeRTOS-Plus/Test/CMock/examples/temp_sensor/test/TestUsartConfigurator.c | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/FreeRTOS-Plus/Test/CMock/examples/temp_sensor/test/TestUsartConfigurator.c b/FreeRTOS-Plus/Test/CMock/examples/temp_sensor/test/TestUsartConfigurator.c new file mode 100644 index 000000000..b23029e9b --- /dev/null +++ b/FreeRTOS-Plus/Test/CMock/examples/temp_sensor/test/TestUsartConfigurator.c @@ -0,0 +1,77 @@ +#include "unity.h" +#include "Types.h" +#include "UsartConfigurator.h" + +AT91S_PIO PioAPeripheral; +AT91S_PMC PmcPeripheral; +AT91S_USART Usart0Peripheral; + +void setUp(void) +{ +} + +void tearDown(void) +{ +} + +void testConfigureUsartIOShouldConfigureUsartTxPinfForPeripheralIO(void) +{ + AT91C_BASE_PIOA->PIO_ASR = 0; + AT91C_BASE_PIOA->PIO_BSR = 0xffffffff; + AT91C_BASE_PIOA->PIO_PDR = 0; + Usart_ConfigureUsartIO(); + TEST_ASSERT_EQUAL(USART0_TX_PIN, AT91C_BASE_PIOA->PIO_ASR); + TEST_ASSERT_EQUAL(0, AT91C_BASE_PIOA->PIO_BSR); + TEST_ASSERT_EQUAL(USART0_TX_PIN, AT91C_BASE_PIOA->PIO_PDR); +} + +void testEnablePeripheralClockShouldEnableClockToUsartPeripheral(void) +{ + AT91C_BASE_PMC->PMC_PCER = 0; + Usart_EnablePeripheralClock(); + TEST_ASSERT_EQUAL(((uint32)1) << USART0_CLOCK_ENABLE, AT91C_BASE_PMC->PMC_PCER); +} + +void testResetShouldDisableAllUsartInterrupts(void) +{ + AT91C_BASE_US0->US_IDR = 0; + Usart_Reset(); + TEST_ASSERT_EQUAL(0xffffffff, AT91C_BASE_US0->US_IDR); +} + +void testResetShouldResetUsartTransmitterAndReceiver(void) +{ + AT91C_BASE_US0->US_CR = 0; + Usart_Reset(); + TEST_ASSERT_EQUAL(AT91C_US_RSTRX | AT91C_US_RSTTX | AT91C_US_RXDIS | AT91C_US_TXDIS, AT91C_BASE_US0->US_CR); +} + +void testConfigureModeShouldSetUsartModeToAsynchronous(void) +{ + uint32 asyncMode = (AT91C_US_USMODE_NORMAL | + AT91C_US_NBSTOP_1_BIT | + AT91C_US_PAR_NONE | + AT91C_US_CHRL_8_BITS | + AT91C_US_CLKS_CLOCK); + + AT91C_BASE_US0->US_MR = ~asyncMode; + Usart_ConfigureMode(); + TEST_ASSERT_EQUAL(asyncMode, AT91C_BASE_US0->US_MR); +} + +void testSetBaudRateRegisterShouldSetUsartBaudRateRegisterToValuePassedAsParameter(void) +{ + AT91C_BASE_US0->US_BRGR = 0; + Usart_SetBaudRateRegister(3); + TEST_ASSERT_EQUAL(3, AT91C_BASE_US0->US_BRGR); + Usart_SetBaudRateRegister(251); + TEST_ASSERT_EQUAL(251, AT91C_BASE_US0->US_BRGR); +} + + +void testEnableShouldEnableUsart0Transmitter(void) +{ + AT91C_BASE_US0->US_CR = 0; + Usart_Enable(); + TEST_ASSERT_EQUAL(AT91C_US_TXEN, AT91C_BASE_US0->US_CR); +} |