MESSAGE("${src_name}")
ADD_EXECUTABLE(${src_name} ${src})
TARGET_LINK_LIBRARIES(${src_name} ${GTEST_TEST_LDFLAGS} ${GTEST_TEST_PKG_LDFLAGS} -ldl -lgcov)
- INSTALL(TARGETS ${src_name} RUNTIME DESTINATION ${BIN_DIR})
+ INSTALL(TARGETS ${src_name} RUNTIME DESTINATION ${BIN_DIR}/hal)
ENDFOREACH()
#define FEATURE_WIFIDIRECT "http://tizen.org/feature/network.wifi.direct"
#define FEATURE_SOFTAP "http://tizen.org/feature/network.wifi.softap"
-#define WIFI_ADDRESS_PATH "/sys/class/net/wlan0/address"
-#define WIFI_P2P_PATH "/sys/class/net/p2p0/address"
-#define WIFI_P2P_CONFIG_PATH "/etc/wifi-direct/wifi-direct-manager.conf"
-#define WFD_CONF_GROUP_NAME "wfd-manager"
+#define WIFI_ADDRESS_PATH "/sys/class/net/wlan0/address"
+#define WIFI_ADDRESS_PATH_PREFIX "/sys/class/net/"
+#define WIFI_P2P_PATH "/sys/class/net/p2p0/address"
+#define WIFI_P2P_CONFIG_PATH "/etc/wifi-direct/wifi-direct-manager.conf"
+#define WFD_CONF_GROUP_NAME "wfd-manager"
GMainLoop *g_pMainLoop;
guint g_nTimeoutId;
+++ /dev/null
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <iostream>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <unistd.h>
-#include <wifi-manager.h>
-#include <wifi-direct.h>
-#include <softap.h>
-#include <system_info.h>
-#include "haltests.h"
-
-using ::testing::InitGoogleTest;
-using ::testing::Test;
-using ::testing::TestCase;
-
-static char ap_name[MAX_AP_LENGTH];
-static wifi_manager_h wifi = NULL;
-static wifi_manager_error_e rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-wifi_manager_ap_h g_hWifiAP;
-
-static int rst_p2p = WIFI_DIRECT_ERROR_OPERATION_FAILED;
-static wifi_direct_device_state_e dev_state = WIFI_DIRECT_DEVICE_STATE_DEACTIVATED;
-static char p2p_ifname[MAX_PATH_LENGTH];
-
-static softap_h sa = NULL;
-static bool g_is_requested;
-static softap_error_e g_error;
-static softap_disabled_cause_e g_code;
-
-static bool __check_feature_supported(char *key)
-{
- bool value = false;
- int ret = system_info_get_platform_bool(key, &value);
-
- EXPECT_EQ(SYSTEM_INFO_ERROR_NONE, ret) << "system_info_get_platform_bool failed";
-
- return value;
-}
-
-static void __test_callback(wifi_manager_error_e result, void* user_data)
-{
- rst = result;
- QUIT_GMAIN_LOOP;
-}
-
-static gboolean __timeout_callback(gpointer data)
-{
- EXPECT_TRUE(0) << "Wi-Fi TC callback timeout!";
- QUIT_GMAIN_LOOP;
- return FALSE;
-}
-
-static void __device_state_changed_cb(int error_code,
- wifi_direct_device_state_e device_state, void *user_data)
-{
- rst_p2p = error_code;
- dev_state = device_state;
- QUIT_GMAIN_LOOP;
-}
-
-static void __enabled_cb(softap_error_e error, bool is_requested, void *data)
-{
- g_error = error;
- g_is_requested = is_requested;
- QUIT_GMAIN_LOOP;
-}
-
-static void __disabled_cb(softap_error_e error, softap_disabled_cause_e code, void *data)
-{
- g_error = error;
- g_code = code;
- QUIT_GMAIN_LOOP;
-}
-
-static void __set_p2p_ifname(void)
-{
- GKeyFile *key_file = NULL;
- GError *error = NULL;
- char *ifn = NULL;
-
- key_file = g_key_file_new();
- if (!g_key_file_load_from_file(key_file, WIFI_P2P_CONFIG_PATH, G_KEY_FILE_NONE, &error)) {
- g_clear_error(&error);
- g_key_file_free(key_file);
- key_file = NULL;
- return;
- }
-
- ifn = g_key_file_get_string(key_file, WFD_CONF_GROUP_NAME, "p2p_interface", &error);
- if (ifn)
- g_snprintf(p2p_ifname, MAX_PATH_LENGTH, "/sys/class/net/%s/address", ifn);
-
- if (error)
- g_clear_error(&error);
- g_key_file_free(key_file);
- g_free(ifn);
-}
-
-static bool __found_ap_callback(wifi_manager_ap_h ap, void *user_data)
-{
- char *ap_name = NULL;
- char *ap_name_part = (char *)user_data;
- size_t ap_name_len = strlen(ap_name_part);
- int ret = WIFI_MANAGER_ERROR_NONE;
-
- if (ap) {
- ret = wifi_manager_ap_get_essid(ap, &ap_name);
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Unable to get essid";
-
- if (!ap_name)
- return true;
-
- if (!strncmp(ap_name, ap_name_part, ap_name_len)) {
- ret = wifi_manager_ap_clone(&g_hWifiAP, ap);
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Unable to clone the AP handle";
- if (g_hWifiAP) {
- rst = WIFI_MANAGER_ERROR_NONE;
- g_free(ap_name);
- return false;
- }
- }
-
- g_free(ap_name);
- }
-
- return true;
-}
-
-TEST(Hal_wifi, Init_p)
-{
- g_bFeatureWifi = __check_feature_supported((char*)FEATURE_WIFI);
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- int rv = wifi_manager_initialize(&wifi);
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Initialization failure";
-}
-
-TEST(Hal_wifi, Activate_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- int rv;
- bool activated;
-
- rv = wifi_manager_is_activated(wifi, &activated);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to get Wi-Fi device state";
-
- if (activated)
- goto done;
-
- rv = wifi_manager_activate(wifi, __test_callback, NULL);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to activate Wi-Fi device";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Activetion failure";
- rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-
-done:
- rv = access(WIFI_ADDRESS_PATH, F_OK);
- EXPECT_EQ(0, rv) << "Could not access " << WIFI_ADDRESS_PATH;
-}
-
-TEST(Hal_wifi, Scan_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- int rv = wifi_manager_scan(wifi, __test_callback, NULL);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to scan";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Scan failure";
- rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-}
-
-TEST(Hal_wifi, Connect_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- wifi_manager_connection_state_e connection_state;
- int ret = WIFI_MANAGER_ERROR_NONE;
-
- ret = wifi_manager_get_connection_state(wifi, &connection_state);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to get connection state";
-
- if (connection_state == WIFI_MANAGER_CONNECTION_STATE_CONNECTED)
- return;
-
- if (!ap_name[0])
- return;
-
- ret = wifi_manager_foreach_found_ap(wifi, __found_ap_callback, (char *)ap_name);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Failed to find the AP";
- rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-
- ret = wifi_manager_connect(wifi, g_hWifiAP, __test_callback, NULL);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to connect";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Connection failure";
- rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-}
-
-TEST(Hal_wifi, Disconnect_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- int ret = WIFI_MANAGER_ERROR_NONE;
- wifi_manager_ap_h hAP = NULL;
-
- ret = wifi_manager_get_connected_ap(wifi, &hAP);
- if (ret == WIFI_MANAGER_ERROR_NO_CONNECTION)
- return;
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to get connected AP";
-
- ret = wifi_manager_disconnect(wifi, hAP, __test_callback, NULL);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to disconnect";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Disconnection failure";
- rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-
- ret = wifi_manager_forget_ap(wifi, hAP);
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to forget AP";
-}
-
-TEST(Hal_wifi, Deactivate_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- int rv = wifi_manager_deactivate(wifi, __test_callback, NULL);
- ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to deactivate Wi-Fi device";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Deactivation failure";
- rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
-}
-
-TEST(Hal_wifi, Deinit_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureWifi);
-
- int rv = wifi_manager_deinitialize(wifi);
- EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Deinitialization failure";
-}
-
-TEST(Hal_wifi_direct, Init_p)
-{
- g_bFeatureP2P = __check_feature_supported((char*)FEATURE_WIFIDIRECT);
- SKIP_NOT_SUPPORTED(g_bFeatureP2P);
-
- int rv = wifi_direct_initialize();
- EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Initialization failure";
-}
-
-TEST(Hal_wifi_direct, Activate_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureP2P);
-
- int rv;
- wifi_direct_state_e state = WIFI_DIRECT_STATE_ACTIVATED;
-
- rv = wifi_direct_get_state(&state);
- ASSERT_EQ(0, rv) << "Failed to get Wi-Fi Direct device state";
-
- if (state != WIFI_DIRECT_STATE_DEACTIVATED)
- goto done;
-
- rv = wifi_direct_set_device_state_changed_cb(__device_state_changed_cb, NULL);
- ASSERT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to set activation callback";
-
- rv = wifi_direct_activate();
- ASSERT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to activate Wi-Fi Direct device";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rst_p2p) << "Activetion failure";
- rst_p2p = WIFI_DIRECT_ERROR_OPERATION_FAILED;
-
- rv = wifi_direct_get_state(&state);
- EXPECT_EQ(0, rv) << "Failed to get Wi-Fi Direct device state";
- EXPECT_EQ(WIFI_DIRECT_STATE_ACTIVATED, state) << "Activetion failure";
-
-done:
- if (p2p_ifname[0])
- rv = access(p2p_ifname, F_OK);
- else
- rv = access(WIFI_P2P_PATH, F_OK);
- EXPECT_EQ(0, rv) << "Could not access " << WIFI_ADDRESS_PATH;
-}
-
-TEST(Hal_wifi_direct, Deactivate_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureP2P);
-
- int rv;
-
- rv = wifi_direct_deactivate();
- ASSERT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to deactivate Wi-Fi Direct";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rst_p2p) << "Deactivation failure";
- rst_p2p = WIFI_DIRECT_ERROR_OPERATION_FAILED;
-
- wifi_direct_state_e state = WIFI_DIRECT_STATE_ACTIVATED;
- rv = wifi_direct_get_state(&state);
- EXPECT_EQ(0, rv) << "Failed to get Wi-Fi Direct device state";
-
- EXPECT_EQ(WIFI_DIRECT_STATE_DEACTIVATED, state) << "Deactivetion failure";
-
- rv = wifi_direct_unset_device_state_changed_cb();
- EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to unset activation callback";
-}
-
-TEST(Hal_wifi_direct, Deinit_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureP2P);
-
- int rv = wifi_direct_deinitialize();
- EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Deinitialization failure";
-}
-
-TEST(Hal_softap, Init_p)
-{
- g_bFeatureSoftap = __check_feature_supported((char*)FEATURE_SOFTAP);
- SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
-
- int ret = SOFTAP_ERROR_NONE;
-
- ret = softap_create(&sa);
- ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Initialization failure";
-
- ret = softap_set_enabled_cb(sa, __enabled_cb, NULL);
- EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to set enabled callback!!";
-
- ret = softap_set_disabled_cb(sa, __disabled_cb, NULL);
- EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to set disabled callback!!";
-}
-
-TEST(Hal_softap, Activate_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
-
- int ret = SOFTAP_ERROR_NONE;
- bool enabled = false;
-
- ret = softap_is_enabled(sa, &enabled);
- ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Failed to get SoftAP state";
-
- if (enabled)
- goto done;
-
- ret = softap_enable(sa);
- ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Failed to enable SoftAP";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(SOFTAP_ERROR_NONE, g_error) << "Failed to enable SoftAP";
- EXPECT_EQ(true, g_is_requested) << "Failed to enable SoftAP";
-
-done:
- ret = access(WIFI_ADDRESS_PATH, F_OK);
- EXPECT_EQ(0, ret) << "Could not access " << WIFI_ADDRESS_PATH;
-}
-
-TEST(Hal_softap, Deactivate_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
-
- int ret = SOFTAP_ERROR_NONE;
-
- ret = softap_disable(sa);
- ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Failed to disable SoftAP";
-
- RUN_GMAIN_LOOP(__timeout_callback);
-
- EXPECT_EQ(SOFTAP_ERROR_NONE, g_error) << "Failed to disable SoftAP" << g_code;
-}
-
-TEST(Hal_softap, Deinit_p)
-{
- SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
-
- int ret = SOFTAP_ERROR_NONE;
-
- ret = softap_unset_enabled_cb(sa);
- EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to unset enabled callback!!";
-
- ret = softap_unset_disabled_cb(sa);
- EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to unset disabled callback!!";
-
- ret = softap_destroy(sa);
- EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Deinitialization failure";
-}
-
-int main(int argc, char **argv)
-{
- if (argc > 1 && argv[argc - 1][0] != '-') {
- g_strlcpy(ap_name, argv[argc - 1], MAX_AP_LENGTH);
- argc--;
- }
-
- __set_p2p_ifname();
- InitGoogleTest(&argc, argv);
- return RUN_ALL_TESTS();
-}
--- /dev/null
+/*
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <iostream>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <unistd.h>
+#include <wifi-manager.h>
+#include <wifi-direct.h>
+#include <softap.h>
+#include <system_info.h>
+#include "haltests.h"
+
+using ::testing::InitGoogleTest;
+using ::testing::Test;
+using ::testing::TestCase;
+
+static char ap_name[MAX_AP_LENGTH];
+static wifi_manager_h wifi = NULL;
+static wifi_manager_error_e rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+wifi_manager_ap_h g_hWifiAP;
+
+static int rst_p2p = WIFI_DIRECT_ERROR_OPERATION_FAILED;
+static wifi_direct_device_state_e dev_state = WIFI_DIRECT_DEVICE_STATE_DEACTIVATED;
+static char p2p_ifname[MAX_PATH_LENGTH];
+
+static softap_h sa = NULL;
+static bool g_is_requested;
+static softap_error_e g_error;
+static softap_disabled_cause_e g_code;
+
+static bool __check_feature_supported(char *key)
+{
+ bool value = false;
+ int ret = system_info_get_platform_bool(key, &value);
+
+ EXPECT_EQ(SYSTEM_INFO_ERROR_NONE, ret) << "system_info_get_platform_bool failed";
+
+ return value;
+}
+
+static void __test_callback(wifi_manager_error_e result, void* user_data)
+{
+ rst = result;
+ QUIT_GMAIN_LOOP;
+}
+
+static gboolean __timeout_callback(gpointer data)
+{
+ EXPECT_TRUE(0) << "Wi-Fi TC callback timeout!";
+ QUIT_GMAIN_LOOP;
+ return FALSE;
+}
+
+static void __device_state_changed_cb(int error_code,
+ wifi_direct_device_state_e device_state, void *user_data)
+{
+ rst_p2p = error_code;
+ dev_state = device_state;
+ QUIT_GMAIN_LOOP;
+}
+
+static void __enabled_cb(softap_error_e error, bool is_requested, void *data)
+{
+ g_error = error;
+ g_is_requested = is_requested;
+ QUIT_GMAIN_LOOP;
+}
+
+static void __disabled_cb(softap_error_e error, softap_disabled_cause_e code, void *data)
+{
+ g_error = error;
+ g_code = code;
+ QUIT_GMAIN_LOOP;
+}
+
+static void __set_p2p_ifname(void)
+{
+ GKeyFile *key_file = NULL;
+ GError *error = NULL;
+ char *ifn = NULL;
+
+ key_file = g_key_file_new();
+ if (!g_key_file_load_from_file(key_file, WIFI_P2P_CONFIG_PATH, G_KEY_FILE_NONE, &error)) {
+ g_clear_error(&error);
+ g_key_file_free(key_file);
+ key_file = NULL;
+ return;
+ }
+
+ ifn = g_key_file_get_string(key_file, WFD_CONF_GROUP_NAME, "p2p_interface", &error);
+ if (ifn)
+ g_snprintf(p2p_ifname, MAX_PATH_LENGTH, "/sys/class/net/%s/address", ifn);
+
+ if (error)
+ g_clear_error(&error);
+ g_key_file_free(key_file);
+ g_free(ifn);
+}
+
+static bool __found_ap_callback(wifi_manager_ap_h ap, void *user_data)
+{
+ char *ap_name = NULL;
+ char *ap_name_part = (char *)user_data;
+ size_t ap_name_len = strlen(ap_name_part);
+ int ret = WIFI_MANAGER_ERROR_NONE;
+
+ if (ap) {
+ ret = wifi_manager_ap_get_essid(ap, &ap_name);
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Unable to get essid";
+
+ if (!ap_name)
+ return true;
+
+ if (!strncmp(ap_name, ap_name_part, ap_name_len)) {
+ ret = wifi_manager_ap_clone(&g_hWifiAP, ap);
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Unable to clone the AP handle";
+ if (g_hWifiAP) {
+ rst = WIFI_MANAGER_ERROR_NONE;
+ g_free(ap_name);
+ return false;
+ }
+ }
+
+ g_free(ap_name);
+ }
+
+ return true;
+}
+
+TEST(WifiHaltest, WifiInit_p)
+{
+ g_bFeatureWifi = __check_feature_supported((char*)FEATURE_WIFI);
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ int rv = wifi_manager_initialize(&wifi);
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Initialization failure";
+}
+
+TEST(WifiHaltest, WifiActivate_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ int rv;
+ bool activated;
+ char *ifname = NULL;
+ char path_buff[MAX_PATH_LENGTH];
+
+ rv = wifi_manager_is_activated(wifi, &activated);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to get Wi-Fi device state";
+
+ if (activated)
+ goto done;
+
+ rv = wifi_manager_activate(wifi, __test_callback, NULL);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to activate Wi-Fi device";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Activetion failure";
+ rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+
+done:
+ rv = wifi_manager_get_network_interface_name(wifi, &ifname);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to get wifi interface name";
+
+ g_snprintf(path_buff, MAX_PATH_LENGTH, "/sys/class/net/%s/address", ifname);
+ g_free(ifname);
+
+ rv = access(path_buff, F_OK);
+ EXPECT_EQ(0, rv) << "Could not access " << WIFI_ADDRESS_PATH;
+}
+
+TEST(WifiHaltest, WifiScan_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ int rv = wifi_manager_scan(wifi, __test_callback, NULL);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to scan";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Scan failure";
+ rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+}
+
+TEST(WifiHaltest, WifiConnect_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ wifi_manager_connection_state_e connection_state;
+ int ret = WIFI_MANAGER_ERROR_NONE;
+
+ ret = wifi_manager_get_connection_state(wifi, &connection_state);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to get connection state";
+
+ if (connection_state == WIFI_MANAGER_CONNECTION_STATE_CONNECTED)
+ return;
+
+ if (!ap_name[0])
+ return;
+
+ ret = wifi_manager_foreach_found_ap(wifi, __found_ap_callback, (char *)ap_name);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Failed to find the AP";
+ rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+
+ ret = wifi_manager_connect(wifi, g_hWifiAP, __test_callback, NULL);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to connect";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Connection failure";
+ rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+}
+
+TEST(WifiHaltest, WifiDisconnect_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ int ret = WIFI_MANAGER_ERROR_NONE;
+ wifi_manager_ap_h hAP = NULL;
+
+ ret = wifi_manager_get_connected_ap(wifi, &hAP);
+ if (ret == WIFI_MANAGER_ERROR_NO_CONNECTION)
+ return;
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to get connected AP";
+
+ ret = wifi_manager_disconnect(wifi, hAP, __test_callback, NULL);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to disconnect";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Disconnection failure";
+ rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+
+ ret = wifi_manager_forget_ap(wifi, hAP);
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, ret) << "Failed to forget AP";
+}
+
+TEST(WifiHaltest, WifiDeactivate_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ int rv = wifi_manager_deactivate(wifi, __test_callback, NULL);
+ ASSERT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Failed to deactivate Wi-Fi device";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rst) << "Deactivation failure";
+ rst = WIFI_MANAGER_ERROR_NOT_SUPPORTED;
+}
+
+TEST(WifiHaltest, WifiDeinit_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureWifi);
+
+ int rv = wifi_manager_deinitialize(wifi);
+ EXPECT_EQ(WIFI_MANAGER_ERROR_NONE, rv) << "Deinitialization failure";
+}
+
+TEST(WifiHaltest, WifiDirectInit_p)
+{
+ g_bFeatureP2P = __check_feature_supported((char*)FEATURE_WIFIDIRECT);
+ SKIP_NOT_SUPPORTED(g_bFeatureP2P);
+
+ int rv = wifi_direct_initialize();
+ EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Initialization failure";
+}
+
+TEST(WifiHaltest, WifiDirectActivate_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureP2P);
+
+ int rv;
+ wifi_direct_state_e state = WIFI_DIRECT_STATE_ACTIVATED;
+
+ rv = wifi_direct_get_state(&state);
+ ASSERT_EQ(0, rv) << "Failed to get Wi-Fi Direct device state";
+
+ if (state != WIFI_DIRECT_STATE_DEACTIVATED)
+ goto done;
+
+ rv = wifi_direct_set_device_state_changed_cb(__device_state_changed_cb, NULL);
+ ASSERT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to set activation callback";
+
+ rv = wifi_direct_activate();
+ ASSERT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to activate Wi-Fi Direct device";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rst_p2p) << "Activetion failure";
+ rst_p2p = WIFI_DIRECT_ERROR_OPERATION_FAILED;
+
+ rv = wifi_direct_get_state(&state);
+ EXPECT_EQ(0, rv) << "Failed to get Wi-Fi Direct device state";
+ EXPECT_EQ(WIFI_DIRECT_STATE_ACTIVATED, state) << "Activetion failure";
+
+done:
+ if (p2p_ifname[0])
+ rv = access(p2p_ifname, F_OK);
+ else
+ rv = access(WIFI_P2P_PATH, F_OK);
+ EXPECT_EQ(0, rv) << "Could not access " << WIFI_ADDRESS_PATH;
+}
+
+TEST(WifiHaltest, WifiDirectDeactivate_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureP2P);
+
+ int rv;
+
+ rv = wifi_direct_deactivate();
+ ASSERT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to deactivate Wi-Fi Direct";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rst_p2p) << "Deactivation failure";
+ rst_p2p = WIFI_DIRECT_ERROR_OPERATION_FAILED;
+
+ wifi_direct_state_e state = WIFI_DIRECT_STATE_ACTIVATED;
+ rv = wifi_direct_get_state(&state);
+ EXPECT_EQ(0, rv) << "Failed to get Wi-Fi Direct device state";
+
+ EXPECT_EQ(WIFI_DIRECT_STATE_DEACTIVATED, state) << "Deactivetion failure";
+
+ rv = wifi_direct_unset_device_state_changed_cb();
+ EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Failed to unset activation callback";
+}
+
+TEST(WifiHaltest, WifiDirectDeinit_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureP2P);
+
+ int rv = wifi_direct_deinitialize();
+ EXPECT_EQ(WIFI_DIRECT_ERROR_NONE, rv) << "Deinitialization failure";
+}
+
+TEST(WifiHaltest, SoftapInit_p)
+{
+ g_bFeatureSoftap = __check_feature_supported((char*)FEATURE_SOFTAP);
+ SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
+
+ int ret = SOFTAP_ERROR_NONE;
+
+ ret = softap_create(&sa);
+ ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Initialization failure";
+
+ ret = softap_set_enabled_cb(sa, __enabled_cb, NULL);
+ EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to set enabled callback!!";
+
+ ret = softap_set_disabled_cb(sa, __disabled_cb, NULL);
+ EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to set disabled callback!!";
+}
+
+TEST(WifiHaltest, SoftapActivate_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
+
+ int ret = SOFTAP_ERROR_NONE;
+ bool enabled = false;
+
+ ret = softap_is_enabled(sa, &enabled);
+ ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Failed to get SoftAP state";
+
+ if (enabled)
+ goto done;
+
+ ret = softap_enable(sa);
+ ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Failed to enable SoftAP";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(SOFTAP_ERROR_NONE, g_error) << "Failed to enable SoftAP";
+ EXPECT_EQ(true, g_is_requested) << "Failed to enable SoftAP";
+
+done:
+ ret = access(WIFI_ADDRESS_PATH, F_OK);
+ EXPECT_EQ(0, ret) << "Could not access " << WIFI_ADDRESS_PATH;
+}
+
+TEST(WifiHaltest, SoftapDeactivate_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
+
+ int ret = SOFTAP_ERROR_NONE;
+
+ ret = softap_disable(sa);
+ ASSERT_EQ(SOFTAP_ERROR_NONE, ret) << "Failed to disable SoftAP";
+
+ RUN_GMAIN_LOOP(__timeout_callback);
+
+ EXPECT_EQ(SOFTAP_ERROR_NONE, g_error) << "Failed to disable SoftAP" << g_code;
+}
+
+TEST(WifiHaltest, SoftapDeinit_p)
+{
+ SKIP_NOT_SUPPORTED(g_bFeatureSoftap);
+
+ int ret = SOFTAP_ERROR_NONE;
+
+ ret = softap_unset_enabled_cb(sa);
+ EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to unset enabled callback!!";
+
+ ret = softap_unset_disabled_cb(sa);
+ EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Fail to unset disabled callback!!";
+
+ ret = softap_destroy(sa);
+ EXPECT_EQ(SOFTAP_ERROR_NONE, ret) << "Deinitialization failure";
+}
+
+int main(int argc, char **argv)
+{
+ if (argc > 1 && argv[argc - 1][0] != '-') {
+ g_strlcpy(ap_name, argv[argc - 1], MAX_AP_LENGTH);
+ argc--;
+ }
+
+ __set_p2p_ifname();
+ InitGoogleTest(&argc, argv);
+ return RUN_ALL_TESTS();
+}
Name: net-config
Summary: TIZEN Network Configuration service
-Version: 1.2.7
-Release: 4
+Version: 1.2.8
+Release: 1
Group: System/Network
License: Apache-2.0
Source0: %{name}-%{version}.tar.gz
%files haltests
%manifest net-config.manifest
-%{_bindir}/*haltests
+%{_bindir}/hal/*haltests