From 41ffe0240df7823ec23f3145643cc8e8bb42e713 Mon Sep 17 00:00:00 2001 From: Qiu Peiyang Date: Sun, 22 Jan 2017 13:17:15 +0800 Subject: [PATCH] tests/gpio: fix test GPIO_INT_LEVEL bug According to include/gpio.h, GPIO_INT_LEVEL is 0, which means the branch to test GPIO_INT_LEVEL is always false and GPIO_INT_LEVEL cases will always pass. This patch also fixes another minor bug in main.c. Coverity-CID: 160074 Change-Id: I1fefa978e65bf801f244b4c2960cb87a26b0829e Signed-off-by: Qiu Peiyang --- tests/drivers/gpio/gpio_basic_api/src/main.c | 2 +- tests/drivers/gpio/gpio_basic_api/src/test_callback_trigger.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/drivers/gpio/gpio_basic_api/src/main.c b/tests/drivers/gpio/gpio_basic_api/src/main.c index 41e89561038..0e0fb2711e3 100644 --- a/tests/drivers/gpio/gpio_basic_api/src/main.c +++ b/tests/drivers/gpio/gpio_basic_api/src/main.c @@ -42,6 +42,6 @@ void test_main(void) ztest_unit_test(test_gpio_callback_level_high), ztest_unit_test(test_gpio_callback_add_remove), ztest_unit_test(test_gpio_callback_enable_disable), - ztest_unit_test(test_gpio_callback_level_high)); + ztest_unit_test(test_gpio_callback_level_low)); ztest_run_test_suite(gpio_basic_test); } diff --git a/tests/drivers/gpio/gpio_basic_api/src/test_callback_trigger.c b/tests/drivers/gpio/gpio_basic_api/src/test_callback_trigger.c index 34afea42322..8ba2e32269e 100644 --- a/tests/drivers/gpio/gpio_basic_api/src/test_callback_trigger.c +++ b/tests/drivers/gpio/gpio_basic_api/src/test_callback_trigger.c @@ -85,14 +85,14 @@ static int test_callback(int mode) /*= checkpoint: check callback is triggered =*/ TC_PRINT("check enabled callback\n"); - if (mode & GPIO_INT_EDGE) { + if ((mode & GPIO_INT_EDGE) == GPIO_INT_EDGE) { if (cb_cnt != 1) { TC_ERROR("not trigger callback correctly\n"); goto err_exit; } } - if (mode & GPIO_INT_LEVEL) { + if ((mode & GPIO_INT_LEVEL) == GPIO_INT_LEVEL) { if (cb_cnt != MAX_INT_CNT) { TC_ERROR("not trigger callback correctly\n"); goto err_exit;