Fill announcement-related gaps in Broadcast Radio APIs.
- adds TA and TP flags to ProgramInfo struct
- adds a callback to cancel announcement
Bug: b/63702941
Test: Instrumentalization, VTS
Change-Id: I03a0781d37429d4a84aab2dce3e5bb7794a20c57
diff --git a/broadcastradio/1.1/vts/functional/VtsHalBroadcastradioV1_1TargetTest.cpp b/broadcastradio/1.1/vts/functional/VtsHalBroadcastradioV1_1TargetTest.cpp
index 3b29c75..6910d95 100644
--- a/broadcastradio/1.1/vts/functional/VtsHalBroadcastradioV1_1TargetTest.cpp
+++ b/broadcastradio/1.1/vts/functional/VtsHalBroadcastradioV1_1TargetTest.cpp
@@ -47,6 +47,7 @@
using testing::AnyNumber;
using testing::ByMove;
using testing::DoAll;
+using testing::Invoke;
using testing::SaveArg;
using broadcastradio::vts::CallBarrier;
@@ -63,8 +64,9 @@
std::cout << "[ SKIPPED ] " << msg << std::endl;
}
-class TunerCallbackMock : public ITunerCallback {
- public:
+struct TunerCallbackMock : public ITunerCallback {
+ TunerCallbackMock() { EXPECT_CALL(*this, hardwareFailure()).Times(0); }
+
MOCK_METHOD0(hardwareFailure, Return<void>());
MOCK_TIMEOUT_METHOD2(configChange, Return<void>(Result, const BandConfig&));
MOCK_METHOD2(tuneComplete, Return<void>(Result, const V1_0::ProgramInfo&));
@@ -106,9 +108,6 @@
void BroadcastRadioHalTest::SetUp() {
radioClass = GetParam();
- // set general expectations for a callback
- EXPECT_CALL(*mCallback, hardwareFailure()).Times(0);
-
// lookup HIDL service
auto factory = getService<IBroadcastRadioFactory>();
ASSERT_NE(nullptr, factory.get());
@@ -287,6 +286,14 @@
EXPECT_EQ(firstProgram.selector.primaryId, selCb.primaryId);
}
+TEST_P(BroadcastRadioHalTest, CancelAnnouncement) {
+ if (skipped) return;
+ ASSERT_TRUE(openTuner(0));
+
+ auto hidlResult = mTuner->cancelAnnouncement();
+ EXPECT_EQ(Result::OK, hidlResult);
+}
+
INSTANTIATE_TEST_CASE_P(BroadcastRadioHalTestCases, BroadcastRadioHalTest,
::testing::Values(Class::AM_FM, Class::SAT, Class::DT));