From b9743d4728f46109cc7b7112f22cad33fc437bb4 Mon Sep 17 00:00:00 2001 From: Mikhail Naganov Date: Tue, 21 Jul 2020 10:57:03 -0700 Subject: [PATCH] Audio VTS: Suppress empty parameter list failures GTest has introduced a check verifying that the parameter list for TEST_P tests isn't empty. Having an empty parameter list isn't actually a problem when the VTS test runs on a device that lacks the corresponding HAL version. Bug: 161758075 Test: atest VtsHalAudioV4_0TargetTest Test: atest VtsHalAudioV5_0TargetTest Test: atest VtsHalAudioV6_0TargetTest Test: atest VtsHalAudioEffectV4_0TargetTest Test: atest VtsHalAudioEffectV5_0TargetTest Test: atest VtsHalAudioEffectV6_0TargetTest Change-Id: Ib2a017b74f69b1608d8985f403e9b2a8e54b8311 --- .../vts/functional/AudioPrimaryHidlHalTest.h | 35 +++++++++++++++++++ .../VtsHalAudioEffectTargetTest.cpp | 6 ++++ 2 files changed, 41 insertions(+) diff --git a/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h b/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h index af6e9e8177..8e6be89045 100644 --- a/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h +++ b/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h @@ -329,6 +329,9 @@ TEST_P(AudioPolicyConfigTest, HasPrimaryModule) { INSTANTIATE_TEST_CASE_P(AudioHidl, AudioPolicyConfigTest, ::testing::ValuesIn(getDeviceParametersForFactoryTests()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioPolicyConfigTest); ////////////////////////////////////////////////////////////////////////////// ////////////////////// getService audio_devices_factory ////////////////////// @@ -364,6 +367,9 @@ TEST_P(AudioHidlTest, OpenDeviceInvalidParameter) { INSTANTIATE_TEST_CASE_P(AudioHidl, AudioHidlTest, ::testing::ValuesIn(getDeviceParametersForFactoryTests()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioHidlTest); ////////////////////////////////////////////////////////////////////////////// /////////////////////////////// openDevice /////////////////////////////////// @@ -389,6 +395,9 @@ TEST_P(AudioHidlDeviceTest, Init) { INSTANTIATE_TEST_CASE_P(AudioHidlDevice, AudioHidlDeviceTest, ::testing::ValuesIn(getDeviceParameters()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioHidlDeviceTest); ////////////////////////////////////////////////////////////////////////////// /////////////////////////////// openDevice primary /////////////////////////// @@ -415,6 +424,9 @@ TEST_P(AudioPrimaryHidlTest, OpenPrimaryDevice) { INSTANTIATE_TEST_CASE_P(AudioPrimaryHidl, AudioPrimaryHidlTest, ::testing::ValuesIn(getDeviceParametersForPrimaryDeviceTests()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioPrimaryHidlTest); ////////////////////////////////////////////////////////////////////////////// ///////////////////// {set,get}{Master,Mic}{Mute,Volume} ///////////////////// @@ -503,6 +515,10 @@ INSTANTIATE_TEST_CASE_P(BoolAccessorHidl, BoolAccessorHidlTest, INSTANTIATE_TEST_CASE_P(BoolAccessorPrimaryHidl, BoolAccessorPrimaryHidlTest, ::testing::ValuesIn(getDeviceParametersForPrimaryDeviceTests()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(BoolAccessorHidlTest); +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(BoolAccessorPrimaryHidlTest); using FloatAccessorHidlTest = AccessorHidlTest; TEST_P(FloatAccessorHidlTest, MasterVolumeTest) { @@ -515,6 +531,9 @@ TEST_P(FloatAccessorHidlTest, MasterVolumeTest) { INSTANTIATE_TEST_CASE_P(FloatAccessorHidl, FloatAccessorHidlTest, ::testing::ValuesIn(getDeviceParameters()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(FloatAccessorHidlTest); ////////////////////////////////////////////////////////////////////////////// //////////////////////////////// AudioPatches //////////////////////////////// @@ -537,6 +556,9 @@ TEST_P(AudioPatchHidlTest, AudioPatches) { INSTANTIATE_TEST_CASE_P(AudioPatchHidl, AudioPatchHidlTest, ::testing::ValuesIn(getDeviceParameters()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioPatchHidlTest); // Nesting a tuple in another tuple allows to use GTest Combine function to generate // all combinations of devices and configs. @@ -707,11 +729,15 @@ INSTANTIATE_TEST_CASE_P( ::testing::ValuesIn(ConfigHelper::getRecommendedSupportCaptureAudioConfig()), ::testing::Values(AudioInputFlag::NONE)), &DeviceConfigParameterToString); +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(OptionalInputBufferSizeTest); #elif MAJOR_VERSION >= 6 INSTANTIATE_TEST_CASE_P(SupportedInputBufferSize, RequiredInputBufferSizeTest, ::testing::ValuesIn(getInputDeviceConfigParameters()), &DeviceConfigParameterToString); #endif +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(RequiredInputBufferSizeTest); ////////////////////////////////////////////////////////////////////////////// /////////////////////////////// setScreenState /////////////////////////////// @@ -945,6 +971,9 @@ INSTANTIATE_TEST_CASE_P(DeclaredOutputStreamConfigSupport, OutputStreamTest, ::testing::ValuesIn(getOutputDeviceConfigParameters()), &DeviceConfigParameterToString); #endif +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(OutputStreamTest); ////////////////////////////// openInputStream ////////////////////////////// @@ -1000,6 +1029,9 @@ INSTANTIATE_TEST_CASE_P(DeclaredInputStreamConfigSupport, InputStreamTest, ::testing::ValuesIn(getInputDeviceConfigParameters()), &DeviceConfigParameterToString); #endif +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(InputStreamTest); ////////////////////////////////////////////////////////////////////////////// ////////////////////////////// IStream getters /////////////////////////////// @@ -1538,6 +1570,9 @@ TEST_P(TtyModeAccessorPrimaryHidlTest, setGetTtyMode) { INSTANTIATE_TEST_CASE_P(TtyModeAccessorPrimaryHidl, TtyModeAccessorPrimaryHidlTest, ::testing::ValuesIn(getDeviceParametersForPrimaryDeviceTests()), &DeviceParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(TtyModeAccessorPrimaryHidlTest); TEST_P(BoolAccessorPrimaryHidlTest, setGetHac) { doc::test("Query and set the HAC state"); diff --git a/audio/effect/all-versions/vts/functional/VtsHalAudioEffectTargetTest.cpp b/audio/effect/all-versions/vts/functional/VtsHalAudioEffectTargetTest.cpp index 070242fc9d..4787c091b2 100644 --- a/audio/effect/all-versions/vts/functional/VtsHalAudioEffectTargetTest.cpp +++ b/audio/effect/all-versions/vts/functional/VtsHalAudioEffectTargetTest.cpp @@ -845,3 +845,9 @@ INSTANTIATE_TEST_SUITE_P( IEffectsFactory::descriptor)), ::testing::Values(LOUDNESS_ENHANCER_EFFECT_TYPE)), EffectParameterToString); +// When the VTS test runs on a device lacking the corresponding HAL version the parameter +// list is empty, this isn't a problem. +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioEffectsFactoryHidlTest); +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(AudioEffectHidlTest); +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(EqualizerAudioEffectHidlTest); +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(LoudnessEnhancerAudioEffectHidlTest);