CMD_UPDATE_PUBLISH,
CMD_SUBSCRIBE,
CMD_CANCEL_SUBSCRIBE,
+ CMD_TEST_SPECIFIC_INFO,
CMD_INVALID,
};
= "SUBSCRIBE",
[CMD_CANCEL_SUBSCRIBE]
= "CANCEL SUBSCRIBE",
+ [CMD_TEST_SPECIFIC_INFO]
+ = "TEST SPECIFIC INFO",
[CMD_INVALID]
= NULL, };
__print_result(ret, "wifi_aware_cancel_subscribe");
}
+static struct {
+ wifi_aware_publish_h handle;
+ char service_name[MAX_SERVICE_NAME_LEN + 1];
+ unsigned char info[MAX_SPECIFIC_INFO_LEN];
+ size_t len;
+} info_test_data[] = {
+ { NULL, "SPECIFIC_INFO_TEST_1", {1, 2, 3, 4, 5}, 5 },
+ { NULL, "SPECIFIC_INFO_TEST_2", {'A', 'B', 'C', '\0'}, 4 },
+ { NULL, "SPECIFIC_INFO_TEST_3", {0, 0, 0, 0, 0, 0, 0}, 7 },
+ { NULL, "SPECIFIC_INFO_TEST_4", {1, 2, 3, 4, 5}, 3 },
+ { NULL, "SPECIFIC_INFO_TEST_5", {1, 2, 3, 4, 5}, 7 },
+};
+
+void test_specific_info()
+{
+ int ret = 0;
+
+ RET_IF_LOOP_IS_NULL();
+ RET_IF_HANDLE_IS_NULL();
+
+ for (int i = 0; i < sizeof(info_test_data) / sizeof(info_test_data[0]); ++i) {
+ ret = wifi_aware_publish_create(g_wifi_aware_handle, &info_test_data[i].handle);
+ __print_result(ret, "wifi_aware_publish_create");
+
+ ret = wifi_aware_publish_set_type(info_test_data[i].handle, WIFI_AWARE_PUBLISH_TYPE_UNSOLICITED);
+ __print_result(ret, "wifi_aware_publish_set_type");
+ if (ret != WIFI_AWARE_ERROR_NONE)
+ return;
+
+ ret = wifi_aware_publish_set_service_name(info_test_data[i].handle,
+ info_test_data[i].service_name);
+ __print_result(ret, "wifi_aware_publish_set_service_name");
+ if (ret != WIFI_AWARE_ERROR_NONE)
+ return;
+
+ ret = wifi_aware_publish_set_service_specific_info(info_test_data[i].handle,
+ info_test_data[i].info, info_test_data[i].len);
+ __print_result(ret, "wifi_aware_publish_set_service_specific_info");
+ if (ret != WIFI_AWARE_ERROR_NONE)
+ return;
+
+ ret = wifi_aware_start_publish(info_test_data[i].handle, __published_cb, NULL);
+ }
+}
+
typedef void (*test_func)(void);
test_func g_menu_func[] = {
[CMD_QUIT] = test_quit,
[CMD_UPDATE_PUBLISH] = test_update_publish,
[CMD_SUBSCRIBE] = test_subscribe,
[CMD_CANCEL_SUBSCRIBE] = test_cancel_subscribe,
+ [CMD_TEST_SPECIFIC_INFO] = test_specific_info,
[CMD_INVALID] = NULL,
};