Loading wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.cpp +14 −0 Original line number Original line Diff line number Diff line Loading @@ -275,3 +275,17 @@ bool turnOnExcessiveLogging(const sp<ISupplicant>& supplicant) { }); }); return !operation_failed; return !operation_failed; } } bool waitForFrameworkReady() { int waitCount = 10; do { // Check whether package service is ready or not. if (!testing::checkSubstringInCommandOutput( "/system/bin/service check package", ": not found")) { return true; } LOG(INFO) << "Framework is not ready"; sleep(1); } while (waitCount-- > 0); return false; } wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.h +49 −0 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,8 @@ #ifndef SUPPLICANT_HIDL_TEST_UTILS_H #ifndef SUPPLICANT_HIDL_TEST_UTILS_H #define SUPPLICANT_HIDL_TEST_UTILS_H #define SUPPLICANT_HIDL_TEST_UTILS_H #include <VtsCoreUtil.h> #include <android-base/logging.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicant.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicant.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.h> Loading Loading @@ -62,4 +64,51 @@ bool turnOnExcessiveLogging( bool turnOnExcessiveLogging(); bool turnOnExcessiveLogging(); bool waitForFrameworkReady(); class SupplicantHidlTestBase : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: virtual void SetUp() override { // should always be v1.0 wifi wifi_v1_0_instance_name_ = std::get<0>(GetParam()); supplicant_instance_name_ = std::get<1>(GetParam()); std::system("/system/bin/start"); ASSERT_TRUE(waitForFrameworkReady()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); LOG(INFO) << "SupplicantHidlTestBase isP2pOn_: " << isP2pOn_; } virtual void TearDown() override { stopSupplicant(wifi_v1_0_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: bool isP2pOn_ = false; std::string wifi_v1_0_instance_name_; std::string supplicant_instance_name_; }; class SupplicantHidlTestBaseV1_0 : public SupplicantHidlTestBase { public: virtual void SetUp() override { SupplicantHidlTestBase::SetUp(); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); ASSERT_NE(supplicant_.get(), nullptr); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); } protected: android::sp<android::hardware::wifi::supplicant::V1_0::ISupplicant> supplicant_; }; #endif /* SUPPLICANT_HIDL_TEST_UTILS_H */ #endif /* SUPPLICANT_HIDL_TEST_UTILS_H */ wifi/supplicant/1.0/vts/functional/supplicant_p2p_iface_hidl_test.cpp +13 −32 Original line number Original line Diff line number Diff line Loading @@ -71,21 +71,13 @@ constexpr uint32_t kTestExtListenInterval = 400; constexpr SupplicantNetworkId kTestNetworkId = 5; constexpr SupplicantNetworkId kTestNetworkId = 5; } // namespace } // namespace class SupplicantP2pIfaceHidlTest class SupplicantP2pIfaceHidlTest : public SupplicantHidlTestBaseV1_0 { : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: public: virtual void SetUp() override { virtual void SetUp() override { wifi_instance_name_ = std::get<0>(GetParam()); SupplicantHidlTestBaseV1_0::SetUp(); supplicant_instance_name_ = std::get<1>(GetParam()); if (!isP2pOn_) { isP2pOn_ = GTEST_SKIP() << "Wi-Fi Direct is not supported, skip this test."; testing::deviceSupportsFeature("android.hardware.wifi.direct"); } // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); p2p_iface_ = getSupplicantP2pIface(supplicant_); p2p_iface_ = getSupplicantP2pIface(supplicant_); ASSERT_NE(p2p_iface_.get(), nullptr); ASSERT_NE(p2p_iface_.get(), nullptr); Loading @@ -93,22 +85,11 @@ class SupplicantP2pIfaceHidlTest memcpy(peer_mac_addr_.data(), kTestPeerMacAddr, peer_mac_addr_.size()); memcpy(peer_mac_addr_.data(), kTestPeerMacAddr, peer_mac_addr_.size()); } } virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: protected: bool isP2pOn_ = false; sp<ISupplicant> supplicant_; // ISupplicantP2pIface object used for all tests in this fixture. sp<ISupplicantP2pIface> p2p_iface_; sp<ISupplicantP2pIface> p2p_iface_; // MAC address to use for various tests. // MAC address to use for various tests. std::array<uint8_t, 6> mac_addr_; std::array<uint8_t, 6> mac_addr_; std::array<uint8_t, 6> peer_mac_addr_; std::array<uint8_t, 6> peer_mac_addr_; std::string wifi_instance_name_; std::string supplicant_instance_name_; }; }; class IfaceCallback : public ISupplicantP2pIfaceCallback { class IfaceCallback : public ISupplicantP2pIfaceCallback { Loading Loading @@ -201,8 +182,8 @@ class IfaceCallback : public ISupplicantP2pIfaceCallback { * successfully created. * successfully created. */ */ TEST_P(SupplicantP2pIfaceHidlTest, Create) { TEST_P(SupplicantP2pIfaceHidlTest, Create) { stopSupplicant(wifi_instance_name_); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); supplicant_instance_name_); sp<ISupplicantP2pIface> p2p_iface = getSupplicantP2pIface( sp<ISupplicantP2pIface> p2p_iface = getSupplicantP2pIface( getSupplicant(supplicant_instance_name_, isP2pOn_)); getSupplicant(supplicant_instance_name_, isP2pOn_)); Loading Loading @@ -301,8 +282,8 @@ TEST_P(SupplicantP2pIfaceHidlTest, Connect) { mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, kTestConnectPin, false, false, kTestConnectGoIntent, kTestConnectPin, false, false, kTestConnectGoIntent, [](const SupplicantStatus& status, const hidl_string& /* pin */) { [](const SupplicantStatus& status, const hidl_string& /* pin */) { // This is not going to work with fake values. // After enabling auto-join, it will succeed always. EXPECT_EQ(SupplicantStatusCode::FAILURE_UNKNOWN, status.code); EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code); }); }); } } Loading @@ -314,12 +295,12 @@ TEST_P(SupplicantP2pIfaceHidlTest, CancelConnect) { mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, kTestConnectPin, false, false, kTestConnectGoIntent, kTestConnectPin, false, false, kTestConnectGoIntent, [](const SupplicantStatus& status, const hidl_string& /* pin */) { [](const SupplicantStatus& status, const hidl_string& /* pin */) { // This is not going to work with fake values. // After enabling auto-join, it will succeed always. EXPECT_EQ(SupplicantStatusCode::FAILURE_UNKNOWN, status.code); EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code); }); }); p2p_iface_->cancelConnect([](const SupplicantStatus& status) { p2p_iface_->cancelConnect([](const SupplicantStatus& status) { EXPECT_EQ(SupplicantStatusCode::FAILURE_UNKNOWN, status.code); EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code); }); }); } } Loading wifi/supplicant/1.0/vts/functional/supplicant_sta_iface_hidl_test.cpp +5 −25 Original line number Original line Diff line number Diff line Loading @@ -66,42 +66,22 @@ constexpr uint8_t kTestWpsDeviceType[] = {[0 ... 7] = 0x01}; constexpr uint16_t kTestWpsConfigMethods = 0xffff; constexpr uint16_t kTestWpsConfigMethods = 0xffff; } // namespace } // namespace class SupplicantStaIfaceHidlTest class SupplicantStaIfaceHidlTest : public SupplicantHidlTestBaseV1_0 { : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: public: virtual void SetUp() override { virtual void SetUp() override { wifi_instance_name_ = std::get<0>(GetParam()); SupplicantHidlTestBaseV1_0::SetUp(); supplicant_instance_name_ = std::get<1>(GetParam()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); sta_iface_ = getSupplicantStaIface(supplicant_); sta_iface_ = getSupplicantStaIface(supplicant_); ASSERT_NE(sta_iface_.get(), nullptr); ASSERT_NE(sta_iface_.get(), nullptr); memcpy(mac_addr_.data(), kTestMacAddr, mac_addr_.size()); memcpy(mac_addr_.data(), kTestMacAddr, mac_addr_.size()); } } virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: protected: bool isP2pOn_ = false; bool isP2pOn_ = false; sp<ISupplicant> supplicant_; // ISupplicantStaIface object used for all tests in this fixture. // ISupplicantStaIface object used for all tests in this fixture. sp<ISupplicantStaIface> sta_iface_; sp<ISupplicantStaIface> sta_iface_; // MAC address to use for various tests. // MAC address to use for various tests. std::array<uint8_t, 6> mac_addr_; std::array<uint8_t, 6> mac_addr_; std::string wifi_instance_name_; std::string supplicant_instance_name_; }; }; class IfaceCallback : public ISupplicantStaIfaceCallback { class IfaceCallback : public ISupplicantStaIfaceCallback { Loading Loading @@ -183,8 +163,8 @@ class IfaceCallback : public ISupplicantStaIfaceCallback { * successfully created. * successfully created. */ */ TEST_P(SupplicantStaIfaceHidlTest, Create) { TEST_P(SupplicantStaIfaceHidlTest, Create) { stopSupplicant(wifi_instance_name_); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); supplicant_instance_name_); EXPECT_NE(nullptr, getSupplicantStaIface( EXPECT_NE(nullptr, getSupplicantStaIface( getSupplicant(supplicant_instance_name_, isP2pOn_)) getSupplicant(supplicant_instance_name_, isP2pOn_)) Loading wifi/supplicant/1.0/vts/functional/supplicant_sta_network_hidl_test.cpp +4 −25 Original line number Original line Diff line number Diff line Loading @@ -79,21 +79,10 @@ constexpr uint32_t kTestPairwiseCipher = ISupplicantStaNetwork::PairwiseCipherMask::TKIP); ISupplicantStaNetwork::PairwiseCipherMask::TKIP); } // namespace } // namespace class SupplicantStaNetworkHidlTest class SupplicantStaNetworkHidlTest : public SupplicantHidlTestBaseV1_0 { : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: public: virtual void SetUp() override { virtual void SetUp() override { wifi_instance_name_ = std::get<0>(GetParam()); SupplicantHidlTestBaseV1_0::SetUp(); supplicant_instance_name_ = std::get<1>(GetParam()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); sta_network_ = createSupplicantStaNetwork(supplicant_); sta_network_ = createSupplicantStaNetwork(supplicant_); ASSERT_NE(sta_network_.get(), nullptr); ASSERT_NE(sta_network_.get(), nullptr); /* variable used to check if the underlying HAL version is 1.3 or /* variable used to check if the underlying HAL version is 1.3 or Loading @@ -105,12 +94,6 @@ class SupplicantStaNetworkHidlTest ssid_.assign(kTestSsidStr, kTestSsidStr + strlen(kTestSsidStr)); ssid_.assign(kTestSsidStr, kTestSsidStr + strlen(kTestSsidStr)); } } virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: protected: void removeNetwork() { void removeNetwork() { sp<ISupplicantStaIface> sta_iface = getSupplicantStaIface(supplicant_); sp<ISupplicantStaIface> sta_iface = getSupplicantStaIface(supplicant_); Loading @@ -128,14 +111,10 @@ class SupplicantStaNetworkHidlTest sp<::android::hardware::wifi::supplicant::V1_3::ISupplicantStaNetwork> sp<::android::hardware::wifi::supplicant::V1_3::ISupplicantStaNetwork> v1_3 = nullptr; v1_3 = nullptr; bool isP2pOn_ = false; sp<ISupplicant> supplicant_; // ISupplicantStaNetwork object used for all tests in this fixture. // ISupplicantStaNetwork object used for all tests in this fixture. sp<ISupplicantStaNetwork> sta_network_; sp<ISupplicantStaNetwork> sta_network_; // SSID to use for various tests. // SSID to use for various tests. std::vector<uint8_t> ssid_; std::vector<uint8_t> ssid_; std::string wifi_instance_name_; std::string supplicant_instance_name_; }; }; class NetworkCallback : public ISupplicantStaNetworkCallback { class NetworkCallback : public ISupplicantStaNetworkCallback { Loading @@ -158,8 +137,8 @@ class NetworkCallback : public ISupplicantStaNetworkCallback { * successfully created. * successfully created. */ */ TEST_P(SupplicantStaNetworkHidlTest, Create) { TEST_P(SupplicantStaNetworkHidlTest, Create) { stopSupplicant(wifi_instance_name_); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); supplicant_instance_name_); sp<ISupplicant> supplicant = sp<ISupplicant> supplicant = getSupplicant(supplicant_instance_name_, isP2pOn_); getSupplicant(supplicant_instance_name_, isP2pOn_); Loading Loading
wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.cpp +14 −0 Original line number Original line Diff line number Diff line Loading @@ -275,3 +275,17 @@ bool turnOnExcessiveLogging(const sp<ISupplicant>& supplicant) { }); }); return !operation_failed; return !operation_failed; } } bool waitForFrameworkReady() { int waitCount = 10; do { // Check whether package service is ready or not. if (!testing::checkSubstringInCommandOutput( "/system/bin/service check package", ": not found")) { return true; } LOG(INFO) << "Framework is not ready"; sleep(1); } while (waitCount-- > 0); return false; }
wifi/supplicant/1.0/vts/functional/supplicant_hidl_test_utils.h +49 −0 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,8 @@ #ifndef SUPPLICANT_HIDL_TEST_UTILS_H #ifndef SUPPLICANT_HIDL_TEST_UTILS_H #define SUPPLICANT_HIDL_TEST_UTILS_H #define SUPPLICANT_HIDL_TEST_UTILS_H #include <VtsCoreUtil.h> #include <android-base/logging.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicant.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicant.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantP2pIface.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.h> #include <android/hardware/wifi/supplicant/1.0/ISupplicantStaIface.h> Loading Loading @@ -62,4 +64,51 @@ bool turnOnExcessiveLogging( bool turnOnExcessiveLogging(); bool turnOnExcessiveLogging(); bool waitForFrameworkReady(); class SupplicantHidlTestBase : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: virtual void SetUp() override { // should always be v1.0 wifi wifi_v1_0_instance_name_ = std::get<0>(GetParam()); supplicant_instance_name_ = std::get<1>(GetParam()); std::system("/system/bin/start"); ASSERT_TRUE(waitForFrameworkReady()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); LOG(INFO) << "SupplicantHidlTestBase isP2pOn_: " << isP2pOn_; } virtual void TearDown() override { stopSupplicant(wifi_v1_0_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: bool isP2pOn_ = false; std::string wifi_v1_0_instance_name_; std::string supplicant_instance_name_; }; class SupplicantHidlTestBaseV1_0 : public SupplicantHidlTestBase { public: virtual void SetUp() override { SupplicantHidlTestBase::SetUp(); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); ASSERT_NE(supplicant_.get(), nullptr); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); } protected: android::sp<android::hardware::wifi::supplicant::V1_0::ISupplicant> supplicant_; }; #endif /* SUPPLICANT_HIDL_TEST_UTILS_H */ #endif /* SUPPLICANT_HIDL_TEST_UTILS_H */
wifi/supplicant/1.0/vts/functional/supplicant_p2p_iface_hidl_test.cpp +13 −32 Original line number Original line Diff line number Diff line Loading @@ -71,21 +71,13 @@ constexpr uint32_t kTestExtListenInterval = 400; constexpr SupplicantNetworkId kTestNetworkId = 5; constexpr SupplicantNetworkId kTestNetworkId = 5; } // namespace } // namespace class SupplicantP2pIfaceHidlTest class SupplicantP2pIfaceHidlTest : public SupplicantHidlTestBaseV1_0 { : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: public: virtual void SetUp() override { virtual void SetUp() override { wifi_instance_name_ = std::get<0>(GetParam()); SupplicantHidlTestBaseV1_0::SetUp(); supplicant_instance_name_ = std::get<1>(GetParam()); if (!isP2pOn_) { isP2pOn_ = GTEST_SKIP() << "Wi-Fi Direct is not supported, skip this test."; testing::deviceSupportsFeature("android.hardware.wifi.direct"); } // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); p2p_iface_ = getSupplicantP2pIface(supplicant_); p2p_iface_ = getSupplicantP2pIface(supplicant_); ASSERT_NE(p2p_iface_.get(), nullptr); ASSERT_NE(p2p_iface_.get(), nullptr); Loading @@ -93,22 +85,11 @@ class SupplicantP2pIfaceHidlTest memcpy(peer_mac_addr_.data(), kTestPeerMacAddr, peer_mac_addr_.size()); memcpy(peer_mac_addr_.data(), kTestPeerMacAddr, peer_mac_addr_.size()); } } virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: protected: bool isP2pOn_ = false; sp<ISupplicant> supplicant_; // ISupplicantP2pIface object used for all tests in this fixture. sp<ISupplicantP2pIface> p2p_iface_; sp<ISupplicantP2pIface> p2p_iface_; // MAC address to use for various tests. // MAC address to use for various tests. std::array<uint8_t, 6> mac_addr_; std::array<uint8_t, 6> mac_addr_; std::array<uint8_t, 6> peer_mac_addr_; std::array<uint8_t, 6> peer_mac_addr_; std::string wifi_instance_name_; std::string supplicant_instance_name_; }; }; class IfaceCallback : public ISupplicantP2pIfaceCallback { class IfaceCallback : public ISupplicantP2pIfaceCallback { Loading Loading @@ -201,8 +182,8 @@ class IfaceCallback : public ISupplicantP2pIfaceCallback { * successfully created. * successfully created. */ */ TEST_P(SupplicantP2pIfaceHidlTest, Create) { TEST_P(SupplicantP2pIfaceHidlTest, Create) { stopSupplicant(wifi_instance_name_); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); supplicant_instance_name_); sp<ISupplicantP2pIface> p2p_iface = getSupplicantP2pIface( sp<ISupplicantP2pIface> p2p_iface = getSupplicantP2pIface( getSupplicant(supplicant_instance_name_, isP2pOn_)); getSupplicant(supplicant_instance_name_, isP2pOn_)); Loading Loading @@ -301,8 +282,8 @@ TEST_P(SupplicantP2pIfaceHidlTest, Connect) { mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, kTestConnectPin, false, false, kTestConnectGoIntent, kTestConnectPin, false, false, kTestConnectGoIntent, [](const SupplicantStatus& status, const hidl_string& /* pin */) { [](const SupplicantStatus& status, const hidl_string& /* pin */) { // This is not going to work with fake values. // After enabling auto-join, it will succeed always. EXPECT_EQ(SupplicantStatusCode::FAILURE_UNKNOWN, status.code); EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code); }); }); } } Loading @@ -314,12 +295,12 @@ TEST_P(SupplicantP2pIfaceHidlTest, CancelConnect) { mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, mac_addr_, ISupplicantP2pIface::WpsProvisionMethod::PBC, kTestConnectPin, false, false, kTestConnectGoIntent, kTestConnectPin, false, false, kTestConnectGoIntent, [](const SupplicantStatus& status, const hidl_string& /* pin */) { [](const SupplicantStatus& status, const hidl_string& /* pin */) { // This is not going to work with fake values. // After enabling auto-join, it will succeed always. EXPECT_EQ(SupplicantStatusCode::FAILURE_UNKNOWN, status.code); EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code); }); }); p2p_iface_->cancelConnect([](const SupplicantStatus& status) { p2p_iface_->cancelConnect([](const SupplicantStatus& status) { EXPECT_EQ(SupplicantStatusCode::FAILURE_UNKNOWN, status.code); EXPECT_EQ(SupplicantStatusCode::SUCCESS, status.code); }); }); } } Loading
wifi/supplicant/1.0/vts/functional/supplicant_sta_iface_hidl_test.cpp +5 −25 Original line number Original line Diff line number Diff line Loading @@ -66,42 +66,22 @@ constexpr uint8_t kTestWpsDeviceType[] = {[0 ... 7] = 0x01}; constexpr uint16_t kTestWpsConfigMethods = 0xffff; constexpr uint16_t kTestWpsConfigMethods = 0xffff; } // namespace } // namespace class SupplicantStaIfaceHidlTest class SupplicantStaIfaceHidlTest : public SupplicantHidlTestBaseV1_0 { : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: public: virtual void SetUp() override { virtual void SetUp() override { wifi_instance_name_ = std::get<0>(GetParam()); SupplicantHidlTestBaseV1_0::SetUp(); supplicant_instance_name_ = std::get<1>(GetParam()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); sta_iface_ = getSupplicantStaIface(supplicant_); sta_iface_ = getSupplicantStaIface(supplicant_); ASSERT_NE(sta_iface_.get(), nullptr); ASSERT_NE(sta_iface_.get(), nullptr); memcpy(mac_addr_.data(), kTestMacAddr, mac_addr_.size()); memcpy(mac_addr_.data(), kTestMacAddr, mac_addr_.size()); } } virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: protected: bool isP2pOn_ = false; bool isP2pOn_ = false; sp<ISupplicant> supplicant_; // ISupplicantStaIface object used for all tests in this fixture. // ISupplicantStaIface object used for all tests in this fixture. sp<ISupplicantStaIface> sta_iface_; sp<ISupplicantStaIface> sta_iface_; // MAC address to use for various tests. // MAC address to use for various tests. std::array<uint8_t, 6> mac_addr_; std::array<uint8_t, 6> mac_addr_; std::string wifi_instance_name_; std::string supplicant_instance_name_; }; }; class IfaceCallback : public ISupplicantStaIfaceCallback { class IfaceCallback : public ISupplicantStaIfaceCallback { Loading Loading @@ -183,8 +163,8 @@ class IfaceCallback : public ISupplicantStaIfaceCallback { * successfully created. * successfully created. */ */ TEST_P(SupplicantStaIfaceHidlTest, Create) { TEST_P(SupplicantStaIfaceHidlTest, Create) { stopSupplicant(wifi_instance_name_); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); supplicant_instance_name_); EXPECT_NE(nullptr, getSupplicantStaIface( EXPECT_NE(nullptr, getSupplicantStaIface( getSupplicant(supplicant_instance_name_, isP2pOn_)) getSupplicant(supplicant_instance_name_, isP2pOn_)) Loading
wifi/supplicant/1.0/vts/functional/supplicant_sta_network_hidl_test.cpp +4 −25 Original line number Original line Diff line number Diff line Loading @@ -79,21 +79,10 @@ constexpr uint32_t kTestPairwiseCipher = ISupplicantStaNetwork::PairwiseCipherMask::TKIP); ISupplicantStaNetwork::PairwiseCipherMask::TKIP); } // namespace } // namespace class SupplicantStaNetworkHidlTest class SupplicantStaNetworkHidlTest : public SupplicantHidlTestBaseV1_0 { : public ::testing::TestWithParam<std::tuple<std::string, std::string>> { public: public: virtual void SetUp() override { virtual void SetUp() override { wifi_instance_name_ = std::get<0>(GetParam()); SupplicantHidlTestBaseV1_0::SetUp(); supplicant_instance_name_ = std::get<1>(GetParam()); isP2pOn_ = testing::deviceSupportsFeature("android.hardware.wifi.direct"); // Stop Framework std::system("/system/bin/stop"); stopSupplicant(wifi_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, supplicant_instance_name_); supplicant_ = getSupplicant(supplicant_instance_name_, isP2pOn_); EXPECT_TRUE(turnOnExcessiveLogging(supplicant_)); sta_network_ = createSupplicantStaNetwork(supplicant_); sta_network_ = createSupplicantStaNetwork(supplicant_); ASSERT_NE(sta_network_.get(), nullptr); ASSERT_NE(sta_network_.get(), nullptr); /* variable used to check if the underlying HAL version is 1.3 or /* variable used to check if the underlying HAL version is 1.3 or Loading @@ -105,12 +94,6 @@ class SupplicantStaNetworkHidlTest ssid_.assign(kTestSsidStr, kTestSsidStr + strlen(kTestSsidStr)); ssid_.assign(kTestSsidStr, kTestSsidStr + strlen(kTestSsidStr)); } } virtual void TearDown() override { stopSupplicant(wifi_instance_name_); // Start Framework std::system("/system/bin/start"); } protected: protected: void removeNetwork() { void removeNetwork() { sp<ISupplicantStaIface> sta_iface = getSupplicantStaIface(supplicant_); sp<ISupplicantStaIface> sta_iface = getSupplicantStaIface(supplicant_); Loading @@ -128,14 +111,10 @@ class SupplicantStaNetworkHidlTest sp<::android::hardware::wifi::supplicant::V1_3::ISupplicantStaNetwork> sp<::android::hardware::wifi::supplicant::V1_3::ISupplicantStaNetwork> v1_3 = nullptr; v1_3 = nullptr; bool isP2pOn_ = false; sp<ISupplicant> supplicant_; // ISupplicantStaNetwork object used for all tests in this fixture. // ISupplicantStaNetwork object used for all tests in this fixture. sp<ISupplicantStaNetwork> sta_network_; sp<ISupplicantStaNetwork> sta_network_; // SSID to use for various tests. // SSID to use for various tests. std::vector<uint8_t> ssid_; std::vector<uint8_t> ssid_; std::string wifi_instance_name_; std::string supplicant_instance_name_; }; }; class NetworkCallback : public ISupplicantStaNetworkCallback { class NetworkCallback : public ISupplicantStaNetworkCallback { Loading @@ -158,8 +137,8 @@ class NetworkCallback : public ISupplicantStaNetworkCallback { * successfully created. * successfully created. */ */ TEST_P(SupplicantStaNetworkHidlTest, Create) { TEST_P(SupplicantStaNetworkHidlTest, Create) { stopSupplicant(wifi_instance_name_); stopSupplicant(wifi_v1_0_instance_name_); startSupplicantAndWaitForHidlService(wifi_instance_name_, startSupplicantAndWaitForHidlService(wifi_v1_0_instance_name_, supplicant_instance_name_); supplicant_instance_name_); sp<ISupplicant> supplicant = sp<ISupplicant> supplicant = getSupplicant(supplicant_instance_name_, isP2pOn_); getSupplicant(supplicant_instance_name_, isP2pOn_); Loading