From d994467f38fbfb38e48d6c2d588d96f442ae9c34 Mon Sep 17 00:00:00 2001 From: Shunkai Yao Date: Fri, 20 Sep 2024 21:45:38 +0000 Subject: [PATCH] [RESTRICT AUTOMERGE] HapticGenerator VTS: validate parameter before setting the newer version of HapticGenerator have range defined Bug: 368467232 Test: atest VtsHalHapticGeneratorTargetTest Change-Id: I1e366caf7d3944bc371d3b646733ed873aa111c8 Merged-In: I9da0f6f2573722089efadb78ff96fc265bdad164 --- .../vts/VtsHalHapticGeneratorTargetTest.cpp | 26 ++++++++++++------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/audio/aidl/vts/VtsHalHapticGeneratorTargetTest.cpp b/audio/aidl/vts/VtsHalHapticGeneratorTargetTest.cpp index 6af326d01b..2b6dc3d412 100644 --- a/audio/aidl/vts/VtsHalHapticGeneratorTargetTest.cpp +++ b/audio/aidl/vts/VtsHalHapticGeneratorTargetTest.cpp @@ -121,17 +121,23 @@ class HapticGeneratorParamTest : public ::testing::TestWithParam(setHg); expectParam.set(specific); - EXPECT_STATUS(EX_NONE, mEffect->setParameter(expectParam)) << expectParam.toString(); - // get parameter - Parameter getParam; - Parameter::Id id; - HapticGenerator::Id hgId; - hgId.set(tag); - id.set(hgId); - EXPECT_STATUS(EX_NONE, mEffect->getParameter(id, &getParam)); - EXPECT_EQ(expectParam, getParam) << expectParam.toString() << "\n" - << getParam.toString(); + const bool valid = + isParameterValid(setHg, mDescriptor); + const binder_exception_t expected = valid ? EX_NONE : EX_ILLEGAL_ARGUMENT; + EXPECT_STATUS(expected, mEffect->setParameter(expectParam)) << expectParam.toString(); + + // only get if parameter in range and set success + if (expected == EX_NONE) { + Parameter getParam; + Parameter::Id id; + HapticGenerator::Id hgId; + hgId.set(tag); + id.set(hgId); + EXPECT_STATUS(EX_NONE, mEffect->getParameter(id, &getParam)); + EXPECT_EQ(expectParam, getParam) << expectParam.toString() << "\n" + << getParam.toString(); + } } }