Loading wifi/supplicant/1.0/vts/functional/supplicant_hidl_test.cpp +8 −5 Original line number Diff line number Diff line Loading @@ -38,12 +38,15 @@ class SupplicantHidlTest : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: virtual void SetUp() override { // Stop Wi-Fi ASSERT_TRUE(stopWifiFramework()); // stop & wait for wifi to shutdown. wifi_instance_name_ = std::get<0>(GetParam()); supplicant_instance_name_ = std::get<1>(GetParam()); std::system("/system/bin/start"); ASSERT_TRUE(waitForFrameworkReady()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); Loading @@ -53,8 +56,8 @@ class SupplicantHidlTest virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); // Start Wi-Fi startWifiFramework(); } protected: Loading wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.cpp +32 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,26 @@ using ::android::wifi_system::InterfaceTool; using ::android::wifi_system::SupplicantManager; namespace { bool waitForSupplicantState(bool is_running) { SupplicantManager supplicant_manager; int count = 50; /* wait at most 5 seconds for completion */ while (count-- > 0) { if (supplicant_manager.IsSupplicantRunning() == is_running) { return true; } usleep(100000); } LOG(ERROR) << "Supplicant not " << is_running ? "running" : "stopped"; return false; } // Helper function to wait for supplicant to be started by framework on wifi // enable. bool waitForSupplicantStart() { return waitForSupplicantState(true); } // Helper function to wait for supplicant to be stopped by framework on wifi // disable. bool waitForSupplicantStop() { return waitForSupplicantState(false); } // Helper function to initialize the driver and firmware to STA mode // using the vendor HAL HIDL interface. Loading Loading @@ -118,6 +138,18 @@ std::string getP2pIfaceName() { } } // namespace bool startWifiFramework() { std::system("svc wifi enable"); std::system("cmd wifi set-scan-always-available enabled"); return waitForSupplicantStart(); // wait for wifi to start. } bool stopWifiFramework() { std::system("svc wifi disable"); std::system("cmd wifi set-scan-always-available disabled"); return waitForSupplicantStop(); // wait for wifi to shutdown. } void stopSupplicant() { stopSupplicant(""); } void stopSupplicant(const std::string& wifi_instance_name) { Loading wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.h +9 −7 Original line number Diff line number Diff line Loading @@ -29,9 +29,11 @@ #include "wifi_hidl_test_utils.h" // Used to start the android wifi framework after every test. bool startWifiFramework(); // Used to stop the android wifi framework before every test. void stopWifiFramework(const std::string& wifi_instance_name); void startWifiFramework(const std::string& wifi_instance_name); bool stopWifiFramework(); void stopSupplicant(const std::string& wifi_instance_name); // Used to configure the chip, driver and start wpa_supplicant before every Loading Loading @@ -70,16 +72,16 @@ class SupplicantHidlTestBase : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: virtual void SetUp() override { // Stop Wi-Fi ASSERT_TRUE(stopWifiFramework()); // stop & wait for wifi to shutdown. // should always be v1.0 wifi wifi_v1_0_instance_name_ = std::get<0>(GetParam()); supplicant_instance_name_ = std::get<1>(GetParam()); std::system("/system/bin/start"); ASSERT_TRUE(waitForFrameworkReady()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); Loading @@ -88,8 +90,8 @@ class SupplicantHidlTestBase virtual void TearDown() override { stopSupplicant(wifi_v1_0_instance_name_); // Start Framework std::system("/system/bin/start"); // Start Wi-Fi startWifiFramework(); } protected: Loading Loading
wifi/supplicant/1.0/vts/functional/supplicant_hidl_test.cpp +8 −5 Original line number Diff line number Diff line Loading @@ -38,12 +38,15 @@ class SupplicantHidlTest : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: virtual void SetUp() override { // Stop Wi-Fi ASSERT_TRUE(stopWifiFramework()); // stop & wait for wifi to shutdown. wifi_instance_name_ = std::get<0>(GetParam()); supplicant_instance_name_ = std::get<1>(GetParam()); std::system("/system/bin/start"); ASSERT_TRUE(waitForFrameworkReady()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); Loading @@ -53,8 +56,8 @@ class SupplicantHidlTest virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); // Start Wi-Fi startWifiFramework(); } protected: Loading
wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.cpp +32 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,26 @@ using ::android::wifi_system::InterfaceTool; using ::android::wifi_system::SupplicantManager; namespace { bool waitForSupplicantState(bool is_running) { SupplicantManager supplicant_manager; int count = 50; /* wait at most 5 seconds for completion */ while (count-- > 0) { if (supplicant_manager.IsSupplicantRunning() == is_running) { return true; } usleep(100000); } LOG(ERROR) << "Supplicant not " << is_running ? "running" : "stopped"; return false; } // Helper function to wait for supplicant to be started by framework on wifi // enable. bool waitForSupplicantStart() { return waitForSupplicantState(true); } // Helper function to wait for supplicant to be stopped by framework on wifi // disable. bool waitForSupplicantStop() { return waitForSupplicantState(false); } // Helper function to initialize the driver and firmware to STA mode // using the vendor HAL HIDL interface. Loading Loading @@ -118,6 +138,18 @@ std::string getP2pIfaceName() { } } // namespace bool startWifiFramework() { std::system("svc wifi enable"); std::system("cmd wifi set-scan-always-available enabled"); return waitForSupplicantStart(); // wait for wifi to start. } bool stopWifiFramework() { std::system("svc wifi disable"); std::system("cmd wifi set-scan-always-available disabled"); return waitForSupplicantStop(); // wait for wifi to shutdown. } void stopSupplicant() { stopSupplicant(""); } void stopSupplicant(const std::string& wifi_instance_name) { Loading
wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.h +9 −7 Original line number Diff line number Diff line Loading @@ -29,9 +29,11 @@ #include "wifi_hidl_test_utils.h" // Used to start the android wifi framework after every test. bool startWifiFramework(); // Used to stop the android wifi framework before every test. void stopWifiFramework(const std::string& wifi_instance_name); void startWifiFramework(const std::string& wifi_instance_name); bool stopWifiFramework(); void stopSupplicant(const std::string& wifi_instance_name); // Used to configure the chip, driver and start wpa_supplicant before every Loading Loading @@ -70,16 +72,16 @@ class SupplicantHidlTestBase : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: virtual void SetUp() override { // Stop Wi-Fi ASSERT_TRUE(stopWifiFramework()); // stop & wait for wifi to shutdown. // should always be v1.0 wifi wifi_v1_0_instance_name_ = std::get<0>(GetParam()); supplicant_instance_name_ = std::get<1>(GetParam()); std::system("/system/bin/start"); ASSERT_TRUE(waitForFrameworkReady()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); Loading @@ -88,8 +90,8 @@ class SupplicantHidlTestBase virtual void TearDown() override { stopSupplicant(wifi_v1_0_instance_name_); // Start Framework std::system("/system/bin/start"); // Start Wi-Fi startWifiFramework(); } protected: Loading