Added FD BBMD Address encoding. (#269)
* Added FD BBMD Address encoder and decoder * Added FD BBMD address to bacapp * Added FD BBMD address to network port object Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
This commit is contained in:
@@ -22,6 +22,12 @@ test:
|
||||
[ -d $(BUILD_DIR) ] && cd $(BUILD_DIR) && ctest $(CTEST_OPTIONS)
|
||||
[ -d $(BUILD_DIR) ] && $(MAKE) -C $(BUILD_DIR) lcov
|
||||
|
||||
.PHONY: retest
|
||||
retest:
|
||||
[ -d $(BUILD_DIR) ] && cd $(BUILD_DIR) && cmake --build . && cd ..
|
||||
[ -d $(BUILD_DIR) ] && cd $(BUILD_DIR) && ctest $(CTEST_OPTIONS)
|
||||
[ -d $(BUILD_DIR) ] && $(MAKE) -C $(BUILD_DIR) lcov
|
||||
|
||||
.PHONY: report
|
||||
report:
|
||||
[ -d $(BUILD_DIR) ] && cat $(BUILD_DIR)/Testing/Temporary/LastTest*.log
|
||||
|
||||
@@ -24,6 +24,7 @@ add_compile_definitions(
|
||||
BIG_ENDIAN=0
|
||||
CONFIG_ZTEST=1
|
||||
PRINT_ENABLED=1
|
||||
BACAPP_HOST_N_PORT=1
|
||||
)
|
||||
|
||||
include_directories(
|
||||
@@ -46,6 +47,7 @@ add_executable(${PROJECT_NAME}
|
||||
${SRC_DIR}/bacnet/basic/sys/days.c
|
||||
${SRC_DIR}/bacnet/lighting.c
|
||||
${SRC_DIR}/bacnet/indtext.c
|
||||
${SRC_DIR}/bacnet/datalink/bvlc.c
|
||||
# Test and test library files
|
||||
./src/main.c
|
||||
${ZTST_DIR}/ztest_mock.c
|
||||
|
||||
@@ -148,6 +148,9 @@ static void test_bacapp_copy(void)
|
||||
#if defined(BACAPP_LIGHTING_COMMAND)
|
||||
BACNET_APPLICATION_TAG_LIGHTING_COMMAND,
|
||||
#endif
|
||||
#if defined(BACAPP_HOST_N_PORT)
|
||||
BACNET_APPLICATION_TAG_HOST_N_PORT,
|
||||
#endif
|
||||
};
|
||||
for (i = 0; i < sizeof(tags)/sizeof(tags[0]); ++i) {
|
||||
BACNET_APPLICATION_TAG tag = tags[i];
|
||||
|
||||
@@ -816,6 +816,33 @@ static void test_BVLC_Address_Get_Set(void)
|
||||
zassert_equal(octet3, test_octet3, NULL);
|
||||
}
|
||||
|
||||
static void test_BVLC_BBMD_Address(void)
|
||||
{
|
||||
uint8_t apdu[480] = { 0 };
|
||||
uint16_t apdu_len = 0;
|
||||
uint16_t test_apdu_len = 0;
|
||||
uint16_t i = 0;
|
||||
BACNET_IP_ADDRESS bbmd_address;
|
||||
BACNET_IP_ADDRESS test_bbmd_address;
|
||||
BACNET_ERROR_CODE error_code = 0;
|
||||
bool status = false;
|
||||
|
||||
status = bvlc_address_port_from_ascii(
|
||||
&bbmd_address, "192.168.0.255", "0xBAC0");
|
||||
zassert_true(status, NULL);
|
||||
apdu_len = bvlc_foreign_device_bbmd_host_address_encode(apdu, sizeof(apdu),
|
||||
&bbmd_address);
|
||||
zassert_not_equal(apdu_len, 0, NULL);
|
||||
test_apdu_len = bvlc_foreign_device_bbmd_host_address_decode(apdu,
|
||||
apdu_len, &error_code, &test_bbmd_address);
|
||||
zassert_not_equal(test_apdu_len, 0, NULL);
|
||||
zassert_not_equal(test_apdu_len, BACNET_STATUS_ERROR, NULL);
|
||||
zassert_not_equal(test_apdu_len, BACNET_STATUS_ABORT, NULL);
|
||||
zassert_not_equal(test_apdu_len, BACNET_STATUS_REJECT, NULL);
|
||||
status = bvlc_address_different(&bbmd_address, &test_bbmd_address);
|
||||
zassert_false(status, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* @}
|
||||
*/
|
||||
@@ -837,7 +864,8 @@ void test_main(void)
|
||||
ztest_unit_test(test_BVLC_Original_Broadcast_NPDU),
|
||||
ztest_unit_test(test_BVLC_Secure_BVLL),
|
||||
ztest_unit_test(test_BVLC_Address_Copy),
|
||||
ztest_unit_test(test_BVLC_Address_Get_Set)
|
||||
ztest_unit_test(test_BVLC_Address_Get_Set),
|
||||
ztest_unit_test(test_BVLC_BBMD_Address)
|
||||
);
|
||||
|
||||
ztest_run_test_suite(bvlc_tests);
|
||||
|
||||
Reference in New Issue
Block a user