Loading wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.cpp +10 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,11 @@ namespace { // Helper function to initialize the driver and firmware to STA mode // using the vendor HAL HIDL interface. void initilializeDriverAndFirmware(const std::string& wifi_instance_name) { // Skip if wifi instance is not set. if (wifi_instance_name == "") { return; } sp<IWifiChip> wifi_chip = getWifiChip(wifi_instance_name); ChipModeId mode_id; EXPECT_TRUE(configureChipToSupportIfaceType( Loading @@ -66,6 +71,11 @@ void initilializeDriverAndFirmware(const std::string& wifi_instance_name) { // Helper function to deinitialize the driver and firmware // using the vendor HAL HIDL interface. void deInitilializeDriverAndFirmware(const std::string& wifi_instance_name) { // Skip if wifi instance is not set. if (wifi_instance_name == "") { return; } stopWifi(wifi_instance_name); } Loading wifi/supplicant/1.1/vts/functional/Android.bp +5 −2 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ cc_library_static { defaults: ["VtsHalTargetTestDefaults"], srcs: ["supplicant_hidl_test_utils_1_1.cpp"], export_include_dirs: [ "." ".", ], static_libs: [ "VtsHalWifiV1_0TargetTestUtil", Loading Loading @@ -54,5 +54,8 @@ cc_test { "libwifi-system", "libwifi-system-iface", ], test_suites: ["general-tests"], test_suites: [ "general-tests", "vts-core", ], } wifi/supplicant/1.1/vts/functional/VtsHalWifiSupplicantV1_1TargetTest.cpp +3 −40 Original line number Diff line number Diff line Loading @@ -14,45 +14,8 @@ * limitations under the License. */ #include <android-base/logging.h> #include <android/hardware/wifi/1.1/IWifi.h> #include <android/hardware/wifi/supplicant/1.1/ISupplicant.h> #include "supplicant_hidl_test_utils.h" #include "wifi_hidl_test_utils.h" class WifiSupplicantHidlEnvironment_1_1 : public WifiSupplicantHidlEnvironment { public: // get the test environment singleton static WifiSupplicantHidlEnvironment_1_1* Instance() { static WifiSupplicantHidlEnvironment_1_1* instance = new WifiSupplicantHidlEnvironment_1_1; return instance; } virtual void registerTestServices() override { registerTestService<::android::hardware::wifi::V1_0::IWifi>(); registerTestService<::android::hardware::wifi::V1_1::IWifi>(); registerTestService< ::android::hardware::wifi::supplicant::V1_0::ISupplicant>(); registerTestService< ::android::hardware::wifi::supplicant::V1_1::ISupplicant>(); } private: WifiSupplicantHidlEnvironment_1_1() {} }; WifiSupplicantHidlEnvironment* gEnv = WifiSupplicantHidlEnvironment_1_1::Instance(); int main(int argc, char** argv) { ::testing::AddGlobalTestEnvironment(gEnv); ::testing::InitGoogleTest(&argc, argv); gEnv->init(&argc, argv); int status = gEnv->initFromOptions(argc, argv); if (status == 0) { int status = RUN_ALL_TESTS(); LOG(INFO) << "Test result = " << status; } return status; } // TODO(b/143892896): Remove this file after wifi_hidl_test_utils.cpp is // updated. WifiSupplicantHidlEnvironment* gEnv = nullptr; wifi/supplicant/1.1/vts/functional/supplicant_hidl_test.cpp +31 −23 Original line number Diff line number Diff line Loading @@ -17,10 +17,12 @@ #include <android-base/logging.h> #include <cutils/properties.h> #include <VtsHalHidlTargetTestBase.h> #include <VtsCoreUtil.h> #include <android/hardware/wifi/1.0/IWifi.h> #include <android/hardware/wifi/supplicant/1.0/types.h> #include <android/hardware/wifi/supplicant/1.1/ISupplicant.h> #include <hidl/GtestPrinter.h> #include <hidl/ServiceManagement.h> #include "supplicant_hidl_test_utils.h" #include "supplicant_hidl_test_utils_1_1.h" Loading @@ -33,22 +35,11 @@ using ::android::hardware::wifi::supplicant::V1_0::IfaceType; using ::android::hardware::wifi::supplicant::V1_1::ISupplicant; using ::android::sp; extern WifiSupplicantHidlEnvironment* gEnv; class SupplicantHidlTest : public ::testing::VtsHalHidlTargetTestBase { class SupplicantHidlTest : public SupplicantHidlTestBase { public: virtual void SetUp() override { startSupplicantAndWaitForHidlService(); supplicant_ = getSupplicant_1_1(); ASSERT_NE(supplicant_.get(), nullptr); } virtual void TearDown() override { stopSupplicant(); } virtual void SetUp() override { SupplicantHidlTestBase::SetUp(); } protected: // ISupplicant object used for all tests in this fixture. sp<ISupplicant> supplicant_; std::string getWlan0IfaceName() { std::array<char, PROPERTY_VALUE_MAX> buffer; property_get("wifi.interface", buffer.data(), "wlan0"); Loading @@ -65,7 +56,7 @@ class SupplicantHidlTest : public ::testing::VtsHalHidlTargetTestBase { /* * AddStaInterface */ TEST_F(SupplicantHidlTest, AddStaInterface) { TEST_P(SupplicantHidlTest, AddStaInterface) { ISupplicant::IfaceInfo iface_info; iface_info.name = getWlan0IfaceName(); iface_info.type = IfaceType::STA; Loading @@ -82,8 +73,8 @@ TEST_F(SupplicantHidlTest, AddStaInterface) { /* * AddP2pInterface */ TEST_F(SupplicantHidlTest, AddP2pInterface) { if (!gEnv->isP2pOn) return; TEST_P(SupplicantHidlTest, AddP2pInterface) { if (isP2pOn_) return; ISupplicant::IfaceInfo iface_info; iface_info.name = getP2pIfaceName(); iface_info.type = IfaceType::P2P; Loading @@ -100,7 +91,7 @@ TEST_F(SupplicantHidlTest, AddP2pInterface) { /* * RemoveStaInterface */ TEST_F(SupplicantHidlTest, RemoveStaInterface) { TEST_P(SupplicantHidlTest, RemoveStaInterface) { ISupplicant::IfaceInfo iface_info; iface_info.name = getWlan0IfaceName(); iface_info.type = IfaceType::STA; Loading @@ -122,8 +113,8 @@ TEST_F(SupplicantHidlTest, RemoveStaInterface) { /* * RemoveP2pInterface */ TEST_F(SupplicantHidlTest, RemoveP2pInterface) { if (!gEnv->isP2pOn) return; TEST_P(SupplicantHidlTest, RemoveP2pInterface) { if (isP2pOn_) return; ISupplicant::IfaceInfo iface_info; iface_info.name = getP2pIfaceName(); iface_info.type = IfaceType::P2P; Loading @@ -146,6 +137,23 @@ TEST_F(SupplicantHidlTest, RemoveP2pInterface) { * Terminate * This terminates the service. */ TEST_F(SupplicantHidlTest, Terminate) { supplicant_->terminate(); TEST_P(SupplicantHidlTest, Terminate) { supplicant_->terminate(); } static std::vector<std::string> get_wifi_instances() { std::vector<std::string> instances = android::hardware::getAllHalInstanceNames( android::hardware::wifi::V1_0::IWifi::descriptor); // Also test when wifi instance is not set. instances.push_back(""); return instances; } INSTANTIATE_TEST_CASE_P( PerInstance, SupplicantHidlTest, testing::Combine( testing::ValuesIn(get_wifi_instances()), testing::ValuesIn(android::hardware::getAllHalInstanceNames( android::hardware::wifi::supplicant::V1_1::ISupplicant:: descriptor))), android::hardware::PrintInstanceTupleNameToString<>); wifi/supplicant/1.1/vts/functional/supplicant_hidl_test_utils_1_1.cpp +11 −7 Original line number Diff line number Diff line Loading @@ -14,7 +14,6 @@ * limitations under the License. */ #include <VtsHalHidlTargetTestBase.h> #include <android-base/logging.h> #include "supplicant_hidl_test_utils.h" Loading @@ -25,14 +24,19 @@ using ::android::hardware::wifi::supplicant::V1_1::ISupplicantStaIface; using ::android::hardware::wifi::supplicant::V1_1::ISupplicantStaNetwork; using ::android::sp; sp<ISupplicant> getSupplicant_1_1() { return ISupplicant::castFrom(getSupplicant()); sp<ISupplicant> getSupplicant_1_1(const std::string& supplicant_instance_name, bool isP2pOn) { return ISupplicant::castFrom( getSupplicant(supplicant_instance_name, isP2pOn)); } sp<ISupplicantStaIface> getSupplicantStaIface_1_1() { return ISupplicantStaIface::castFrom(getSupplicantStaIface()); sp<ISupplicantStaIface> getSupplicantStaIface_1_1( const sp<ISupplicant>& supplicant) { return ISupplicantStaIface::castFrom(getSupplicantStaIface(supplicant)); } sp<ISupplicantStaNetwork> createSupplicantStaNetwork_1_1() { return ISupplicantStaNetwork::castFrom(createSupplicantStaNetwork()); sp<ISupplicantStaNetwork> createSupplicantStaNetwork_1_1( const sp<ISupplicant>& supplicant) { return ISupplicantStaNetwork::castFrom( createSupplicantStaNetwork(supplicant)); } Loading
wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.cpp +10 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,11 @@ namespace { // Helper function to initialize the driver and firmware to STA mode // using the vendor HAL HIDL interface. void initilializeDriverAndFirmware(const std::string& wifi_instance_name) { // Skip if wifi instance is not set. if (wifi_instance_name == "") { return; } sp<IWifiChip> wifi_chip = getWifiChip(wifi_instance_name); ChipModeId mode_id; EXPECT_TRUE(configureChipToSupportIfaceType( Loading @@ -66,6 +71,11 @@ void initilializeDriverAndFirmware(const std::string& wifi_instance_name) { // Helper function to deinitialize the driver and firmware // using the vendor HAL HIDL interface. void deInitilializeDriverAndFirmware(const std::string& wifi_instance_name) { // Skip if wifi instance is not set. if (wifi_instance_name == "") { return; } stopWifi(wifi_instance_name); } Loading
wifi/supplicant/1.1/vts/functional/Android.bp +5 −2 Original line number Diff line number Diff line Loading @@ -19,7 +19,7 @@ cc_library_static { defaults: ["VtsHalTargetTestDefaults"], srcs: ["supplicant_hidl_test_utils_1_1.cpp"], export_include_dirs: [ "." ".", ], static_libs: [ "VtsHalWifiV1_0TargetTestUtil", Loading Loading @@ -54,5 +54,8 @@ cc_test { "libwifi-system", "libwifi-system-iface", ], test_suites: ["general-tests"], test_suites: [ "general-tests", "vts-core", ], }
wifi/supplicant/1.1/vts/functional/VtsHalWifiSupplicantV1_1TargetTest.cpp +3 −40 Original line number Diff line number Diff line Loading @@ -14,45 +14,8 @@ * limitations under the License. */ #include <android-base/logging.h> #include <android/hardware/wifi/1.1/IWifi.h> #include <android/hardware/wifi/supplicant/1.1/ISupplicant.h> #include "supplicant_hidl_test_utils.h" #include "wifi_hidl_test_utils.h" class WifiSupplicantHidlEnvironment_1_1 : public WifiSupplicantHidlEnvironment { public: // get the test environment singleton static WifiSupplicantHidlEnvironment_1_1* Instance() { static WifiSupplicantHidlEnvironment_1_1* instance = new WifiSupplicantHidlEnvironment_1_1; return instance; } virtual void registerTestServices() override { registerTestService<::android::hardware::wifi::V1_0::IWifi>(); registerTestService<::android::hardware::wifi::V1_1::IWifi>(); registerTestService< ::android::hardware::wifi::supplicant::V1_0::ISupplicant>(); registerTestService< ::android::hardware::wifi::supplicant::V1_1::ISupplicant>(); } private: WifiSupplicantHidlEnvironment_1_1() {} }; WifiSupplicantHidlEnvironment* gEnv = WifiSupplicantHidlEnvironment_1_1::Instance(); int main(int argc, char** argv) { ::testing::AddGlobalTestEnvironment(gEnv); ::testing::InitGoogleTest(&argc, argv); gEnv->init(&argc, argv); int status = gEnv->initFromOptions(argc, argv); if (status == 0) { int status = RUN_ALL_TESTS(); LOG(INFO) << "Test result = " << status; } return status; } // TODO(b/143892896): Remove this file after wifi_hidl_test_utils.cpp is // updated. WifiSupplicantHidlEnvironment* gEnv = nullptr;
wifi/supplicant/1.1/vts/functional/supplicant_hidl_test.cpp +31 −23 Original line number Diff line number Diff line Loading @@ -17,10 +17,12 @@ #include <android-base/logging.h> #include <cutils/properties.h> #include <VtsHalHidlTargetTestBase.h> #include <VtsCoreUtil.h> #include <android/hardware/wifi/1.0/IWifi.h> #include <android/hardware/wifi/supplicant/1.0/types.h> #include <android/hardware/wifi/supplicant/1.1/ISupplicant.h> #include <hidl/GtestPrinter.h> #include <hidl/ServiceManagement.h> #include "supplicant_hidl_test_utils.h" #include "supplicant_hidl_test_utils_1_1.h" Loading @@ -33,22 +35,11 @@ using ::android::hardware::wifi::supplicant::V1_0::IfaceType; using ::android::hardware::wifi::supplicant::V1_1::ISupplicant; using ::android::sp; extern WifiSupplicantHidlEnvironment* gEnv; class SupplicantHidlTest : public ::testing::VtsHalHidlTargetTestBase { class SupplicantHidlTest : public SupplicantHidlTestBase { public: virtual void SetUp() override { startSupplicantAndWaitForHidlService(); supplicant_ = getSupplicant_1_1(); ASSERT_NE(supplicant_.get(), nullptr); } virtual void TearDown() override { stopSupplicant(); } virtual void SetUp() override { SupplicantHidlTestBase::SetUp(); } protected: // ISupplicant object used for all tests in this fixture. sp<ISupplicant> supplicant_; std::string getWlan0IfaceName() { std::array<char, PROPERTY_VALUE_MAX> buffer; property_get("wifi.interface", buffer.data(), "wlan0"); Loading @@ -65,7 +56,7 @@ class SupplicantHidlTest : public ::testing::VtsHalHidlTargetTestBase { /* * AddStaInterface */ TEST_F(SupplicantHidlTest, AddStaInterface) { TEST_P(SupplicantHidlTest, AddStaInterface) { ISupplicant::IfaceInfo iface_info; iface_info.name = getWlan0IfaceName(); iface_info.type = IfaceType::STA; Loading @@ -82,8 +73,8 @@ TEST_F(SupplicantHidlTest, AddStaInterface) { /* * AddP2pInterface */ TEST_F(SupplicantHidlTest, AddP2pInterface) { if (!gEnv->isP2pOn) return; TEST_P(SupplicantHidlTest, AddP2pInterface) { if (isP2pOn_) return; ISupplicant::IfaceInfo iface_info; iface_info.name = getP2pIfaceName(); iface_info.type = IfaceType::P2P; Loading @@ -100,7 +91,7 @@ TEST_F(SupplicantHidlTest, AddP2pInterface) { /* * RemoveStaInterface */ TEST_F(SupplicantHidlTest, RemoveStaInterface) { TEST_P(SupplicantHidlTest, RemoveStaInterface) { ISupplicant::IfaceInfo iface_info; iface_info.name = getWlan0IfaceName(); iface_info.type = IfaceType::STA; Loading @@ -122,8 +113,8 @@ TEST_F(SupplicantHidlTest, RemoveStaInterface) { /* * RemoveP2pInterface */ TEST_F(SupplicantHidlTest, RemoveP2pInterface) { if (!gEnv->isP2pOn) return; TEST_P(SupplicantHidlTest, RemoveP2pInterface) { if (isP2pOn_) return; ISupplicant::IfaceInfo iface_info; iface_info.name = getP2pIfaceName(); iface_info.type = IfaceType::P2P; Loading @@ -146,6 +137,23 @@ TEST_F(SupplicantHidlTest, RemoveP2pInterface) { * Terminate * This terminates the service. */ TEST_F(SupplicantHidlTest, Terminate) { supplicant_->terminate(); TEST_P(SupplicantHidlTest, Terminate) { supplicant_->terminate(); } static std::vector<std::string> get_wifi_instances() { std::vector<std::string> instances = android::hardware::getAllHalInstanceNames( android::hardware::wifi::V1_0::IWifi::descriptor); // Also test when wifi instance is not set. instances.push_back(""); return instances; } INSTANTIATE_TEST_CASE_P( PerInstance, SupplicantHidlTest, testing::Combine( testing::ValuesIn(get_wifi_instances()), testing::ValuesIn(android::hardware::getAllHalInstanceNames( android::hardware::wifi::supplicant::V1_1::ISupplicant:: descriptor))), android::hardware::PrintInstanceTupleNameToString<>);
wifi/supplicant/1.1/vts/functional/supplicant_hidl_test_utils_1_1.cpp +11 −7 Original line number Diff line number Diff line Loading @@ -14,7 +14,6 @@ * limitations under the License. */ #include <VtsHalHidlTargetTestBase.h> #include <android-base/logging.h> #include "supplicant_hidl_test_utils.h" Loading @@ -25,14 +24,19 @@ using ::android::hardware::wifi::supplicant::V1_1::ISupplicantStaIface; using ::android::hardware::wifi::supplicant::V1_1::ISupplicantStaNetwork; using ::android::sp; sp<ISupplicant> getSupplicant_1_1() { return ISupplicant::castFrom(getSupplicant()); sp<ISupplicant> getSupplicant_1_1(const std::string& supplicant_instance_name, bool isP2pOn) { return ISupplicant::castFrom( getSupplicant(supplicant_instance_name, isP2pOn)); } sp<ISupplicantStaIface> getSupplicantStaIface_1_1() { return ISupplicantStaIface::castFrom(getSupplicantStaIface()); sp<ISupplicantStaIface> getSupplicantStaIface_1_1( const sp<ISupplicant>& supplicant) { return ISupplicantStaIface::castFrom(getSupplicantStaIface(supplicant)); } sp<ISupplicantStaNetwork> createSupplicantStaNetwork_1_1() { return ISupplicantStaNetwork::castFrom(createSupplicantStaNetwork()); sp<ISupplicantStaNetwork> createSupplicantStaNetwork_1_1( const sp<ISupplicant>& supplicant) { return ISupplicantStaNetwork::castFrom( createSupplicantStaNetwork(supplicant)); }