aboutsummaryrefslogtreecommitdiff
path: root/test/validation/api
diff options
context:
space:
mode:
authorTuomas Taipale <tuomas.taipale@nokia.com>2023-06-05 10:16:37 +0000
committerPetri Savolainen <petri.savolainen@nokia.com>2023-06-09 11:31:12 +0300
commitda722cbe7d7d295ee4a3ac9267b2fbc847d9f810 (patch)
tree109eca40b1b10011d0e4ae1c27555d0ac28780da /test/validation/api
parent5cfbf7b26a44cbd180dd2789b2ffd1c75e490b37 (diff)
validation: init: add test for odp_term_abnormal()
Add minimal test for `odp_term_abnormal()`. Signed-off-by: Tuomas Taipale <tuomas.taipale@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
Diffstat (limited to 'test/validation/api')
-rw-r--r--test/validation/api/Makefile.am1
-rw-r--r--test/validation/api/init/.gitignore1
-rw-r--r--test/validation/api/init/Makefile.am4
-rw-r--r--test/validation/api/init/init_main.c21
4 files changed, 25 insertions, 2 deletions
diff --git a/test/validation/api/Makefile.am b/test/validation/api/Makefile.am
index c08ff3d6e..ade387152 100644
--- a/test/validation/api/Makefile.am
+++ b/test/validation/api/Makefile.am
@@ -54,6 +54,7 @@ TESTS = \
init/init_feature_enabled$(EXEEXT) \
init/init_feature_disabled$(EXEEXT) \
init/init_test_param_init$(EXEEXT) \
+ init/init_test_term_abnormal$(EXEEXT) \
ipsec/ipsec_sync$(EXEEXT) \
ipsec/ipsec_async$(EXEEXT) \
ipsec/ipsec_inline_in$(EXEEXT) \
diff --git a/test/validation/api/init/.gitignore b/test/validation/api/init/.gitignore
index e312d2cf6..4e14eb040 100644
--- a/test/validation/api/init/.gitignore
+++ b/test/validation/api/init/.gitignore
@@ -6,3 +6,4 @@ init_num_thr
init_feature_enabled
init_feature_disabled
init_test_param_init
+init_test_term_abnormal
diff --git a/test/validation/api/init/Makefile.am b/test/validation/api/init/Makefile.am
index 1ddf1dd0d..8226b87ce 100644
--- a/test/validation/api/init/Makefile.am
+++ b/test/validation/api/init/Makefile.am
@@ -4,7 +4,7 @@ include ../Makefile.inc
# the same application process to call odp_init_global() multiple times.
test_PROGRAMS = init_defaults init_abort init_log init_num_thr \
init_feature_enabled init_feature_disabled init_log_thread \
- init_test_param_init
+ init_test_param_init init_test_term_abnormal
init_defaults_CPPFLAGS = -DINIT_TEST=0 $(AM_CPPFLAGS)
init_abort_CPPFLAGS = -DINIT_TEST=1 $(AM_CPPFLAGS)
@@ -14,6 +14,7 @@ init_feature_enabled_CPPFLAGS = -DINIT_TEST=4 $(AM_CPPFLAGS)
init_feature_disabled_CPPFLAGS = -DINIT_TEST=5 $(AM_CPPFLAGS)
init_log_thread_CPPFLAGS = -DINIT_TEST=6 $(AM_CPPFLAGS)
init_test_param_init_CPPFLAGS = -DINIT_TEST=7 $(AM_CPPFLAGS)
+init_test_term_abnormal_CPPFLAGS = -DINIT_TEST=8 $(AM_CPPFLAGS)
init_defaults_SOURCES = init_main.c
init_abort_SOURCES = init_main.c
@@ -23,3 +24,4 @@ init_feature_enabled_SOURCES = init_main.c
init_feature_disabled_SOURCES = init_main.c
init_log_thread_SOURCES = init_main.c
init_test_param_init_SOURCES = init_main.c
+init_test_term_abnormal_SOURCES = init_main.c
diff --git a/test/validation/api/init/init_main.c b/test/validation/api/init/init_main.c
index d13bbd302..c3dba105e 100644
--- a/test/validation/api/init/init_main.c
+++ b/test/validation/api/init/init_main.c
@@ -1,5 +1,5 @@
/* Copyright (c) 2015-2018, Linaro Limited
- * Copyright (c) 2019-2022, Nokia
+ * Copyright (c) 2019-2023, Nokia
* All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
@@ -242,6 +242,24 @@ static void init_test_feature_disabled(void)
init_test_feature(1);
}
+static void init_test_term_abnormal(void)
+{
+ int ret;
+ odp_instance_t instance;
+
+ ret = odp_init_global(&instance, NULL, NULL);
+ CU_ASSERT_FATAL(ret == 0);
+
+ ret = odp_init_local(instance, ODP_THREAD_WORKER);
+ CU_ASSERT_FATAL(ret == 0);
+
+ /* odp_term_abnormal() is allowed to fail */
+ ret = odp_term_abnormal(instance, 0, NULL);
+
+ if (ret < 0)
+ ODPH_ERR("Failed to perform all abnormal termination actions: %d\n", ret);
+}
+
odp_testinfo_t testinfo[] = {
ODP_TEST_INFO(init_test_defaults),
ODP_TEST_INFO(init_test_abort),
@@ -251,6 +269,7 @@ odp_testinfo_t testinfo[] = {
ODP_TEST_INFO(init_test_feature_disabled),
ODP_TEST_INFO(init_test_log_thread),
ODP_TEST_INFO(init_test_param_init),
+ ODP_TEST_INFO(init_test_term_abnormal)
};
odp_testinfo_t init_suite[] = {