From 4b742effe1c63dd55c6e6c3c4655678cb977872e Mon Sep 17 00:00:00 2001 From: Mikhail Antropov <103285038+Michail-Antropov@users.noreply.github.com> Date: Sat, 30 Jul 2022 11:31:38 +0300 Subject: [PATCH] Fix tests: (#314) - misprint in ports/zephyr/bip-init.c - error processing PROP_TRACKING_VALUE for the Color Temperature object in src/bacnet/bacapp.c - misprint MSV test - add hostnport.c for each zephyr tests - fix colors and ms-input tests - remove mocking Device_Inc_Database_Revision() for zephyr tests - debug the color temperature test --- ports/zephyr/bip-init.c | 2 +- test/CMakeLists.txt | 1 + .../basic/object/color_object/CMakeLists.txt | 1 + .../basic/object/color_object/src/main.c | 16 ----- .../object/color_temperature/CMakeLists.txt | 1 + .../basic/object/color_temperature/src/main.c | 19 +----- test/bacnet/basic/object/lo/src/main.c | 4 -- test/bacnet/basic/object/mock/device_mock.c | 26 ++++++++ .../basic/object/ms-input/CMakeLists.txt | 1 + test/bacnet/basic/object/ms-input/src/main.c | 13 ---- test/bacnet/basic/object/msv/src/main.c | 4 +- zephyr/CMakeLists.txt | 4 ++ .../bacnet/basic/object/acc/CMakeLists.txt | 1 + .../object/access_credential/CMakeLists.txt | 1 + .../basic/object/access_door/CMakeLists.txt | 1 + .../basic/object/access_point/CMakeLists.txt | 1 + .../basic/object/access_rights/CMakeLists.txt | 1 + .../basic/object/access_user/CMakeLists.txt | 1 + .../basic/object/access_zone/CMakeLists.txt | 1 + .../bacnet/basic/object/ai/CMakeLists.txt | 1 + .../bacnet/basic/object/ao/CMakeLists.txt | 1 + .../bacnet/basic/object/av/CMakeLists.txt | 1 + .../bacnet/basic/object/bi/CMakeLists.txt | 1 + .../bacnet/basic/object/bo/CMakeLists.txt | 1 + .../bacnet/basic/object/bv/CMakeLists.txt | 1 + .../basic/object/color_object/CMakeLists.txt | 63 +++++++++++++++++++ .../bacnet/basic/object/color_object/prj.conf | 2 + .../basic/object/color_object/testcase.yaml | 6 ++ .../object/color_temperature/CMakeLists.txt | 63 +++++++++++++++++++ .../basic/object/color_temperature/prj.conf | 2 + .../object/color_temperature/testcase.yaml | 6 ++ .../basic/object/command/CMakeLists.txt | 1 + .../credential_data_input/CMakeLists.txt | 1 + .../bacnet/basic/object/device/CMakeLists.txt | 17 ++++- .../bacnet/basic/object/lc/CMakeLists.txt | 1 + .../bacnet/basic/object/lo/CMakeLists.txt | 1 + .../bacnet/basic/object/lsp/CMakeLists.txt | 1 + .../basic/object/ms-input/CMakeLists.txt | 2 + .../bacnet/basic/object/mso/CMakeLists.txt | 1 + .../bacnet/basic/object/msv/CMakeLists.txt | 1 + .../basic/object/netport/CMakeLists.txt | 1 + .../bacnet/basic/object/netport/prj.conf | 9 +++ .../basic/object/objects/CMakeLists.txt | 1 + .../bacnet/basic/object/osv/CMakeLists.txt | 1 + .../bacnet/basic/object/piv/CMakeLists.txt | 1 + .../basic/object/schedule/CMakeLists.txt | 1 + 46 files changed, 233 insertions(+), 54 deletions(-) create mode 100644 test/bacnet/basic/object/mock/device_mock.c create mode 100644 zephyr/tests/bacnet/basic/object/color_object/CMakeLists.txt create mode 100644 zephyr/tests/bacnet/basic/object/color_object/prj.conf create mode 100644 zephyr/tests/bacnet/basic/object/color_object/testcase.yaml create mode 100644 zephyr/tests/bacnet/basic/object/color_temperature/CMakeLists.txt create mode 100644 zephyr/tests/bacnet/basic/object/color_temperature/prj.conf create mode 100644 zephyr/tests/bacnet/basic/object/color_temperature/testcase.yaml diff --git a/ports/zephyr/bip-init.c b/ports/zephyr/bip-init.c index 00a4d0ee..e1480e2c 100644 --- a/ports/zephyr/bip-init.c +++ b/ports/zephyr/bip-init.c @@ -573,7 +573,7 @@ static int createSocket(struct sockaddr_in *sin) */ bool bip_init(char *ifname) { - int status = -1; + int sock_fd; struct sockaddr_in sin = { 0 }; bip_set_interface(ifname); diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 2ac55dee..6f5e7122 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -91,6 +91,7 @@ list(APPEND testdirs bacnet/basic/object/bo bacnet/basic/object/bv bacnet/basic/object/color_object + bacnet/basic/object/color_temperature bacnet/basic/object/command bacnet/basic/object/credential_data_input bacnet/basic/object/device diff --git a/test/bacnet/basic/object/color_object/CMakeLists.txt b/test/bacnet/basic/object/color_object/CMakeLists.txt index bc49cbd7..9a48278b 100644 --- a/test/bacnet/basic/object/color_object/CMakeLists.txt +++ b/test/bacnet/basic/object/color_object/CMakeLists.txt @@ -54,6 +54,7 @@ add_executable(${PROJECT_NAME} ${SRC_DIR}/bacnet/wp.c # Test and test library files ./src/main.c + ../mock/device_mock.c ${ZTST_DIR}/ztest_mock.c ${ZTST_DIR}/ztest.c ) diff --git a/test/bacnet/basic/object/color_object/src/main.c b/test/bacnet/basic/object/color_object/src/main.c index 99e16753..d07f365a 100644 --- a/test/bacnet/basic/object/color_object/src/main.c +++ b/test/bacnet/basic/object/color_object/src/main.c @@ -10,22 +10,6 @@ #include #include - -bool Device_Valid_Object_Name( - BACNET_CHARACTER_STRING * object_name, - BACNET_OBJECT_TYPE *object_type, - uint32_t * object_instance) -{ - return true; -} - -void Device_Inc_Database_Revision( - void) -{ - -} - - /** * @addtogroup bacnet_tests * @{ diff --git a/test/bacnet/basic/object/color_temperature/CMakeLists.txt b/test/bacnet/basic/object/color_temperature/CMakeLists.txt index 3d0f97fe..603d69d4 100644 --- a/test/bacnet/basic/object/color_temperature/CMakeLists.txt +++ b/test/bacnet/basic/object/color_temperature/CMakeLists.txt @@ -54,6 +54,7 @@ add_executable(${PROJECT_NAME} ${SRC_DIR}/bacnet/wp.c # Test and test library files ./src/main.c + ../mock/device_mock.c ${ZTST_DIR}/ztest_mock.c ${ZTST_DIR}/ztest.c ) diff --git a/test/bacnet/basic/object/color_temperature/src/main.c b/test/bacnet/basic/object/color_temperature/src/main.c index 4b405a7a..fd9c79b7 100644 --- a/test/bacnet/basic/object/color_temperature/src/main.c +++ b/test/bacnet/basic/object/color_temperature/src/main.c @@ -11,21 +11,6 @@ #include -bool Device_Valid_Object_Name( - BACNET_CHARACTER_STRING * object_name, - BACNET_OBJECT_TYPE *object_type, - uint32_t * object_instance) -{ - return true; -} - -void Device_Inc_Database_Revision( - void) -{ - -} - - /** * @addtogroup bacnet_tests * @{ @@ -53,11 +38,11 @@ static void testColorTemperature(void) rpdata.object_instance = instance; rpdata.object_property = PROP_OBJECT_IDENTIFIER; - Color_Property_Lists(&required_property, NULL, NULL); + Color_Temperature_Property_Lists(&required_property, NULL, NULL); while ((*required_property) >= 0) { rpdata.object_property = *required_property; rpdata.array_index = BACNET_ARRAY_ALL; - len = Color_Read_Property(&rpdata); + len = Color_Temperature_Read_Property(&rpdata); zassert_true(len >= 0, NULL); if (len >= 0) { test_len = bacapp_decode_known_property(rpdata.application_data, diff --git a/test/bacnet/basic/object/lo/src/main.c b/test/bacnet/basic/object/lo/src/main.c index 974daf0d..a1162c3a 100644 --- a/test/bacnet/basic/object/lo/src/main.c +++ b/test/bacnet/basic/object/lo/src/main.c @@ -24,10 +24,6 @@ static void testLightingOutput(void) { uint8_t apdu[MAX_APDU] = { 0 }; int len = 0, test_len = 0; - uint32_t len_value = 0; - uint8_t tag_number = 0; - BACNET_OBJECT_TYPE decoded_type = 0; - uint32_t decoded_instance = 0; BACNET_READ_PROPERTY_DATA rpdata; BACNET_APPLICATION_DATA_VALUE value = {0}; const int *required_property = NULL; diff --git a/test/bacnet/basic/object/mock/device_mock.c b/test/bacnet/basic/object/mock/device_mock.c new file mode 100644 index 00000000..93b3592e --- /dev/null +++ b/test/bacnet/basic/object/mock/device_mock.c @@ -0,0 +1,26 @@ +/** + * @file + * @brief mock Device object functions + * @author Mikhail Antropov + * @date July 2022 + * + * SPDX-License-Identifier: MIT + */ +#include +#include +#include + + +bool Device_Valid_Object_Name( + BACNET_CHARACTER_STRING * object_name, + BACNET_OBJECT_TYPE *object_type, + uint32_t * object_instance) +{ + return true; +} + +void Device_Inc_Database_Revision( + void) +{ + +} diff --git a/test/bacnet/basic/object/ms-input/CMakeLists.txt b/test/bacnet/basic/object/ms-input/CMakeLists.txt index 5a720a42..7a095219 100644 --- a/test/bacnet/basic/object/ms-input/CMakeLists.txt +++ b/test/bacnet/basic/object/ms-input/CMakeLists.txt @@ -51,6 +51,7 @@ add_executable(${PROJECT_NAME} ${SRC_DIR}/bacnet/wp.c # Test and test library files ./src/main.c + ../mock/device_mock.c ${ZTST_DIR}/ztest_mock.c ${ZTST_DIR}/ztest.c ) diff --git a/test/bacnet/basic/object/ms-input/src/main.c b/test/bacnet/basic/object/ms-input/src/main.c index 5a965646..a0f4e01c 100644 --- a/test/bacnet/basic/object/ms-input/src/main.c +++ b/test/bacnet/basic/object/ms-input/src/main.c @@ -11,19 +11,6 @@ #include #include -/** - * stub - */ -bool Device_Valid_Object_Name(BACNET_CHARACTER_STRING *object_name, - BACNET_OBJECT_TYPE *object_type, - uint32_t *object_instance) -{ - (void)object_name; - (void)object_type; - (void)object_instance; - return false; -} - /** * @addtogroup bacnet_tests * @{ diff --git a/test/bacnet/basic/object/msv/src/main.c b/test/bacnet/basic/object/msv/src/main.c index 5693f591..1d3cfdaf 100644 --- a/test/bacnet/basic/object/msv/src/main.c +++ b/test/bacnet/basic/object/msv/src/main.c @@ -19,7 +19,7 @@ /** * @brief Test */ -static void testMultistateInput(void) +static void testMultistateValue(void) { uint8_t apdu[MAX_APDU] = { 0 }; int len = 0; @@ -54,7 +54,7 @@ static void testMultistateInput(void) void test_main(void) { ztest_test_suite(msv_tests, - ztest_unit_test(testMultistateInput) + ztest_unit_test(testMultistateValue) ); ztest_run_test_suite(msv_tests); diff --git a/zephyr/CMakeLists.txt b/zephyr/CMakeLists.txt index 3fd56b53..21e6f56d 100644 --- a/zephyr/CMakeLists.txt +++ b/zephyr/CMakeLists.txt @@ -111,6 +111,8 @@ set(BACNETSTACK_SRCS ${BACNETSTACK_SRC}/bacnet/basic/object/bo.h ${BACNETSTACK_SRC}/bacnet/basic/object/bv.h ${BACNETSTACK_SRC}/bacnet/basic/object/channel.h + ${BACNETSTACK_SRC}/bacnet/basic/object/color_object.h + ${BACNETSTACK_SRC}/bacnet/basic/object/color_temperature.h ${BACNETSTACK_SRC}/bacnet/basic/object/command.h ${BACNETSTACK_SRC}/bacnet/basic/object/credential_data_input.h ${BACNETSTACK_SRC}/bacnet/basic/object/csv.h @@ -327,6 +329,8 @@ set(BACNETSTACK_BASIC_SRCS ${BACNETSTACK_SRC}/bacnet/basic/object/channel.c #${BACNETSTACK_SRC}/bacnet/basic/object/client/device-client.c ${BACNETSTACK_SRC}/bacnet/basic/object/command.c + ${BACNETSTACK_SRC}/bacnet/basic/object/color_object.c + ${BACNETSTACK_SRC}/bacnet/basic/object/color_temperature.c ${BACNETSTACK_SRC}/bacnet/basic/object/credential_data_input.c ${BACNETSTACK_SRC}/bacnet/basic/object/csv.c ${BACNETSTACK_SRC}/bacnet/basic/object/device.c diff --git a/zephyr/tests/bacnet/basic/object/acc/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/acc/CMakeLists.txt index 51e28250..f7618746 100644 --- a/zephyr/tests/bacnet/basic/object/acc/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/acc/CMakeLists.txt @@ -44,6 +44,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/bactext.c ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/access_credential/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/access_credential/CMakeLists.txt index e07fbe07..d140ebaf 100644 --- a/zephyr/tests/bacnet/basic/object/access_credential/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/access_credential/CMakeLists.txt @@ -48,6 +48,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/authentication_factor.c ${BACNET_SRC}/assigned_access_rights.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/access_door/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/access_door/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/access_door/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/access_door/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/access_point/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/access_point/CMakeLists.txt index 51e28250..f7618746 100644 --- a/zephyr/tests/bacnet/basic/object/access_point/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/access_point/CMakeLists.txt @@ -44,6 +44,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/bactext.c ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/access_rights/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/access_rights/CMakeLists.txt index b76599e5..1663a1ec 100644 --- a/zephyr/tests/bacnet/basic/object/access_rights/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/access_rights/CMakeLists.txt @@ -46,6 +46,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c ${BACNET_SRC}/access_rule.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/access_user/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/access_user/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/access_user/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/access_user/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/access_zone/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/access_zone/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/access_zone/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/access_zone/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/ai/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/ai/CMakeLists.txt index 1e3b2505..a635ca16 100644 --- a/zephyr/tests/bacnet/basic/object/ai/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/ai/CMakeLists.txt @@ -47,6 +47,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/wp.c ${BACNET_SRC}/cov.c ${BACNET_SRC}/memcopy.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/ao/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/ao/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/ao/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/ao/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/av/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/av/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/av/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/av/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/bi/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/bi/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/bi/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/bi/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/bo/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/bo/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/bo/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/bo/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/bv/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/bv/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/bv/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/bv/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/color_object/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/color_object/CMakeLists.txt new file mode 100644 index 00000000..dc01ff5a --- /dev/null +++ b/zephyr/tests/bacnet/basic/object/color_object/CMakeLists.txt @@ -0,0 +1,63 @@ +# SPDX-License-Identifier: MIT + +cmake_minimum_required(VERSION 3.13.1) + +# Extract module path and names +string(REGEX REPLACE + "/zephyr/tests/[a-zA-Z_/-]*$" "" + BACNET_BASE + ${CMAKE_CURRENT_SOURCE_DIR}) +string(REGEX REPLACE + "/zephyr/tests/" "/src/" + BACNET_SRC_PATH + ${CMAKE_CURRENT_SOURCE_DIR}) +string(REGEX REPLACE + "/zephyr/tests/" "/test/" + BACNET_TEST_PATH + ${CMAKE_CURRENT_SOURCE_DIR}) +get_filename_component(BACNET_NAME ${BACNET_BASE} NAME) + +# Update include path for this module +list(APPEND BACNET_INCLUDE ${BACNET_BASE}/src) + +if(BOARD STREQUAL unit_testing) + file(RELATIVE_PATH BACNET_INCLUDE $ENV{ZEPHYR_BASE} ${BACNET_BASE}/src) + list(APPEND INCLUDE ${BACNET_INCLUDE}) + list(APPEND SOURCES + ${BACNET_SRC_PATH}.c + ${BACNET_TEST_PATH}/src/main.c + ${BACNET_TEST_PATH}/../mock/device_mock.c + ) + + get_filename_component(BACNET_OBJECT_SRC ${BACNET_SRC_PATH} PATH) + get_filename_component(BACNET_BASIC_SRC ${BACNET_OBJECT_SRC} PATH) + get_filename_component(BACNET_SRC ${BACNET_BASIC_SRC} PATH) + list(APPEND SOURCES + ${BACNET_SRC}/bacapp.c + ${BACNET_SRC}/bacdcode.c + ${BACNET_SRC}/bacstr.c + ${BACNET_SRC}/bacint.c + ${BACNET_SRC}/bacreal.c + ${BACNET_SRC}/datetime.c + ${BACNET_SRC}/timestamp.c + ${BACNET_SRC}/basic/sys/days.c + ${BACNET_SRC}/basic/sys/keylist.c + ${BACNET_SRC}/bacdevobjpropref.c + ${BACNET_SRC}/bactext.c + ${BACNET_SRC}/indtext.c + ${BACNET_SRC}/lighting.c + ${BACNET_SRC}/hostnport.c + ${BACNET_SRC}/wp.c + ) + + include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) + project(${BACNET_NAME}) +else() + include($ENV{ZEPHYR_BASE}/cmake/app/boilerplate.cmake NO_POLICY_SCOPE) + project(${BACNET_NAME}) + + target_include_directories(app PRIVATE ${BACNET_INCLUDE}) + target_sources(app PRIVATE + ${BACNET_TEST_PATH}/src/main.c + ) +endif() diff --git a/zephyr/tests/bacnet/basic/object/color_object/prj.conf b/zephyr/tests/bacnet/basic/object/color_object/prj.conf new file mode 100644 index 00000000..7c43f2ec --- /dev/null +++ b/zephyr/tests/bacnet/basic/object/color_object/prj.conf @@ -0,0 +1,2 @@ +CONFIG_ZTEST=y +CONFIG_BACNETSTACK=y diff --git a/zephyr/tests/bacnet/basic/object/color_object/testcase.yaml b/zephyr/tests/bacnet/basic/object/color_object/testcase.yaml new file mode 100644 index 00000000..d4ba5fca --- /dev/null +++ b/zephyr/tests/bacnet/basic/object/color_object/testcase.yaml @@ -0,0 +1,6 @@ +tests: + bacnet.basic.object.color_object: + tags: bacnet + bacnet.basic.object.color_object.unit: + tags: bacnet + type: unit diff --git a/zephyr/tests/bacnet/basic/object/color_temperature/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/color_temperature/CMakeLists.txt new file mode 100644 index 00000000..2fed4bfa --- /dev/null +++ b/zephyr/tests/bacnet/basic/object/color_temperature/CMakeLists.txt @@ -0,0 +1,63 @@ +# SPDX-License-Identifier: MIT + +cmake_minimum_required(VERSION 3.13.1) + +# Extract module path and names +string(REGEX REPLACE + "/zephyr/tests/[a-zA-Z_/-]*$" "" + BACNET_BASE + ${CMAKE_CURRENT_SOURCE_DIR}) +string(REGEX REPLACE + "/zephyr/tests/" "/src/" + BACNET_SRC_PATH + ${CMAKE_CURRENT_SOURCE_DIR}) +string(REGEX REPLACE + "/zephyr/tests/" "/test/" + BACNET_TEST_PATH + ${CMAKE_CURRENT_SOURCE_DIR}) +get_filename_component(BACNET_NAME ${BACNET_BASE} NAME) + +# Update include path for this module +list(APPEND BACNET_INCLUDE ${BACNET_BASE}/src) + +if(BOARD STREQUAL unit_testing) + file(RELATIVE_PATH BACNET_INCLUDE $ENV{ZEPHYR_BASE} ${BACNET_BASE}/src) + list(APPEND INCLUDE ${BACNET_INCLUDE}) + list(APPEND SOURCES + ${BACNET_SRC_PATH}.c + ${BACNET_TEST_PATH}/src/main.c + ${BACNET_TEST_PATH}/../mock/device_mock.c + ) + + get_filename_component(BACNET_OBJECT_SRC ${BACNET_SRC_PATH} PATH) + get_filename_component(BACNET_BASIC_SRC ${BACNET_OBJECT_SRC} PATH) + get_filename_component(BACNET_SRC ${BACNET_BASIC_SRC} PATH) + list(APPEND SOURCES + ${BACNET_SRC}/bacapp.c + ${BACNET_SRC}/bacdcode.c + ${BACNET_SRC}/bacstr.c + ${BACNET_SRC}/bacint.c + ${BACNET_SRC}/bacreal.c + ${BACNET_SRC}/datetime.c + ${BACNET_SRC}/timestamp.c + ${BACNET_SRC}/basic/sys/days.c + ${BACNET_SRC}/basic/sys/keylist.c + ${BACNET_SRC}/bacdevobjpropref.c + ${BACNET_SRC}/bactext.c + ${BACNET_SRC}/indtext.c + ${BACNET_SRC}/lighting.c + ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c + ) + + include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) + project(${BACNET_NAME}) +else() + include($ENV{ZEPHYR_BASE}/cmake/app/boilerplate.cmake NO_POLICY_SCOPE) + project(${BACNET_NAME}) + + target_include_directories(app PRIVATE ${BACNET_INCLUDE}) + target_sources(app PRIVATE + ${BACNET_TEST_PATH}/src/main.c + ) +endif() diff --git a/zephyr/tests/bacnet/basic/object/color_temperature/prj.conf b/zephyr/tests/bacnet/basic/object/color_temperature/prj.conf new file mode 100644 index 00000000..7c43f2ec --- /dev/null +++ b/zephyr/tests/bacnet/basic/object/color_temperature/prj.conf @@ -0,0 +1,2 @@ +CONFIG_ZTEST=y +CONFIG_BACNETSTACK=y diff --git a/zephyr/tests/bacnet/basic/object/color_temperature/testcase.yaml b/zephyr/tests/bacnet/basic/object/color_temperature/testcase.yaml new file mode 100644 index 00000000..6d23989a --- /dev/null +++ b/zephyr/tests/bacnet/basic/object/color_temperature/testcase.yaml @@ -0,0 +1,6 @@ +tests: + bacnet.basic.object.color_temperature: + tags: bacnet + bacnet.basic.object.color_temperature.unit: + tags: bacnet + type: unit diff --git a/zephyr/tests/bacnet/basic/object/command/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/command/CMakeLists.txt index 8bbd8f6d..31c90834 100644 --- a/zephyr/tests/bacnet/basic/object/command/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/command/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/credential_data_input/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/credential_data_input/CMakeLists.txt index dab4c08a..077aee29 100644 --- a/zephyr/tests/bacnet/basic/object/credential_data_input/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/credential_data_input/CMakeLists.txt @@ -47,6 +47,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/wp.c ${BACNET_SRC}/authentication_factor.c ${BACNET_SRC}/authentication_factor_format.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/device/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/device/CMakeLists.txt index a228d960..dc4b52ec 100644 --- a/zephyr/tests/bacnet/basic/object/device/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/device/CMakeLists.txt @@ -54,6 +54,11 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/npdu.c ${BACNET_SRC}/proplist.c ${BACNET_SRC}/reject.c + ${BACNET_SRC}/abort.c + ${BACNET_SRC}/bacaddr.c + ${BACNET_SRC}/bactimevalue.c + ${BACNET_SRC}/bacerror.c + ${BACNET_SRC}/basic/binding/address.c ${BACNET_SRC}/basic/object/acc.c ${BACNET_SRC}/basic/object/ai.c ${BACNET_SRC}/basic/object/ao.c @@ -62,6 +67,8 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/basic/object/bo.c ${BACNET_SRC}/basic/object/bv.c ${BACNET_SRC}/basic/object/channel.c + ${BACNET_SRC}/basic/object/color_object.c + ${BACNET_SRC}/basic/object/color_temperature.c ${BACNET_SRC}/basic/object/command.c ${BACNET_SRC}/basic/object/csv.c ${BACNET_SRC}/basic/object/iv.c @@ -76,6 +83,14 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/basic/object/piv.c ${BACNET_SRC}/basic/object/schedule.c ${BACNET_SRC}/basic/object/trendlog.c + ${BACNET_SRC}/hostnport.c + ${BACNET_SRC}/basic/service/h_apdu.c + ${BACNET_SRC}/basic/service/h_cov.c + ${BACNET_SRC}/basic/service/h_wp.c + ${BACNET_SRC}/basic/sys/bigend.c + ${BACNET_SRC}/basic/sys/keylist.c + ${BACNET_SRC}/basic/tsm/tsm.c + ${BACNET_SRC}/datalink/bvlc.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) @@ -87,6 +102,6 @@ else() target_include_directories(app PRIVATE ${BACNET_INCLUDE}) target_sources(app PRIVATE ${BACNET_TEST_PATH}/src/main.c - ${BACNET_TEST_PATH}/stubs.c + #${BACNET_TEST_PATH}/stubs.c ) endif() diff --git a/zephyr/tests/bacnet/basic/object/lc/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/lc/CMakeLists.txt index 015dc479..97e6b05d 100644 --- a/zephyr/tests/bacnet/basic/object/lc/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/lc/CMakeLists.txt @@ -47,6 +47,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c ${BACNET_OBJECT_SRC}/ao.c + ${BACNET_SRC}/hostnport.c ) add_definitions(-DUNIT_TESTING) diff --git a/zephyr/tests/bacnet/basic/object/lo/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/lo/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/lo/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/lo/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/lsp/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/lsp/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/lsp/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/lsp/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/ms-input/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/ms-input/CMakeLists.txt index 9713bf07..debcc331 100644 --- a/zephyr/tests/bacnet/basic/object/ms-input/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/ms-input/CMakeLists.txt @@ -26,6 +26,7 @@ if(BOARD STREQUAL unit_testing) list(APPEND SOURCES ${BACNET_SRC_PATH}.c ${BACNET_TEST_PATH}/src/main.c + ${BACNET_TEST_PATH}/../mock/device_mock.c ) get_filename_component(BACNET_OBJECT_SRC ${BACNET_SRC_PATH} PATH) @@ -45,6 +46,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/mso/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/mso/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/mso/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/mso/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/msv/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/msv/CMakeLists.txt index 1e3b2505..a635ca16 100644 --- a/zephyr/tests/bacnet/basic/object/msv/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/msv/CMakeLists.txt @@ -47,6 +47,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/wp.c ${BACNET_SRC}/cov.c ${BACNET_SRC}/memcopy.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/netport/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/netport/CMakeLists.txt index 567285bd..c961229b 100644 --- a/zephyr/tests/bacnet/basic/object/netport/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/netport/CMakeLists.txt @@ -47,6 +47,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/wp.c ${BACNET_SRC}/proplist.c ${BACNET_SRC}/datalink/bvlc.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/netport/prj.conf b/zephyr/tests/bacnet/basic/object/netport/prj.conf index 7c43f2ec..f50998bd 100644 --- a/zephyr/tests/bacnet/basic/object/netport/prj.conf +++ b/zephyr/tests/bacnet/basic/object/netport/prj.conf @@ -1,2 +1,11 @@ CONFIG_ZTEST=y CONFIG_BACNETSTACK=y + +# BIP Options +CONFIG_BACDL_BIP=y +CONFIG_BACDL_BIP_PORT=47808 +CONFIG_BACDL_BIP_ADDRESS_INDEX=0 + +# networking +CONFIG_NETWORKING=y +CONFIG_NET_IPV4=y diff --git a/zephyr/tests/bacnet/basic/object/objects/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/objects/CMakeLists.txt index 64b06940..c9baa945 100644 --- a/zephyr/tests/bacnet/basic/object/objects/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/objects/CMakeLists.txt @@ -46,6 +46,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c ${BACNET_BASIC_SRC}/sys/keylist.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/osv/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/osv/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/osv/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/osv/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/piv/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/piv/CMakeLists.txt index 9713bf07..ea2b5018 100644 --- a/zephyr/tests/bacnet/basic/object/piv/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/piv/CMakeLists.txt @@ -45,6 +45,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/indtext.c ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake) diff --git a/zephyr/tests/bacnet/basic/object/schedule/CMakeLists.txt b/zephyr/tests/bacnet/basic/object/schedule/CMakeLists.txt index 42e80790..e07011d4 100644 --- a/zephyr/tests/bacnet/basic/object/schedule/CMakeLists.txt +++ b/zephyr/tests/bacnet/basic/object/schedule/CMakeLists.txt @@ -46,6 +46,7 @@ if(BOARD STREQUAL unit_testing) ${BACNET_SRC}/lighting.c ${BACNET_SRC}/wp.c ${BACNET_SRC}/bactimevalue.c + ${BACNET_SRC}/hostnport.c ) include($ENV{ZEPHYR_BASE}/subsys/testsuite/unittest.cmake)