From: Bartosz Golaszewski Date: Tue, 13 Jun 2017 19:32:59 +0000 (+0200) Subject: tests: gpioinfo: test cases for printing info about specific chips X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=1059badc4ff581781e6da27a5865a0c70100faf9;p=qemu-gpiodev%2Flibgpiod.git tests: gpioinfo: test cases for printing info about specific chips Add test cases checking if gpioinfo correctly dumps info if we specify only certain chips over command-line and omits the ones we don't request. Signed-off-by: Bartosz Golaszewski --- diff --git a/tests/tests-gpioinfo.c b/tests/tests-gpioinfo.c index ca71b9a..01dd710 100644 --- a/tests/tests-gpioinfo.c +++ b/tests/tests-gpioinfo.c @@ -67,3 +67,44 @@ static void gpioinfo_one_exported(void) TEST_DEFINE(gpioinfo_one_exported, "tools: gpioinfo - exported line", 0, { 4, 8 }); + +static void gpioinfo_print_one_chip(void) +{ + test_tool_run("gpioinfo", "gpiochip1", (char *)NULL); + test_tool_wait(); + + TEST_ASSERT(test_tool_exited()); + TEST_ASSERT_RET_OK(test_tool_exit_status()); + TEST_ASSERT_NOT_NULL(test_tool_stdout()); + TEST_ASSERT_STR_NOTCONT(test_tool_stdout(), "gpiochip0 - 8 lines:"); + TEST_ASSERT_STR_CONTAINS(test_tool_stdout(), "gpiochip1 - 4 lines:"); + TEST_ASSERT_REGEX_MATCH(test_tool_stdout(), + "\\s+line\\s+0:\\s+unnamed\\s+unused\\s+output\\s+active-high"); + TEST_ASSERT_REGEX_NOMATCH(test_tool_stdout(), + "\\s+line\\s+7:\\s+unnamed\\s+unused\\s+output\\s+active-high"); +} +TEST_DEFINE(gpioinfo_print_one_chip, + "tools: gpioinfo - print one chip", + 0, { 8, 4 }); + +static void gpioinfo_print_all_but_one_chip(void) +{ + test_tool_run("gpioinfo", "gpiochip0", + "gpiochip1", "gpiochip3", (char *)NULL); + test_tool_wait(); + + TEST_ASSERT(test_tool_exited()); + TEST_ASSERT_RET_OK(test_tool_exit_status()); + TEST_ASSERT_NOT_NULL(test_tool_stdout()); + TEST_ASSERT_STR_NOTCONT(test_tool_stdout(), "gpiochip2 - 8 lines:"); + TEST_ASSERT_STR_CONTAINS(test_tool_stdout(), "gpiochip0 - 4 lines:"); + TEST_ASSERT_STR_CONTAINS(test_tool_stdout(), "gpiochip1 - 4 lines:"); + TEST_ASSERT_STR_CONTAINS(test_tool_stdout(), "gpiochip3 - 4 lines:"); + TEST_ASSERT_REGEX_MATCH(test_tool_stdout(), + "\\s+line\\s+0:\\s+unnamed\\s+unused\\s+output\\s+active-high"); + TEST_ASSERT_REGEX_NOMATCH(test_tool_stdout(), + "\\s+line\\s+7:\\s+unnamed\\s+unused\\s+output\\s+active-high"); +} +TEST_DEFINE(gpioinfo_print_all_but_one_chip, + "tools: gpioinfo - print all but one chip", + 0, { 4, 4, 8, 4 });