Bypass Thread HAL SendSpinelFrame test on TV devices
The Thread HAL VTS test is built from the staging folder on the android14-tests-dev branch. And the HAL interface doesn't have @VintfStability which means it is unstable interface. Thread HAL interface has been removed from the staging folder and added the @VintfStability on main branch. It reports following errors when runing the VTS that froms android14-tests-dev branch on main branch. `BpBinder: Cannot do a user transaction on a system stability binder in a vendor stability context` This CL bypasses the `SendSpinelFrame` test case of the Thread VTS tests on TV devices. Bug: b/322731574 Test: Run `run vts -m VtsHalThreadNetworkTargetTest` on the TV device Change-Id: Ibf7fe96aafa58cee7ae55a0ef613f0be67548a80
This commit is contained in:
parent
aeaabf3c1f
commit
1dc8481bc7
1 changed files with 27 additions and 0 deletions
|
@ -67,10 +67,33 @@ class ThreadNetworkAidl : public testing::TestWithParam<std::string> {
|
|||
}
|
||||
|
||||
virtual void TearDown() override { thread_chip->close(); }
|
||||
bool DeviceSupportsFeature(const char* feature);
|
||||
|
||||
static constexpr char kTvFeatureName[] = "android.software.leanback";
|
||||
std::shared_ptr<IThreadChip> thread_chip;
|
||||
};
|
||||
|
||||
bool ThreadNetworkAidl::DeviceSupportsFeature(const char* feature) {
|
||||
bool device_supports_feature = false;
|
||||
FILE* p = popen("pm list features", "re");
|
||||
char* line = nullptr;
|
||||
size_t len = 0;
|
||||
|
||||
if (!p) {
|
||||
return false;
|
||||
}
|
||||
|
||||
while (getline(&line, &len, p) > 0) {
|
||||
if (strstr(line, feature)) {
|
||||
device_supports_feature = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
pclose(p);
|
||||
|
||||
return device_supports_feature;
|
||||
}
|
||||
|
||||
TEST_P(ThreadNetworkAidl, Open) {
|
||||
std::shared_ptr<ThreadChipCallback> callback =
|
||||
ndk::SharedRefBase::make<ThreadChipCallback>([](auto /* data */) {});
|
||||
|
@ -122,6 +145,10 @@ TEST_P(ThreadNetworkAidl, SendSpinelFrame) {
|
|||
}
|
||||
});
|
||||
|
||||
if (DeviceSupportsFeature(kTvFeatureName)) {
|
||||
GTEST_SKIP() << "SendSpinelFrame test is bypassed on TV devices";
|
||||
}
|
||||
|
||||
ASSERT_NE(callback, nullptr);
|
||||
|
||||
EXPECT_TRUE(thread_chip->open(callback).isOk());
|
||||
|
|
Loading…
Reference in a new issue