[wifi_manager_test] Print error message when there is no AP 08/202208/4 accepted/tizen/unified/20190327.025219 submit/tizen/20190326.072635
authorCheoleun Moon <chleun.moon@samsung.com>
Tue, 26 Mar 2019 05:18:02 +0000 (14:18 +0900)
committerCheoleun Moon <chleun.moon@samsung.com>
Tue, 26 Mar 2019 07:23:01 +0000 (16:23 +0900)
When an user try to connect an AP by wifi_manager_test but the AP
doesn't exist in scan result, an error message is shown.

Change-Id: I5f7bdb30baa83b0bedd1347e69fc5fd7a8ef0d99
Signed-off-by: Cheoleun Moon <chleun.moon@samsung.com>
packaging/capi-network-wifi-manager.spec
test/wifi_manager_test.c

index 705eaef..7437aeb 100755 (executable)
@@ -1,6 +1,6 @@
 Name:          capi-network-wifi-manager
 Summary:       Network Wi-Fi library in TIZEN C API
-Version:       1.0.43
+Version:       1.0.44
 Release:       1
 Group:         System/Network
 License:       Apache-2.0
index 4848b48..baae119 100755 (executable)
@@ -343,11 +343,16 @@ static bool __test_found_ap_callback(wifi_manager_ap_h ap, void *user_data)
        return true;
 }
 
+struct _ap_data {
+       char ap_name[33];
+       bool is_found;
+};
+
 static bool __test_found_connect_ap_callback(wifi_manager_ap_h ap, void *user_data)
 {
        int rv = 0;
        char *ap_name = NULL;
-       char *ap_name_part = (char*)user_data;
+       struct _ap_data *data = (struct _ap_data*)user_data;
 
        rv = wifi_manager_ap_get_essid(ap, &ap_name);
        if (rv != WIFI_MANAGER_ERROR_NONE) {
@@ -355,8 +360,9 @@ static bool __test_found_connect_ap_callback(wifi_manager_ap_h ap, void *user_da
                return false;
        }
 
-       if (__test_compare_ap_name(ap_name, ap_name_part)) {
+       if (__test_compare_ap_name(ap_name, data->ap_name)) {
                bool required = false;
+               data->is_found = true;
 
                if (wifi_manager_ap_is_passphrase_required(ap, &required) == WIFI_MANAGER_ERROR_NONE)
                        printf("Passphrase required : %s\n", required ? "TRUE" : "FALSE");
@@ -1771,7 +1777,7 @@ int test_wifi_manager_foreach_found_ap(void)
 int test_wifi_manager_connect(void)
 {
        int rv = 0;
-       char ap_name[33];
+       struct _ap_data data;
        bool state = false;
 
        wifi_manager_is_activated(wifi, &state);
@@ -1779,14 +1785,19 @@ int test_wifi_manager_connect(void)
                return -1;
 
        printf("Input a part of AP name to connect : ");
-       rv = scanf("%32s", ap_name);
+       rv = scanf("%32s", data.ap_name);
+       data.is_found = false;
 
-       rv = wifi_manager_foreach_found_ap(wifi, __test_found_connect_ap_callback, ap_name);
+       rv = wifi_manager_foreach_found_ap(wifi, __test_found_connect_ap_callback, (void*)&data);
        if (rv != WIFI_MANAGER_ERROR_NONE) {
                printf("Fail to connect (can't get AP list) [%s]\n", __test_convert_error_to_string(rv));
                return -1;
        }
 
+       if (!data.is_found) {
+               printf("%s is not found\n", data.ap_name);
+               return -1;
+       }
        printf("Connection step finished\n");
        return 1;
 }