summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/fan.c39
1 files changed, 20 insertions, 19 deletions
diff --git a/test/fan.c b/test/fan.c
index 9a0fa0d225..6082de1553 100644
--- a/test/fan.c
+++ b/test/fan.c
@@ -17,6 +17,7 @@
#include "timer.h"
#include "util.h"
+#define FAN_RPM(fan) fans[fan].rpm
/*****************************************************************************/
/* Tests */
@@ -29,7 +30,7 @@ static int test_fan(void)
sleep(2);
/* With nothing else to do, fans default to full-on */
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_max);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_max);
/*
* fan_set_percent_needed() is normally called once a second by the
@@ -46,22 +47,22 @@ static int test_fan(void)
/* On, but just barely */
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_start);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_start);
/* fan is above min speed now, so should be set to min */
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_min);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_min);
/* Full speed */
fan_set_percent_needed(0, 100);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_max);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_max);
fan_set_percent_needed(0, 100);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_max);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_max);
/* Slow again */
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_min);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_min);
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_min);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_min);
/* Off */
fan_set_percent_needed(0, 0);
@@ -71,31 +72,31 @@ static int test_fan(void)
/* On, but just barely */
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_start);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_start);
/* Force the mock_rpm to be slow, to simulate dragging */
- mock_rpm = fans[0].rpm_min - 105;
+ mock_rpm = FAN_RPM(0)->rpm_min - 105;
/* It should keep trying for the start speed */
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_start);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_start);
/* But we have to keep forcing the mock_rpm back down */
- mock_rpm = fans[0].rpm_min - 105;
+ mock_rpm = FAN_RPM(0)->rpm_min - 105;
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_start);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_start);
/* Now let it turn just under rpm_min. Should be okay there. */
- mock_rpm = fans[0].rpm_min - 10;
+ mock_rpm = FAN_RPM(0)->rpm_min - 10;
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_min);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_min);
/* Let it go a little faster, still okay */
- mock_rpm = fans[0].rpm_min + 10;
+ mock_rpm = FAN_RPM(0)->rpm_min + 10;
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_min);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_min);
/* But if it drops too low, it should go back to the start speed */
- mock_rpm = fans[0].rpm_min - 105;
+ mock_rpm = FAN_RPM(0)->rpm_min - 105;
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_start);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_start);
/* And then relax */
fan_set_percent_needed(0, 1);
- TEST_ASSERT(fan_get_rpm_actual(0) == fans[0].rpm_min);
+ TEST_ASSERT(fan_get_rpm_actual(0) == FAN_RPM(0)->rpm_min);
return EC_SUCCESS;
}