2025-02-16 18:28:35 +00:00
|
|
|
/*
|
|
|
|
* Author: Jake G
|
|
|
|
* Date: 2024
|
|
|
|
* filename: test_MockADC.c
|
|
|
|
* description:
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "CppUTest/CommandLineTestRunner.h"
|
|
|
|
#include "CppUTestExt/MockSupport.h"
|
|
|
|
#include <cstdint>
|
|
|
|
|
|
|
|
extern "C"
|
|
|
|
{
|
|
|
|
#include "MockADC.h"
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST_GROUP(test_MockADC)
|
|
|
|
{
|
|
|
|
void setup()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
void teardown()
|
|
|
|
{
|
|
|
|
mock().checkExpectations();
|
|
|
|
mock().clear();
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
TEST(test_MockADC, ADC_InitExpects)
|
|
|
|
{
|
|
|
|
mock().expectOneCall("ADC_Init")
|
2025-02-23 18:58:42 +00:00
|
|
|
.withUnsignedIntParameter("adc_chan", 0);
|
2025-02-16 18:28:35 +00:00
|
|
|
|
2025-02-23 18:58:42 +00:00
|
|
|
ADC_Init(0);
|
2025-02-16 18:28:35 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
TEST(test_MockADC, ADC_EnableExpects)
|
|
|
|
{
|
|
|
|
mock().expectOneCall("ADC_Enable");
|
|
|
|
|
|
|
|
ADC_Enable();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
TEST(test_MockADC, ADC_DisableExpect)
|
|
|
|
{
|
|
|
|
mock().expectOneCall("ADC_Disable");
|
|
|
|
|
|
|
|
ADC_Disable();
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST(test_MockADC, ADC_ReadValue)
|
|
|
|
{
|
|
|
|
MockADC_ZeroIndex();
|
|
|
|
MockADC_PushValue(512);
|
|
|
|
|
2025-02-23 18:56:38 +00:00
|
|
|
mock().expectOneCall("ADC_ReadValue_Impl");
|
2025-02-16 18:28:35 +00:00
|
|
|
|
2025-02-23 18:56:38 +00:00
|
|
|
uint16_t val = ADC_ReadValue();
|
2025-02-16 18:28:35 +00:00
|
|
|
LONGS_EQUAL(512, val);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST(test_MockADC, ADC_ReadValueReturnsZeroOnEmptyBuffer)
|
|
|
|
{
|
|
|
|
MockADC_ZeroIndex();
|
|
|
|
|
|
|
|
mock().expectOneCall("ADC_ReadValue_Impl")
|
|
|
|
.andReturnValue(0x0000);
|
|
|
|
|
2025-02-23 18:56:38 +00:00
|
|
|
uint16_t val = ADC_ReadValue();
|
2025-02-16 18:28:35 +00:00
|
|
|
LONGS_EQUAL(0, val);
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST(test_MockADC, MockADC_PushValueDoesntOverflowArray)
|
|
|
|
{
|
|
|
|
MockADC_ZeroIndex();
|
|
|
|
for(int i = 0; i < 257; i++){
|
|
|
|
MockADC_PushValue(512+i);
|
|
|
|
CHECK_TRUE(MockADC_GetIndex() <= 255);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
TEST(test_MockADC, MockADC_SetupSetsGlobal)
|
|
|
|
{
|
|
|
|
CHECK_FALSE(MockADC_IsSetup());
|
|
|
|
|
|
|
|
ADC_Setup();
|
|
|
|
|
|
|
|
CHECK_TRUE(MockADC_IsSetup());
|
|
|
|
}
|