[Intel-gfx] [PATCH i-g-t 2/3] tests: add context param to pm_backlight tests
Jani Nikula
jani.nikula at intel.com
Wed Nov 18 04:57:11 PST 2015
We'll be adding more context for the subtests than just the max
brightness.
Signed-off-by: Jani Nikula <jani.nikula at intel.com>
---
tests/pm_backlight.c | 39 ++++++++++++++++++++++-----------------
1 file changed, 22 insertions(+), 17 deletions(-)
diff --git a/tests/pm_backlight.c b/tests/pm_backlight.c
index bdc0e33de94c..c199b9bf4baf 100644
--- a/tests/pm_backlight.c
+++ b/tests/pm_backlight.c
@@ -35,6 +35,10 @@
#include <unistd.h>
#include <time.h>
+struct context {
+ int max;
+};
+
#define TOLERANCE 5 /* percent */
#define BACKLIGHT_PATH "/sys/class/backlight/intel_backlight"
@@ -107,41 +111,41 @@ static void test_and_verify(int val)
igt_assert_lte(val - tolerance, result);
}
-static void test_brightness(int max)
+static void test_brightness(struct context *context)
{
test_and_verify(0);
- test_and_verify(max);
- test_and_verify(max / 2);
+ test_and_verify(context->max);
+ test_and_verify(context->max / 2);
}
-static void test_bad_brightness(int max)
+static void test_bad_brightness(struct context *context)
{
int val;
/* First write some sane value */
- backlight_write(max / 2, "brightness");
+ backlight_write(context->max / 2, "brightness");
/* Writing invalid values should fail and not change the value */
igt_assert_lt(backlight_write(-1, "brightness"), 0);
backlight_read(&val, "brightness");
- igt_assert_eq(val, max / 2);
- igt_assert_lt(backlight_write(max + 1, "brightness"), 0);
+ igt_assert_eq(val, context->max / 2);
+ igt_assert_lt(backlight_write(context->max + 1, "brightness"), 0);
backlight_read(&val, "brightness");
- igt_assert_eq(val, max / 2);
+ igt_assert_eq(val, context->max / 2);
igt_assert_lt(backlight_write(INT_MAX, "brightness"), 0);
backlight_read(&val, "brightness");
- igt_assert_eq(val, max / 2);
+ igt_assert_eq(val, context->max / 2);
}
-static void test_fade(int max)
+static void test_fade(struct context *context)
{
int i;
static const struct timespec ts = { .tv_sec = 0, .tv_nsec = FADESPEED*1000000 };
/* Fade out, then in */
- for (i = max; i > 0; i -= max / FADESTEPS) {
+ for (i = context->max; i > 0; i -= context->max / FADESTEPS) {
test_and_verify(i);
nanosleep(&ts, NULL);
}
- for (i = 0; i <= max; i += max / FADESTEPS) {
+ for (i = 0; i <= context->max; i += context->max / FADESTEPS) {
test_and_verify(i);
nanosleep(&ts, NULL);
}
@@ -149,22 +153,23 @@ static void test_fade(int max)
igt_main
{
- int max, old;
+ struct context context = {0};
+ int old;
igt_skip_on_simulation();
igt_fixture {
/* Get the max value and skip the whole test if sysfs interface not available */
igt_skip_on(backlight_read(&old, "brightness"));
- igt_assert(backlight_read(&max, "max_brightness") > -1);
+ igt_assert(backlight_read(&context.max, "max_brightness") > -1);
}
igt_subtest("basic-brightness")
- test_brightness(max);
+ test_brightness(&context);
igt_subtest("bad-brightness")
- test_bad_brightness(max);
+ test_bad_brightness(&context);
igt_subtest("fade")
- test_fade(max);
+ test_fade(&context);
igt_fixture {
/* Restore old brightness */
--
2.1.4
More information about the Intel-gfx
mailing list