Bypass Thread HAL SendSpinelFrame test on TV devices am: 1dc8481bc7

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2928074

Change-Id: I91eeb959a3138540ccf64733c50bd2acb8689016
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Zhanglong Xia
2024-01-30 03:05:52 +00:00
committed by Automerger Merge Worker

View File

@@ -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());