Add API to filter out unnecessary PIDs from frontend output.
Bug: 213287138
Test: atest VtsHalTvTunerTargetTest
Change-Id: I075d68d722b2804f54d57a1ac9c350e2a9724ae3
diff --git a/tv/tuner/aidl/vts/functional/FrontendTests.cpp b/tv/tuner/aidl/vts/functional/FrontendTests.cpp
index 41e98ea..a9feeab 100644
--- a/tv/tuner/aidl/vts/functional/FrontendTests.cpp
+++ b/tv/tuner/aidl/vts/functional/FrontendTests.cpp
@@ -298,6 +298,13 @@
return AssertionResult(status.isOk());
}
+AssertionResult FrontendTests::removeOutputPid(int32_t removePid) {
+ ndk::ScopedAStatus status;
+ status = mFrontend->removeOutputPid(removePid);
+ return AssertionResult(status.isOk() || status.getServiceSpecificError() ==
+ static_cast<int32_t>(Result::UNAVAILABLE));
+}
+
AssertionResult FrontendTests::unlinkCiCam(int32_t ciCamId) {
ndk::ScopedAStatus status = mFrontend->unlinkCiCam(ciCamId);
return AssertionResult(status.isOk());
@@ -501,6 +508,7 @@
ASSERT_TRUE(setFrontendCallback());
if (frontendConf.canConnectToCiCam) {
ASSERT_TRUE(linkCiCam(frontendConf.ciCamId));
+ ASSERT_TRUE(removeOutputPid(frontendConf.removePid));
ASSERT_TRUE(unlinkCiCam(frontendConf.ciCamId));
}
ASSERT_TRUE(tuneFrontend(frontendConf, false /*testWithDemux*/));
diff --git a/tv/tuner/aidl/vts/functional/FrontendTests.h b/tv/tuner/aidl/vts/functional/FrontendTests.h
index 1745f76..537c419 100644
--- a/tv/tuner/aidl/vts/functional/FrontendTests.h
+++ b/tv/tuner/aidl/vts/functional/FrontendTests.h
@@ -95,6 +95,7 @@
AssertionResult linkCiCam(int32_t ciCamId);
AssertionResult unlinkCiCam(int32_t ciCamId);
AssertionResult verifyHardwareInfo();
+ AssertionResult removeOutputPid(int32_t removePid);
void getFrontendIdByType(FrontendType feType, int32_t& feId);
void tuneTest(FrontendConfig frontendConf);