diff --git a/tests/load/test_load.cpp b/tests/load/test_load.cpp index f270620..8f8cce7 100644 --- a/tests/load/test_load.cpp +++ b/tests/load/test_load.cpp @@ -78,6 +78,18 @@ void expect_portb_disabled(uint8_t load_pin) .withUnsignedIntParameter("bit_num", load_pin); } + +void expect_portb_enabled(uint8_t load_pin) +{ + mock().expectOneCall("RegEdit_SetBit") + .withPointerParameter("reg", (void *) &PORTB.DIR) + .withUnsignedIntParameter("bit_num", load_pin); + + mock().expectOneCall("RegEdit_SetBit") + .withPointerParameter("reg", (void *) &PORTB.OUT) + .withUnsignedIntParameter("bit_num", load_pin); +} + TEST(test_load, PortAHandlerDisabledHigh) { MockADC_ZeroIndex(); @@ -122,14 +134,11 @@ TEST(test_load, PortAHandlerDisabledAboveTarget) Load_HandleLoadPortA(adc_pin, load_pin); } -TEST(test_load, PortBHandlerSuccess) + +TEST(test_load, PortBHandlerDisabledHigh) { - /* MockADC_ZeroIndex(); - MockADC_PushValue(LOWTHRESH + 1); - MockADC_PushValue(HIGHTHRESH - 1); - MockADC_PushValue(HYSTERESIS - 1); - */ + MockADC_PushValue(HIGHTHRESH); setup_adc_expectations(adc_pin); expect_portb_disabled(load_pin); @@ -137,6 +146,41 @@ TEST(test_load, PortBHandlerSuccess) Load_HandleLoadPortB(adc_pin, load_pin); } +TEST(test_load, PortBHandlerDisabledLow) +{ + MockADC_ZeroIndex(); + MockADC_PushValue(LOWTHRESH); + + setup_adc_expectations(adc_pin); + expect_portb_disabled(load_pin); + + Load_HandleLoadPortB(adc_pin, load_pin); +} + + +TEST(test_load, PortBHandlerEnabledBelowTarget) +{ + MockADC_ZeroIndex(); + MockADC_PushValue(HYSTERESIS - 1); + + setup_adc_expectations(adc_pin); + expect_portb_enabled(load_pin); + + Load_HandleLoadPortB(adc_pin, load_pin); +} + + +TEST(test_load, PortBHandlerDisabledAboveTarget) +{ + MockADC_ZeroIndex(); + MockADC_PushValue(HYSTERESIS); + + setup_adc_expectations(adc_pin); + expect_portb_disabled(load_pin); + + Load_HandleLoadPortB(adc_pin, load_pin); +} + TEST(test_load, HighThreshValid) { bool result = is_valid_load(HIGHTHRESH);