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

Commit a4ef36c9 authored by Mahesh KKV's avatar Mahesh KKV
Browse files

Fix the test WifiStaIfaceAidlTest#TwtSessionSetup

Bug: 397600520
Flag: EXEMPT bug fix
Test: atest VtsHalWifiStaIfaceTargetTest
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:e56b013499a680f42e71464a2b042c559258a382)
Merged-In: I61e31f6d51b6e109733a2a5d2d60401a23dffd08
Change-Id: I61e31f6d51b6e109733a2a5d2d60401a23dffd08

Change-Id: I7f79808659e676b8f2187896cb28a0b2e5531fba
parent c2c19ddc
Loading
Loading
Loading
Loading
+66 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <aidl/Gtest.h>
#include <aidl/Vintf.h>
#include <aidl/android/hardware/wifi/BnWifi.h>
#include <aidl/android/hardware/wifi/BnWifiStaIfaceEventCallback.h>
#include <android/binder_manager.h>
#include <android/binder_status.h>
#include <binder/IServiceManager.h>
@@ -29,6 +30,7 @@

#include "wifi_aidl_test_utils.h"

using aidl::android::hardware::wifi::BnWifiStaIfaceEventCallback;
using aidl::android::hardware::wifi::CachedScanData;
using aidl::android::hardware::wifi::IWifi;
using aidl::android::hardware::wifi::IWifiStaIface;
@@ -379,6 +381,66 @@ TEST_P(WifiStaIfaceAidlTest, CachedScanData) {
    }
}

class WifiStaIfaceEventCallback : public BnWifiStaIfaceEventCallback {
  public:
    WifiStaIfaceEventCallback() = default;

    ::ndk::ScopedAStatus onBackgroundFullScanResult(
            int32_t /* in_cmdId */, int32_t /* in_bucketsScanned */,
            const ::aidl::android::hardware::wifi::StaScanResult& /* in_result */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onBackgroundScanFailure(int32_t /* in_cmdId */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onBackgroundScanResults(
            int32_t /* in_cmdId */,
            const std::vector<::aidl::android::hardware::wifi::StaScanData>& /* in_scanDatas */)
            override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onRssiThresholdBreached(int32_t /* in_cmdId */,
                                                 const std::array<uint8_t, 6>& /* in_currBssid */,
                                                 int32_t /* in_currRssi */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtFailure(int32_t /*in_cmdId*/,
                                      ::aidl::android::hardware::wifi::IWifiStaIfaceEventCallback::
                                              TwtErrorCode /* in_error */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtSessionCreate(
            int32_t /* in_cmdId */,
            const ::aidl::android::hardware::wifi::TwtSession& /* in_twtSession */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtSessionUpdate(
            int32_t /* in_cmdId */,
            const ::aidl::android::hardware::wifi::TwtSession& /* in_twtSession */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtSessionTeardown(
            int32_t /* in_cmdId */, int32_t /* in_twtSessionId */,
            ::aidl::android::hardware::wifi::IWifiStaIfaceEventCallback::
                    TwtTeardownReasonCode /* in_reasonCode */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtSessionStats(
            int32_t /* in_cmdId */, int32_t /* in_twtSessionId */,
            const ::aidl::android::hardware::wifi::TwtSessionStats& /* in_twtSessionStats */)
            override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtSessionSuspend(int32_t /* in_cmdId */,
                                             int32_t /* in_twtSessionId */) override {
        return ndk::ScopedAStatus::ok();
    }
    ::ndk::ScopedAStatus onTwtSessionResume(int32_t /* in_cmdId */,
                                            int32_t /* in_twtSessionId */) override {
        return ndk::ScopedAStatus::ok();
    }
};

TEST_P(WifiStaIfaceAidlTest, TwtGetCapabilities) {
    if (interface_version_ < 2) {
        GTEST_SKIP() << "TwtGetCapabilities is available as of sta_iface V2";
@@ -414,6 +476,10 @@ TEST_P(WifiStaIfaceAidlTest, TwtSessionSetup) {
    if (!twt_capabilities.isTwtRequesterSupported) {
        GTEST_SKIP() << "TWT is not supported";
    }
    const std::shared_ptr<WifiStaIfaceEventCallback> callback =
            ndk::SharedRefBase::make<WifiStaIfaceEventCallback>();
    ASSERT_NE(callback, nullptr);
    EXPECT_TRUE(wifi_sta_iface_->registerEventCallback(callback).isOk());

    TwtRequest twtRequest;
    twtRequest.mloLinkId = 0;