Loading wifi/supplicant/aidl/vts/functional/supplicant_sta_iface_aidl_test.cpp +66 −0 Original line number Diff line number Diff line Loading @@ -47,8 +47,12 @@ using aidl::android::hardware::wifi::supplicant::MscsParams; using aidl::android::hardware::wifi::supplicant::QosCharacteristics; using aidl::android::hardware::wifi::supplicant::QosPolicyScsData; using aidl::android::hardware::wifi::supplicant::QosPolicyScsRequestStatus; using aidl::android::hardware::wifi::supplicant::UsdBaseConfig; using aidl::android::hardware::wifi::supplicant::UsdCapabilities; using aidl::android::hardware::wifi::supplicant::UsdMessageInfo; using aidl::android::hardware::wifi::supplicant::UsdPublishConfig; using aidl::android::hardware::wifi::supplicant::UsdServiceDiscoveryInfo; using aidl::android::hardware::wifi::supplicant::UsdSubscribeConfig; using aidl::android::hardware::wifi::supplicant::UsdTerminateReasonCode; using aidl::android::hardware::wifi::supplicant::WpaDriverCapabilitiesMask; using aidl::android::hardware::wifi::supplicant::WpsConfigMethods; Loading Loading @@ -880,6 +884,68 @@ TEST_P(SupplicantStaIfaceAidlTest, AddAndRemoveQosWithTrafficChars) { EXPECT_EQ(1, responseList.size()); } /* * Verify that all USD methods check the Service Specific Info (SSI) length * and fail if the provided SSI is too long. */ TEST_P(SupplicantStaIfaceAidlTest, InvalidUsdServiceSpecificInfo) { if (interface_version_ < 4) { GTEST_SKIP() << "USD is available as of Supplicant V4"; } UsdCapabilities caps; EXPECT_TRUE(sta_iface_->getUsdCapabilities(&caps).isOk()); if (!caps.isUsdPublisherSupported && !caps.isUsdSubscriberSupported) { GTEST_SKIP() << "USD publish and subscribe are not supported"; } int commandId = 123; std::vector<uint8_t> invalidSsi(caps.maxLocalSsiLengthBytes + 1); UsdBaseConfig invalidBaseConfig; invalidBaseConfig.serviceSpecificInfo = invalidSsi; if (caps.isUsdPublisherSupported) { UsdPublishConfig publishConfig; publishConfig.usdBaseConfig = invalidBaseConfig; EXPECT_FALSE(sta_iface_->startUsdPublish(commandId, publishConfig).isOk()); EXPECT_FALSE(sta_iface_->updateUsdPublish(commandId, invalidSsi).isOk()); } if (caps.isUsdSubscriberSupported) { UsdSubscribeConfig subscribeConfig; subscribeConfig.usdBaseConfig = invalidBaseConfig; EXPECT_FALSE(sta_iface_->startUsdSubscribe(commandId, subscribeConfig).isOk()); } UsdMessageInfo messageInfo; messageInfo.message = invalidSsi; EXPECT_FALSE(sta_iface_->sendUsdMessage(messageInfo).isOk()); } /* * Cancel a USD Publish and Subscribe session. */ TEST_P(SupplicantStaIfaceAidlTest, CancelUsdSession) { if (interface_version_ < 4) { GTEST_SKIP() << "USD is available as of Supplicant V4"; } UsdCapabilities caps; EXPECT_TRUE(sta_iface_->getUsdCapabilities(&caps).isOk()); if (!caps.isUsdPublisherSupported && !caps.isUsdSubscriberSupported) { GTEST_SKIP() << "USD publish and subscribe are not supported"; } int sessionId = 123; if (caps.isUsdPublisherSupported) { // Method is expected to succeed, even if the session does not exist. EXPECT_TRUE(sta_iface_->cancelUsdPublish(sessionId).isOk()); } if (caps.isUsdSubscriberSupported) { EXPECT_TRUE(sta_iface_->cancelUsdSubscribe(sessionId).isOk()); } } GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SupplicantStaIfaceAidlTest); INSTANTIATE_TEST_SUITE_P(Supplicant, SupplicantStaIfaceAidlTest, testing::ValuesIn(android::getAidlHalInstanceNames( Loading Loading
wifi/supplicant/aidl/vts/functional/supplicant_sta_iface_aidl_test.cpp +66 −0 Original line number Diff line number Diff line Loading @@ -47,8 +47,12 @@ using aidl::android::hardware::wifi::supplicant::MscsParams; using aidl::android::hardware::wifi::supplicant::QosCharacteristics; using aidl::android::hardware::wifi::supplicant::QosPolicyScsData; using aidl::android::hardware::wifi::supplicant::QosPolicyScsRequestStatus; using aidl::android::hardware::wifi::supplicant::UsdBaseConfig; using aidl::android::hardware::wifi::supplicant::UsdCapabilities; using aidl::android::hardware::wifi::supplicant::UsdMessageInfo; using aidl::android::hardware::wifi::supplicant::UsdPublishConfig; using aidl::android::hardware::wifi::supplicant::UsdServiceDiscoveryInfo; using aidl::android::hardware::wifi::supplicant::UsdSubscribeConfig; using aidl::android::hardware::wifi::supplicant::UsdTerminateReasonCode; using aidl::android::hardware::wifi::supplicant::WpaDriverCapabilitiesMask; using aidl::android::hardware::wifi::supplicant::WpsConfigMethods; Loading Loading @@ -880,6 +884,68 @@ TEST_P(SupplicantStaIfaceAidlTest, AddAndRemoveQosWithTrafficChars) { EXPECT_EQ(1, responseList.size()); } /* * Verify that all USD methods check the Service Specific Info (SSI) length * and fail if the provided SSI is too long. */ TEST_P(SupplicantStaIfaceAidlTest, InvalidUsdServiceSpecificInfo) { if (interface_version_ < 4) { GTEST_SKIP() << "USD is available as of Supplicant V4"; } UsdCapabilities caps; EXPECT_TRUE(sta_iface_->getUsdCapabilities(&caps).isOk()); if (!caps.isUsdPublisherSupported && !caps.isUsdSubscriberSupported) { GTEST_SKIP() << "USD publish and subscribe are not supported"; } int commandId = 123; std::vector<uint8_t> invalidSsi(caps.maxLocalSsiLengthBytes + 1); UsdBaseConfig invalidBaseConfig; invalidBaseConfig.serviceSpecificInfo = invalidSsi; if (caps.isUsdPublisherSupported) { UsdPublishConfig publishConfig; publishConfig.usdBaseConfig = invalidBaseConfig; EXPECT_FALSE(sta_iface_->startUsdPublish(commandId, publishConfig).isOk()); EXPECT_FALSE(sta_iface_->updateUsdPublish(commandId, invalidSsi).isOk()); } if (caps.isUsdSubscriberSupported) { UsdSubscribeConfig subscribeConfig; subscribeConfig.usdBaseConfig = invalidBaseConfig; EXPECT_FALSE(sta_iface_->startUsdSubscribe(commandId, subscribeConfig).isOk()); } UsdMessageInfo messageInfo; messageInfo.message = invalidSsi; EXPECT_FALSE(sta_iface_->sendUsdMessage(messageInfo).isOk()); } /* * Cancel a USD Publish and Subscribe session. */ TEST_P(SupplicantStaIfaceAidlTest, CancelUsdSession) { if (interface_version_ < 4) { GTEST_SKIP() << "USD is available as of Supplicant V4"; } UsdCapabilities caps; EXPECT_TRUE(sta_iface_->getUsdCapabilities(&caps).isOk()); if (!caps.isUsdPublisherSupported && !caps.isUsdSubscriberSupported) { GTEST_SKIP() << "USD publish and subscribe are not supported"; } int sessionId = 123; if (caps.isUsdPublisherSupported) { // Method is expected to succeed, even if the session does not exist. EXPECT_TRUE(sta_iface_->cancelUsdPublish(sessionId).isOk()); } if (caps.isUsdSubscriberSupported) { EXPECT_TRUE(sta_iface_->cancelUsdSubscribe(sessionId).isOk()); } } GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(SupplicantStaIfaceAidlTest); INSTANTIATE_TEST_SUITE_P(Supplicant, SupplicantStaIfaceAidlTest, testing::ValuesIn(android::getAidlHalInstanceNames( Loading