From 5f344d5eda90406bddf45fa407be8bacce79f91f Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Mon, 12 Jun 2017 12:46:04 +0200 Subject: [PATCH] tests: verify the behavior of gpiofind in case of invalid arguments Make sure we bail out with the correct error message when the user doesn't give us exactly one GPIO line name. Signed-off-by: Bartosz Golaszewski --- tests/tests-gpiofind.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tests/tests-gpiofind.c b/tests/tests-gpiofind.c index ba9f897..6f57f1d 100644 --- a/tests/tests-gpiofind.c +++ b/tests/tests-gpiofind.c @@ -46,3 +46,30 @@ static void gpiofind_not_found(void) TEST_DEFINE(gpiofind_not_found, "tools: gpiofind - not found", TEST_FLAG_NAMED_LINES, { 4, 8 }); + +static void gpiofind_invalid_args(void) +{ + test_gpiotool_run("gpiofind", (char *)NULL); + test_tool_wait(); + + TEST_ASSERT(test_tool_exited()); + TEST_ASSERT_EQ(test_tool_exit_status(), 1); + TEST_ASSERT_NULL(test_tool_stdout()); + TEST_ASSERT_NOT_NULL(test_tool_stderr()); + TEST_ASSERT_STR_CONTAINS(test_tool_stderr(), + "exactly one GPIO line name must be specified"); + + test_gpiotool_run("gpiofind", "first argument", + "second argument", (char *)NULL); + test_tool_wait(); + + TEST_ASSERT(test_tool_exited()); + TEST_ASSERT_EQ(test_tool_exit_status(), 1); + TEST_ASSERT_NULL(test_tool_stdout()); + TEST_ASSERT_NOT_NULL(test_tool_stderr()); + TEST_ASSERT_STR_CONTAINS(test_tool_stderr(), + "exactly one GPIO line name must be specified"); +} +TEST_DEFINE(gpiofind_invalid_args, + "tools: gpiofind - invalid arguments", + 0, { }); -- 2.30.2