Skip DynamicsProcessing postEqBand and data test for HAL versions < 3

Post EQ band and most data testing introduced in Android16

Flag: TEST_ONLY
Bug: 401131454
Bug: 405022808
Test: atest --test-mapping hardware/interfaces/audio/aidl/vts:presubmit
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a9dba9cf968e461203b83d53c3739304dd4a4fb2)
Merged-In: I01dcabc648b743c8bb008dc0207f135fc5aec45c
Change-Id: I01dcabc648b743c8bb008dc0207f135fc5aec45c
diff --git a/audio/aidl/vts/VtsHalDynamicsProcessingTest.cpp b/audio/aidl/vts/VtsHalDynamicsProcessingTest.cpp
index 98f7d79..8f98959 100644
--- a/audio/aidl/vts/VtsHalDynamicsProcessingTest.cpp
+++ b/audio/aidl/vts/VtsHalDynamicsProcessingTest.cpp
@@ -127,6 +127,7 @@
     void checkInputAndOutputEquality(const std::vector<float>& outputMag);
 
     void setUpDataTest(const std::vector<int>& testFrequencies, float fullScaleSineDb);
+    void tearDownDataTest();
 
     void createChannelConfig();
 
@@ -141,8 +142,6 @@
     void addLimiterConfig(const std::vector<DynamicsProcessing::LimiterConfig>& cfg);
     void addInputGain(const std::vector<DynamicsProcessing::InputGain>& inputGain);
 
-    void checkHalVersion();
-
     static constexpr float kPreferredProcessingDurationMs = 10.0f;
     static constexpr int kBandCount = 5;
     static constexpr int kSamplingFrequency = 44100;
@@ -465,6 +464,8 @@
                                                  float fullScaleSineDb) {
     ASSERT_NO_FATAL_FAILURE(SetUpDynamicsProcessingEffect());
     SKIP_TEST_IF_DATA_UNSUPPORTED(mDescriptor.common.flags);
+    SKIP_TEST_IF_VERSION_UNSUPPORTED(mEffect, kMinDataTestHalVersion);
+
     mInput.resize(kFrameCount * mChannelCount);
     ASSERT_NO_FATAL_FAILURE(
             generateSineWave(testFrequencies, mInput, 1.0, kSamplingFrequency, mChannelLayout));
@@ -472,6 +473,10 @@
     ASSERT_NEAR(mInputDb, fullScaleSineDb, kToleranceDb);
 }
 
+void DynamicsProcessingTestHelper::tearDownDataTest() {
+    ASSERT_NO_FATAL_FAILURE(TearDownDynamicsProcessingEffect());
+}
+
 void DynamicsProcessingTestHelper::createChannelConfig() {
     for (int i = 0; i < mChannelCount; i++) {
         mChannelConfig.push_back(DynamicsProcessing::ChannelConfig(i, true));
@@ -553,13 +558,6 @@
     mTags.push_back({DynamicsProcessing::inputGain, dp});
 }
 
-void DynamicsProcessingTestHelper::checkHalVersion() {
-    if (int32_t version;
-        mEffect->getInterfaceVersion(&version).isOk() && version < kMinDataTestHalVersion) {
-        GTEST_SKIP() << "Skipping the data test for version: " << version << "\n";
-    }
-}
-
 void fillLimiterConfig(std::vector<DynamicsProcessing::LimiterConfig>& limiterConfigList,
                        int channelIndex, bool enable, int linkGroup, float attackTime,
                        float releaseTime, float ratio, float threshold, float postGain) {
@@ -729,7 +727,7 @@
         ASSERT_NO_FATAL_FAILURE(setUpDataTest({kInputFrequency}, kSineFullScaleDb));
     }
 
-    void TearDown() override { TearDownDynamicsProcessingEffect(); }
+    void TearDown() override { ASSERT_NO_FATAL_FAILURE(tearDownDataTest()); }
 
     void cleanUpInputGainConfig() {
         CleanUp();
@@ -857,7 +855,7 @@
         ASSERT_NO_FATAL_FAILURE(setUpDataTest({kInputFrequency}, kSineFullScaleDb));
     }
 
-    void TearDown() override { TearDownDynamicsProcessingEffect(); }
+    void TearDown() override { ASSERT_NO_FATAL_FAILURE(tearDownDataTest()); }
 
     void computeThreshold(float ratio, float outputDb, float& threshold) {
         EXPECT_NE(ratio, 0);
@@ -1233,6 +1231,8 @@
 }
 
 TEST_P(DynamicsProcessingTestEqBandConfig, SetAndGetPostEqBandConfig) {
+    SKIP_TEST_IF_VERSION_UNSUPPORTED(mEffect, kMinDataTestHalVersion);
+
     mEngineConfigPreset.postEqStage.bandCount = mCfgs.size();
     addEngineConfig(mEngineConfigPreset);
     std::vector<DynamicsProcessing::ChannelConfig> cfgs(mChannelCount);
@@ -1330,7 +1330,7 @@
                 setUpDataTest(mMultitoneTestFrequencies, kSineMultitoneFullScaleDb));
     }
 
-    void TearDown() override { TearDownDynamicsProcessingEffect(); }
+    void TearDown() override { ASSERT_NO_FATAL_FAILURE(tearDownDataTest()); }
 
     void addEqParam(bool isPreEq) {
         createChannelConfig();
@@ -1558,7 +1558,7 @@
                 setUpDataTest(mMultitoneTestFrequencies, kSineMultitoneFullScaleDb));
     }
 
-    void TearDown() override { TearDownDynamicsProcessingEffect(); }
+    void TearDown() override { ASSERT_NO_FATAL_FAILURE(tearDownDataTest()); }
 
     void setMbcParamsAndProcess(std::vector<float>& output) {
         createChannelConfig();