Add update subscribe test
authorCheoleun Moon <chleun.moon@samsung.com>
Wed, 1 Apr 2020 08:55:01 +0000 (17:55 +0900)
committerCheoleun Moon <chleun.moon@samsung.com>
Wed, 1 Apr 2020 08:55:01 +0000 (17:55 +0900)
test/wifi-aware-test.c

index 5e531c42f815b7eaf2262bd73d467724ce645690..2fbfc44c909e86efa14320101cb1d555e81f40be 100644 (file)
@@ -94,6 +94,7 @@
 #define PUB_SSI "Extra bytes in the publisher discovery"
 #define UPDATE_PUB_SSI "Updated Specific Information"
 #define SUB_SSI "Arbitrary bytes for the subscribe discovery"
+#define UPDATE_SUB_SSI "Updated Arbitrary bytes for the subscribe discovery"
 #define MSG_SUB_TO_PUB "Let's talk"
 #define MSG_PUB_TO_SUB "Ready"
 #define PASSPHRASE "Some super secret password"
@@ -128,6 +129,7 @@ enum {
        CMD_CANCEL_PUBLISH,
        CMD_UPDATE_PUBLISH,
        CMD_SUBSCRIBE,
+       CMD_UPDATE_SUBSCRIBE,
        CMD_CANCEL_SUBSCRIBE,
 
        CMD_MESSAGE_RECV_CB,
@@ -166,6 +168,8 @@ static char *g_menu_str[] = {
                = "UPDATE PUBLISH",
        [CMD_SUBSCRIBE]
                = "SUBSCRIBE",
+       [CMD_UPDATE_SUBSCRIBE]
+               = "UPDATE_SUBSCRIBE",
        [CMD_CANCEL_SUBSCRIBE]
                = "CANCEL SUBSCRIBE",
 
@@ -719,6 +723,40 @@ void test_subscribe()
        g_session_type = 1;
 }
 
+static void __updated_subscribe_cb(wifi_aware_session_h session,
+               wifi_aware_error_e error, void *user_data)
+{
+       if (error == WIFI_AWARE_ERROR_NONE)
+               printf("Update Subscribe Request is success. Subscribe ID: [*]\n");
+       else
+               printf("Update Subscribe Request is fail.\n");
+}
+
+void test_update_subscribe()
+{
+       int ret = 0;
+       unsigned char specific_info[MAX_SPECIFIC_INFO_LEN + 1] = {0, };
+       size_t len = 0;
+
+       RET_IF_LOOP_IS_NULL();
+       RET_IF_SESSION_IS_NULL();
+
+       if (g_subscribe_handle == NULL) {
+               printf("subscribe should be done\n");
+               return;
+       }
+
+       len = strlen(UPDATE_SUB_SSI);
+       memcpy(specific_info, UPDATE_SUB_SSI, len);
+       ret = wifi_aware_subscribe_set_service_specific_info(g_subscribe_handle,
+                       specific_info, len);
+       if (ret != WIFI_AWARE_ERROR_NONE)
+               return;
+
+       ret = wifi_aware_session_update_subscribe(g_wifi_aware_session, g_subscribe_handle, __updated_subscribe_cb, NULL);
+       __print_result(ret, "wifi_aware_update_subscribe");
+}
+
 void test_cancel_subscribe()
 {
        int ret = 0;
@@ -962,6 +1000,7 @@ test_func g_menu_func[] = {
        [CMD_CANCEL_PUBLISH]    = test_cancel_publish,
        [CMD_UPDATE_PUBLISH]    = test_update_publish,
        [CMD_SUBSCRIBE]                 = test_subscribe,
+       [CMD_UPDATE_SUBSCRIBE]  = test_update_subscribe,
        [CMD_CANCEL_SUBSCRIBE]  = test_cancel_subscribe,
        [CMD_MESSAGE_RECV_CB]   = test_message_recv_cb,
        [CMD_SEND_MESSAGE]              = test_send_message,