Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5eb64c83 authored by Gabriel Biren's avatar Gabriel Biren Committed by Automerger Merge Worker
Browse files

In supplicant VTS test setup, make sure that the am: c33f1282 am: 3a68e265 am: c371b2a5

parents 4be58ff1 c371b2a5
Loading
Loading
Loading
Loading
+4 −3
Original line number Original line Diff line number Diff line
@@ -38,11 +38,12 @@ class SupplicantHidlTest
    : public ::testing::TestWithParam<std::tuple<std::string, std::string>> {
    : public ::testing::TestWithParam<std::tuple<std::string, std::string>> {
   public:
   public:
    virtual void SetUp() override {
    virtual void SetUp() override {
        // Stop Wi-Fi
        ASSERT_TRUE(stopWifiFramework());  // stop & wait for wifi to shutdown.

        wifi_instance_name_ = std::get<0>(GetParam());
        wifi_instance_name_ = std::get<0>(GetParam());
        supplicant_instance_name_ = std::get<1>(GetParam());
        supplicant_instance_name_ = std::get<1>(GetParam());

        // Stop & wait for wifi to shutdown.
        ASSERT_TRUE(stopWifiFramework(wifi_instance_name_));

        std::system("/system/bin/start");
        std::system("/system/bin/start");
        ASSERT_TRUE(waitForFrameworkReady());
        ASSERT_TRUE(waitForFrameworkReady());
        isP2pOn_ =
        isP2pOn_ =
+23 −7
Original line number Original line Diff line number Diff line
@@ -28,26 +28,42 @@


using ::android::sp;
using ::android::sp;
using ::android::hardware::configureRpcThreadpool;
using ::android::hardware::configureRpcThreadpool;
using ::android::hardware::joinRpcThreadpool;
using ::android::hardware::hidl_string;
using ::android::hardware::hidl_string;
using ::android::hardware::hidl_vec;
using ::android::hardware::hidl_vec;
using ::android::hardware::joinRpcThreadpool;
using ::android::hardware::Return;
using ::android::hardware::Return;
using ::android::hardware::Void;
using ::android::hardware::Void;
using ::android::hardware::wifi::V1_0::ChipModeId;
using ::android::hardware::wifi::supplicant::V1_0::IfaceType;
using ::android::hardware::wifi::V1_0::IWifiChip;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicant;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicant;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantIface;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantIface;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantNetwork;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantStaIface;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantStaNetwork;
using ::android::hardware::wifi::supplicant::V1_0::ISupplicantP2pIface;
using ::android::hardware::wifi::supplicant::V1_0::IfaceType;
using ::android::hardware::wifi::supplicant::V1_0::SupplicantStatus;
using ::android::hardware::wifi::supplicant::V1_0::SupplicantStatus;
using ::android::hardware::wifi::supplicant::V1_0::SupplicantStatusCode;
using ::android::hardware::wifi::supplicant::V1_0::SupplicantStatusCode;
using ::android::hardware::wifi::V1_0::ChipModeId;
using ::android::hardware::wifi::V1_0::IWifi;
using ::android::hardware::wifi::V1_0::IWifiChip;
using ::android::wifi_system::InterfaceTool;
using ::android::wifi_system::InterfaceTool;
using ::android::wifi_system::SupplicantManager;
using ::android::wifi_system::SupplicantManager;


namespace {
namespace {

bool waitForWifiHalStop(const std::string& wifi_instance_name) {
    sp<IWifi> wifi = getWifi(wifi_instance_name);
    int count = 50; /* wait at most 5 seconds for completion */
    while (count-- > 0) {
        if (wifi != nullptr && !wifi->isStarted()) {
            return true;
        }
        usleep(100000);
        wifi = getWifi(wifi_instance_name);
    }
    LOG(ERROR) << "Wifi HAL was not stopped";
    return false;
}

bool waitForSupplicantState(bool is_running) {
bool waitForSupplicantState(bool is_running) {
    SupplicantManager supplicant_manager;
    SupplicantManager supplicant_manager;
    int count = 50; /* wait at most 5 seconds for completion */
    int count = 50; /* wait at most 5 seconds for completion */
@@ -113,10 +129,10 @@ bool startWifiFramework() {
    return waitForSupplicantStart();  // wait for wifi to start.
    return waitForSupplicantStart();  // wait for wifi to start.
}
}


bool stopWifiFramework() {
bool stopWifiFramework(const std::string& wifi_instance_name) {
    std::system("svc wifi disable");
    std::system("svc wifi disable");
    std::system("cmd wifi set-scan-always-available disabled");
    std::system("cmd wifi set-scan-always-available disabled");
    return waitForSupplicantStop();  // wait for wifi to shutdown.
    return waitForSupplicantStop() && waitForWifiHalStop(wifi_instance_name);
}
}


void stopSupplicant() { stopSupplicant(""); }
void stopSupplicant() { stopSupplicant(""); }
+7 −6
Original line number Original line Diff line number Diff line
@@ -33,7 +33,7 @@
bool startWifiFramework();
bool startWifiFramework();


// Used to stop the android wifi framework before every test.
// Used to stop the android wifi framework before every test.
bool stopWifiFramework();
bool stopWifiFramework(const std::string& wifi_instance_name);


void stopSupplicant(const std::string& wifi_instance_name);
void stopSupplicant(const std::string& wifi_instance_name);
// Used to configure the chip, driver and start wpa_supplicant before every
// Used to configure the chip, driver and start wpa_supplicant before every
@@ -77,12 +77,13 @@ class SupplicantHidlTestBase
    : public ::testing::TestWithParam<std::tuple<std::string, std::string>> {
    : public ::testing::TestWithParam<std::tuple<std::string, std::string>> {
   public:
   public:
    virtual void SetUp() override {
    virtual void SetUp() override {
        // Stop Wi-Fi
        wifi_v1_0_instance_name_ =
        ASSERT_TRUE(stopWifiFramework());  // stop & wait for wifi to shutdown.
            std::get<0>(GetParam());  // should always be v1.0 wifi

        // should always be v1.0 wifi
        wifi_v1_0_instance_name_ = std::get<0>(GetParam());
        supplicant_instance_name_ = std::get<1>(GetParam());
        supplicant_instance_name_ = std::get<1>(GetParam());

        // Stop & wait for wifi to shutdown.
        ASSERT_TRUE(stopWifiFramework(wifi_v1_0_instance_name_));

        std::system("/system/bin/start");
        std::system("/system/bin/start");
        ASSERT_TRUE(waitForFrameworkReady());
        ASSERT_TRUE(waitForFrameworkReady());
        isP2pOn_ =
        isP2pOn_ =