diff --git a/unit/test-wsc.c b/unit/test-wsc.c index c26a109c..66e03e01 100644 --- a/unit/test-wsc.c +++ b/unit/test-wsc.c @@ -1166,6 +1166,22 @@ static void wsc_test_parse_m4(const void *data) encrypted.iov_base, encrypted.iov_len)); } +static void wsc_test_build_m4(const void *data) +{ + const struct m4_data *test = data; + uint8_t *out; + size_t out_len; + + out = wsc_build_m4(&test->expected, test->expected_encrypted, + test->expected_encrypted_size, &out_len); + assert(out); + + assert(out_len == test->len); + assert(!memcmp(test->pdu, out, test->len)); + + l_free(out); +} + int main(int argc, char *argv[]) { l_test_init(&argc, &argv); @@ -1209,6 +1225,7 @@ int main(int argc, char *argv[]) l_test_add("/wsc/build/m3 1", wsc_test_build_m3, &m3_data_1); l_test_add("/wsc/parse/m4 1", wsc_test_parse_m4, &m4_data_1); + l_test_add("/wsc/build/m4 1", wsc_test_build_m4, &m4_data_1); return l_test_run(); }