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(); + } } }