Added new ADC test

This commit is contained in:
Jake Goodwin 2025-12-23 14:59:42 -08:00
parent f88d650035
commit acfa5aa814
2 changed files with 23 additions and 14 deletions

View file

@ -2,10 +2,10 @@
* Author: Jake G * Author: Jake G
* Date: 2025 * Date: 2025
* filename: test_ADC.c * filename: test_ADC.c
* description: module_purpose * description: Test groups for the ADC module.
*/ */
#include "CppUTest/CommandLineTestRunner.h" //#include "CppUTest/CommandLineTestRunner.h"
#include "CppUTestExt/MockSupport.h" #include "CppUTestExt/MockSupport.h"
#include <cstdint> #include <cstdint>
@ -15,7 +15,7 @@ extern "C"
#include "ch32v003hw.h" #include "ch32v003hw.h"
} }
TEST_GROUP(test_ADC) TEST_GROUP(tg_ADC)
{ {
void setup(){ void setup(){
@ -27,12 +27,12 @@ TEST_GROUP(test_ADC)
} }
}; };
TEST(test_ADC, FirstTest) TEST(tg_ADC, FirstTest)
{ {
CHECK(true); CHECK(true);
} }
TEST(test_ADC, ADC_PowerOnTest) TEST(tg_ADC, ADC_PowerOnTest)
{ {
// The ADCON bit should be high in the ADC_CTRL2 register. // The ADCON bit should be high in the ADC_CTRL2 register.
mock().expectOneCall("RegEdit_u32_SetBit").withPointerParameter("reg", (void *)&ADC1->CTLR2).withUnsignedIntParameter("bit_num", ADC_ADON); mock().expectOneCall("RegEdit_u32_SetBit").withPointerParameter("reg", (void *)&ADC1->CTLR2).withUnsignedIntParameter("bit_num", ADC_ADON);
@ -40,7 +40,16 @@ TEST(test_ADC, ADC_PowerOnTest)
ADC_PowerOn(); ADC_PowerOn();
} }
TEST(test_ADC, ADC_SetupSetsRegisters) TEST(tg_ADC, ADC_PowerOffTest)
{
mock().expectOneCall("RegEdit_u32_ClearBit")
.withPointerParameter("reg", (void *)&ADC1->CTLR2)
.withUnsignedIntParameter("bit_num", ADC_ADON);
ADC_PowerOff();
}
TEST(tg_ADC, ADC_SetupSetsRegisters)
{ {
// R32_GPIOD_CFGLR --> 0x40011400 // R32_GPIOD_CFGLR --> 0x40011400
// DESC: PD port configuration register low // DESC: PD port configuration register low
@ -97,7 +106,7 @@ TEST(test_ADC, ADC_SetupSetsRegisters)
ADC_Setup(); ADC_Setup();
} }
TEST(test_ADC, ADC_InitPortAPin7UsesCorrectRegisters) TEST(tg_ADC, ADC_InitPortAPin7UsesCorrectRegisters)
{ {
/* /*
//Check for setting the direction to input. //Check for setting the direction to input.
@ -120,7 +129,7 @@ TEST(test_ADC, ADC_InitPortAPin7UsesCorrectRegisters)
ADC_Init(7); ADC_Init(7);
} }
TEST(test_ADC, ADC_InitPortAPin0UsesCorrectRegisters) TEST(tg_ADC, ADC_InitPortAPin0UsesCorrectRegisters)
{ {
/* /*
//Check for setting the direction to input. //Check for setting the direction to input.
@ -144,13 +153,13 @@ TEST(test_ADC, ADC_InitPortAPin0UsesCorrectRegisters)
ADC_Init(0); ADC_Init(0);
} }
TEST(test_ADC, ADC_InitDoesNothingOnHighPinNumbers) TEST(tg_ADC, ADC_InitDoesNothingOnHighPinNumbers)
{ {
// mock().expectNoCall("RegEdit_SetBit"); // mock().expectNoCall("RegEdit_SetBit");
ADC_Init(8); ADC_Init(8);
} }
TEST(test_ADC, ADC_EnablePasses) TEST(tg_ADC, ADC_EnablePasses)
{ {
/* /*
mock().expectOneCall("RegEdit_SetBit") mock().expectOneCall("RegEdit_SetBit")
@ -161,7 +170,7 @@ TEST(test_ADC, ADC_EnablePasses)
ADC_Enable(); ADC_Enable();
} }
TEST(test_ADC, ADC_DisablePasses) TEST(tg_ADC, ADC_DisablePasses)
{ {
/* /*
mock().expectOneCall("RegEdit_ClearBit") mock().expectOneCall("RegEdit_ClearBit")
@ -171,7 +180,7 @@ TEST(test_ADC, ADC_DisablePasses)
ADC_Disable(); ADC_Disable();
} }
TEST(test_ADC, ADC_SetPinSetsRightRegisters) TEST(tg_ADC, ADC_SetPinSetsRightRegisters)
{ {
/* /*
//It clears existing MUXPOS register values. //It clears existing MUXPOS register values.
@ -187,7 +196,7 @@ TEST(test_ADC, ADC_SetPinSetsRightRegisters)
ADC_SetPin(4); ADC_SetPin(4);
} }
TEST(test_ADC, ADC_SetPinFailsOnInvalidPin) TEST(tg_ADC, ADC_SetPinFailsOnInvalidPin)
{ {
ADC_SetPin(8); ADC_SetPin(8);
} }

View file

@ -2,7 +2,7 @@
// ImportTestGroups // ImportTestGroups
IMPORT_TEST_GROUP(simple_test); IMPORT_TEST_GROUP(simple_test);
IMPORT_TEST_GROUP(test_ADC); IMPORT_TEST_GROUP(tg_ADC);
IMPORT_TEST_GROUP(test_RegEdit); IMPORT_TEST_GROUP(test_RegEdit);
IMPORT_TEST_GROUP(test_blink); IMPORT_TEST_GROUP(test_blink);