Test Framework: Move start test functions into test suites
The test framework should not be responsible on how to start
particular test suites.
It only needs to provides a general run_test() API (already have).
Move the functions which start test suites to corresponding test
suites code.
Change-Id: I62fc17ae8bf75dd7f8b8d44d78382d82d369aabb
Signed-off-by: Kevin Peng <kevin.peng@arm.com>
diff --git a/tests_reg/test/framework/test_framework_integ_test.h b/tests_reg/test/framework/test_framework_integ_test.h
deleted file mode 100644
index 6760574..0000000
--- a/tests_reg/test/framework/test_framework_integ_test.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright (c) 2017-2021, Arm Limited. All rights reserved.
- *
- * SPDX-License-Identifier: BSD-3-Clause
- *
- */
-
-#ifndef __INTEG_TEST_H__
-#define __INTEG_TEST_H__
-
-#include "test_framework_error_codes.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * \brief Executes integration tests. To be called from appropriate
- * secure/non-secure service client.
- *
- * \returns Returns error code as specified in \ref test_suite_err_t
- */
-enum test_suite_err_t start_integ_test(void);
-
-/**
- * \brief Service stand-in shim for non secure tests. To be called from a
- * non-secure client.
- *
- * \returns Returns error code as specified in \ref test_suite_err_t
- */
-enum test_suite_err_t tfm_non_secure_client_run_tests(void);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __INTEG_TEST_H__ */
diff --git a/tests_reg/test/ns_regression/CMakeLists.txt b/tests_reg/test/ns_regression/CMakeLists.txt
index 95c55cf..f4616c3 100644
--- a/tests_reg/test/ns_regression/CMakeLists.txt
+++ b/tests_reg/test/ns_regression/CMakeLists.txt
@@ -56,6 +56,11 @@
non_secure_suites.c
)
+target_include_directories(tfm_ns_tests
+ INTERFACE
+ .
+)
+
target_link_libraries(tfm_ns_tests
INTERFACE
tfm_test_framework_ns
diff --git a/tests_reg/test/ns_regression/non_secure_suites.c b/tests_reg/test/ns_regression/non_secure_suites.c
index 4ac955a..47838ab 100644
--- a/tests_reg/test/ns_regression/non_secure_suites.c
+++ b/tests_reg/test/ns_regression/non_secure_suites.c
@@ -7,7 +7,7 @@
*
*/
-#include "test_framework_integ_test.h"
+#include "non_secure_suites.h"
#include "test_framework.h"
/* Service specific includes */
@@ -141,13 +141,7 @@
{0, 0, 0, 0}
};
-enum test_suite_err_t start_integ_test(void)
+enum test_suite_err_t ns_reg_test_start(void)
{
return run_test("Non-secure", test_suites);
}
-
-/* Service stand-in for NS tests. To be called from a non-secure context */
-enum test_suite_err_t tfm_non_secure_client_run_tests(void)
-{
- return start_integ_test();
-}
diff --git a/tests_reg/test/ns_regression/non_secure_suites.h b/tests_reg/test/ns_regression/non_secure_suites.h
new file mode 100644
index 0000000..7f8c5c4
--- /dev/null
+++ b/tests_reg/test/ns_regression/non_secure_suites.h
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2023, Arm Limited. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ */
+
+#ifndef _NON_SECURE_SUITES_H_
+#define _NON_SECURE_SUITES_H_
+
+#include "test_framework.h"
+
+/* Start the NS regression test */
+enum test_suite_err_t ns_reg_test_start(void);
+
+#endif /* _NON_SECURE_SUITES_H_ */
diff --git a/tests_reg/test/secure_fw/common_test_services/tfm_secure_client_service/tfm_secure_client_service.c b/tests_reg/test/secure_fw/common_test_services/tfm_secure_client_service/tfm_secure_client_service.c
index 489bca1..2d76049 100644
--- a/tests_reg/test/secure_fw/common_test_services/tfm_secure_client_service/tfm_secure_client_service.c
+++ b/tests_reg/test/secure_fw/common_test_services/tfm_secure_client_service/tfm_secure_client_service.c
@@ -6,7 +6,9 @@
*/
#include "tfm_secure_client_service.h"
-#include "test_framework_integ_test.h"
+
+#include "secure_suites.h"
+
#include "psa/service.h"
#include "psa_manifest/tfm_secure_client_service.h"
/**
@@ -17,7 +19,7 @@
*/
int32_t tfm_secure_client_service_init(void)
{
- tfm_secure_client_service_sfn_run_tests();
+ s_reg_test_start();
#if TFM_SP_SECURE_TEST_PARTITION_MODEL_IPC == 1
psa_signal_t signals;
@@ -38,9 +40,3 @@
return 0;
}
#endif /* TFM_SP_SECURE_TEST_PARTITION_MODEL_SFN == 1 */
-
-int32_t tfm_secure_client_service_sfn_run_tests(void)
-{
- start_integ_test();
- return 0;
-}
diff --git a/tests_reg/test/secure_regression/secure_fw.cmake b/tests_reg/test/secure_regression/secure_fw.cmake
index bba4a80..aa1503d 100644
--- a/tests_reg/test/secure_regression/secure_fw.cmake
+++ b/tests_reg/test/secure_regression/secure_fw.cmake
@@ -60,6 +60,11 @@
${CMAKE_CURRENT_LIST_DIR}/secure_suites.c
)
+target_include_directories(tfm_s_tests
+ INTERFACE
+ .
+)
+
target_link_libraries(tfm_s_tests
PUBLIC
tfm_test_framework_s
diff --git a/tests_reg/test/secure_regression/secure_suites.c b/tests_reg/test/secure_regression/secure_suites.c
index cacd3ec..d860b02 100644
--- a/tests_reg/test/secure_regression/secure_suites.c
+++ b/tests_reg/test/secure_regression/secure_suites.c
@@ -5,7 +5,7 @@
*
*/
-#include "test_framework_integ_test.h"
+#include "secure_suites.h"
#include "test_framework.h"
/* Service specific includes */
@@ -114,7 +114,7 @@
*/
}
-enum test_suite_err_t start_integ_test(void)
+enum test_suite_err_t s_reg_test_start(void)
{
enum test_suite_err_t retval;
diff --git a/tests_reg/test/secure_regression/secure_suites.h b/tests_reg/test/secure_regression/secure_suites.h
new file mode 100644
index 0000000..0141f54
--- /dev/null
+++ b/tests_reg/test/secure_regression/secure_suites.h
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2023, Arm Limited. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ *
+ */
+
+#ifndef _SECURE_SUITES_H_
+#define _SECURE_SUITES_H_
+
+#include "test_framework.h"
+
+/* Start the Secure regression test */
+enum test_suite_err_t s_reg_test_start(void);
+
+#endif /* _SECURE_SUITES_H_ */
diff --git a/tests_reg/test_app.c b/tests_reg/test_app.c
index d29743c..35b07d3 100644
--- a/tests_reg/test_app.c
+++ b/tests_reg/test_app.c
@@ -8,7 +8,7 @@
#include "test_app.h"
#include "tfm_log.h"
#ifdef TFM_NS_REG_TEST
-#include "test_framework_integ_test.h"
+#include "non_secure_suites.h"
#endif
/**
@@ -21,7 +21,7 @@
UNUSED_VARIABLE(argument);
#ifdef TFM_NS_REG_TEST
- tfm_non_secure_client_run_tests();
+ ns_reg_test_start();
#endif
/* Output EOT char for test environments like FVP. */