Added test for the ADC reading timeout feature

This commit is contained in:
Jake Goodwin 2025-02-23 10:32:13 -08:00
parent fc3d0d11a5
commit 58ab3c12eb
1 changed files with 21 additions and 2 deletions

View File

@ -140,13 +140,32 @@ TEST(test_ADC, ADC_DisablePasses)
ADC_Disable();
}
TEST(test_ADC, ADC_ReadValueImplimentationTimesOut)
{
//Expect the start conversion bit to be set.
mock().expectOneCall("RegEdit_SetBit")
.withPointerParameter("reg", (void *) &ADCSRA)
.withUnsignedIntParameter("bit_num", ADSC);
//Check that it can time out.
//Expect it to read the start bit
mock().expectNCalls(ADC_WAIT_TIMEOUT, "RegEdit_IsBitSet")
.withPointerParameter("reg", (void *) &ADCSRA)
.withUnsignedIntParameter("bit_num", ADSC);
//Check that it does return a value.
ADC_ReadValue(0);
}
static uint16_t ADC_ReadValueFake(uint8_t pin_num)
{
return 512;
}
TEST_GROUP(test_ADCRead)
TEST_GROUP(test_ADCReadPtrSwap)
{
void setup()
{
@ -159,7 +178,7 @@ TEST_GROUP(test_ADCRead)
}
};
TEST(test_ADCRead, FunctionPointerSwapWorks)
TEST(test_ADCReadPtrSwap, FunctionPointerSwapWorks)
{
uint16_t value = ADC_ReadValue(0);