[igt-dev] [PATCH i-g-t] igt/pm_backlight: Make the actual_brightness test readable

Chris Wilson chris at chris-wilson.co.uk
Fri Sep 7 08:12:50 UTC 2018


Previous horror

(pm_backlight:2947) CRITICAL: Test assertion failure function test_and_verify, file ../tests/pm_backlight.c:112:
(pm_backlight:2947) CRITICAL: Failed assertion: ({ typeof(0) _a = (0); typeof(val - tolerance) _b = (val - tolerance); _a > _b ? _a : _b; }) <= result
(pm_backlight:2947) CRITICAL: error: 7125 > 0

References: https://bugs.freedesktop.org/show_bug.cgi?id=107847
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
---
 tests/pm_backlight.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/tests/pm_backlight.c b/tests/pm_backlight.c
index e94340a2b..32808cdf6 100644
--- a/tests/pm_backlight.c
+++ b/tests/pm_backlight.c
@@ -98,8 +98,8 @@ static int backlight_write(int value, const char *fname)
 
 static void test_and_verify(struct context *context, int val)
 {
+	const int tolerance = val * TOLERANCE / 100;
 	int result;
-	int tolerance = val * TOLERANCE / 100;
 
 	igt_assert_eq(backlight_write(val, "brightness"), 0);
 	igt_assert_eq(backlight_read(&result, "brightness"), 0);
@@ -107,9 +107,11 @@ static void test_and_verify(struct context *context, int val)
 	igt_assert_eq(result, val);
 
 	igt_assert_eq(backlight_read(&result, "actual_brightness"), 0);
-	/* Some rounding may happen depending on hw. Just check that it's close enough. */
-	igt_assert_lte(result, min(context->max, val + tolerance));
-	igt_assert_lte(max(0, val - tolerance), result);
+	/* Some rounding may happen depending on hw */
+	igt_assert_f(result >= max(0, val - tolerance) &&
+		     result <= min(context->max, val + tolerance),
+		     "actual_brightness [%d] did not match expected brightness [%d +- %d]\n",
+		     result, val, tolerance);
 }
 
 static void test_brightness(struct context *context)
-- 
2.19.0.rc2



More information about the igt-dev mailing list