From 6f0e072612697f2b4516fa9fb8c4400bc78821c2 Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Tue, 13 Jun 2017 16:29:41 +0200 Subject: [PATCH] tests: gpioset: test the --active-low flag Duplicate the basic exit mode test but use the --active-low flag and verify that the values are inverted. Signed-off-by: Bartosz Golaszewski --- tests/tests-gpioset.c | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/tests/tests-gpioset.c b/tests/tests-gpioset.c index bd69dca..013fe42 100644 --- a/tests/tests-gpioset.c +++ b/tests/tests-gpioset.c @@ -54,6 +54,47 @@ TEST_DEFINE(gpioset_set_lines_and_exit, "tools: gpioset - set lines and exit", 0, { 8, 8, 8 }); +static void gpioset_set_lines_and_exit_active_low(void) +{ + unsigned int offsets[8]; + int rv, values[8]; + + test_tool_run("gpioset", "--active-low", "gpiochip2", + "0=0", "1=0", "2=1", "3=1", + "4=1", "5=1", "6=0", "7=1", (char *)NULL); + test_tool_wait(); + + TEST_ASSERT(test_tool_exited()); + TEST_ASSERT_RET_OK(test_tool_exit_status()); + TEST_ASSERT_NULL(test_tool_stdout()); + TEST_ASSERT_NULL(test_tool_stderr()); + + offsets[0] = 0; + offsets[1] = 1; + offsets[2] = 2; + offsets[3] = 3; + offsets[4] = 4; + offsets[5] = 5; + offsets[6] = 6; + offsets[7] = 7; + + rv = gpiod_simple_get_value_multiple(TEST_CONSUMER, test_chip_name(2), + offsets, values, 8, false); + TEST_ASSERT_RET_OK(rv); + + TEST_ASSERT_EQ(values[0], 1); + TEST_ASSERT_EQ(values[1], 1); + TEST_ASSERT_EQ(values[2], 0); + TEST_ASSERT_EQ(values[3], 0); + TEST_ASSERT_EQ(values[4], 0); + TEST_ASSERT_EQ(values[5], 0); + TEST_ASSERT_EQ(values[6], 1); + TEST_ASSERT_EQ(values[7], 0); +} +TEST_DEFINE(gpioset_set_lines_and_exit_active_low, + "tools: gpioset - set lines and exit (active-low)", + 0, { 8, 8, 8 }); + static void gpioset_set_lines_and_exit_explicit_mode(void) { unsigned int offsets[8]; -- 2.30.2