wifi: Call terminate in VTS teardown
When OEM register different hostapd instance without update the StopHostapd. It will cause VTS clean fail because hostapd process name is the new one. Call terminate to request clean HAL state. Bug: 161682236 Bug: 167636313 Test: atest -c VtsHalWifiHostapdV1_2TargetTest Test: atest -c VtsHalWifiHostapdV1_1TargetTest Test: atest -c VtsHalWifiHostapdV1_0TargetTest Change-Id: If56e5b5351abd31865150bdf97d27674dbbc4257
This commit is contained in:
parent
2c94e43016
commit
6f326efb0a
4 changed files with 26 additions and 3 deletions
|
@ -95,6 +95,14 @@ typename functionArgSaver<CallbackT>::StorageT invokeMethod(
|
|||
EXPECT_TRUE(res.isOk());
|
||||
return result_buffer.saved_values;
|
||||
}
|
||||
|
||||
// Invokes |void method| on |object| without arguments.
|
||||
template <typename MethodT, typename ObjectT>
|
||||
void invokeVoidMethodWithoutArguments(MethodT method, ObjectT object) {
|
||||
const auto& res = ((*object).*method)();
|
||||
EXPECT_TRUE(res.isOk());
|
||||
}
|
||||
|
||||
} // namespace detail
|
||||
} // namespace
|
||||
|
||||
|
@ -123,3 +131,9 @@ typename functionArgSaver<CallbackT>::StorageT invokeMethod(
|
|||
std::remove_reference<decltype(*strong_pointer)>::type::method##_cb>( \
|
||||
&std::remove_reference<decltype(*strong_pointer)>::type::method, \
|
||||
strong_pointer, ##__VA_ARGS__))
|
||||
|
||||
// Invokes |void method| on |strong_pointer| without arguments.
|
||||
#define HIDL_INVOKE_VOID_WITHOUT_ARGUMENTS(strong_pointer, method) \
|
||||
(detail::invokeVoidMethodWithoutArguments( \
|
||||
&std::remove_reference<decltype(*strong_pointer)>::type::method, \
|
||||
strong_pointer))
|
||||
|
|
|
@ -55,7 +55,10 @@ class HostapdHidlTest
|
|||
ASSERT_NE(hostapd_.get(), nullptr);
|
||||
}
|
||||
|
||||
virtual void TearDown() override { stopHostapd(wifi_instance_name_); }
|
||||
virtual void TearDown() override {
|
||||
HIDL_INVOKE_VOID_WITHOUT_ARGUMENTS(hostapd_, terminate);
|
||||
stopHostapd(wifi_instance_name_);
|
||||
}
|
||||
|
||||
protected:
|
||||
std::string getPrimaryWlanIfaceName() {
|
||||
|
|
|
@ -58,7 +58,10 @@ class HostapdHidlTest
|
|||
ASSERT_NE(hostapd_.get(), nullptr);
|
||||
}
|
||||
|
||||
virtual void TearDown() override { stopHostapd(wifi_instance_name_); }
|
||||
virtual void TearDown() override {
|
||||
HIDL_INVOKE_VOID_WITHOUT_ARGUMENTS(hostapd_, terminate);
|
||||
stopHostapd(wifi_instance_name_);
|
||||
}
|
||||
|
||||
protected:
|
||||
std::string getPrimaryWlanIfaceName() {
|
||||
|
|
|
@ -72,7 +72,10 @@ class HostapdHidlTest
|
|||
"wifi_softap_wpa3_sae_supported");
|
||||
}
|
||||
|
||||
virtual void TearDown() override { stopHostapd(wifi_instance_name_); }
|
||||
virtual void TearDown() override {
|
||||
HIDL_INVOKE_VOID_WITHOUT_ARGUMENTS(hostapd_, terminate);
|
||||
stopHostapd(wifi_instance_name_);
|
||||
}
|
||||
|
||||
protected:
|
||||
bool isWpa3SaeSupport_ = false;
|
||||
|
|
Loading…
Reference in a new issue