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

Commit 5c3c6483 authored by Yuyang Huang's avatar Yuyang Huang
Browse files

Update APF VTS to include the vendor API level check

APF is support is mandatory since VSR 14. Before that, the APF
requirement is optional. Vendors can opted into upgrading their
HAL to AIDL, so the VTS need to check if vendor API level on the device
and only mandate the APF capability check if the vendor API level is
greater or equal to 14.

Bug: 283181837
Test: atest VtsHalWifiStaIfaceTargetTest
Change-Id: I21513187d4ca99d721d0e9dc5e243adad77ab8c6
parent b85319cc
Loading
Loading
Loading
Loading
+18 −10
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@
#include <android/binder_status.h>
#include <binder/IServiceManager.h>
#include <binder/ProcessState.h>
#include <cutils/properties.h>

#include "wifi_aidl_test_utils.h"

@@ -98,9 +99,15 @@ TEST_P(WifiStaIfaceAidlTest, GetFeatureSet) {
 */
// @VsrTest = 5.3.12
TEST_P(WifiStaIfaceAidlTest, CheckApfIsSupported) {
    // It is not required to check the vendor API level is at least U here
    // because the Wi-Fi AIDL interface is launched with Android U(VSR-14).
    // TODO: Add wavier list to the chipsets that doesn't support APF.
    int vendor_api_level = property_get_int32("ro.vendor.api_level", 0);
    // Before VSR 14, APF support is optional.
    if (vendor_api_level < __ANDROID_API_U__) {
        if (!isFeatureSupported(IWifiStaIface::FeatureSetMask::APF)) {
            GTEST_SKIP() << "APF packet filter capabilities are not supported.";
        }
        StaApfPacketFilterCapabilities apf_caps = {};
        EXPECT_TRUE(wifi_sta_iface_->getApfPacketFilterCapabilities(&apf_caps).isOk());
    } else {
        EXPECT_TRUE(isFeatureSupported(IWifiStaIface::FeatureSetMask::APF));
        StaApfPacketFilterCapabilities apf_caps = {};
        EXPECT_TRUE(wifi_sta_iface_->getApfPacketFilterCapabilities(&apf_caps).isOk());
@@ -109,6 +116,7 @@ TEST_P(WifiStaIfaceAidlTest, CheckApfIsSupported) {
        EXPECT_EQ(apf_caps.version, 4);
        EXPECT_GE(apf_caps.maxLength, 1024);
    }
}

/*
 * GetBackgroundScanCapabilities