OSDN Git Service

Audio VTS: remove expectation of policy configuration unicity
authorKevin Rocard <krocard@google.com>
Fri, 8 Sep 2017 18:29:32 +0000 (11:29 -0700)
committerKevin Rocard <krocard@google.com>
Fri, 8 Sep 2017 18:29:32 +0000 (11:29 -0700)
The XML audio policy configuration is expected to be located in /vendor.
Additionally for AOSP builds (no vendor) and as a fallback in case of
missing vendor configuration, the system supports loading the XML from
/system.
This fallback config is not guaranty to be compatible with the phone HAL,
but probably does for a wide range of android phones
(at least for basic use cases).

In each of those cases, there is only one configuration file, either in
/vendor or /system.
As a result, the audio policy configuration VTS test was asserting that
only one audio_policy_configuration.xml could be found.
If multiple were found, one was useless and the platform integrator
should remove it.

But VTS are now run on phone with a /system partition from an AOSP
build and a /vendor partition from a device build.
In such scenario two audio policy config are now present on the device,
thus breaking the VTS expectation.

This is not a problem for the framework because it does not look for a /system
config if one was found in /vendor.

In the future, the /system XML might be removed as boards
specific config should be found in /vendor only as per treble
requirements.

Test: Compile
Bug: 65482614
Change-Id: I7cd7eb7284c0aa52782aa591411f8a9bf2a87a76
Signed-off-by: Kevin Rocard <krocard@google.com>
audio/2.0/vts/functional/ValidateAudioConfiguration.cpp

index 5fc1b3d..ee49023 100644 (file)
@@ -24,13 +24,9 @@ TEST(CheckConfig, audioPolicyConfigurationValidation) {
     const char* possibleConfigLocations[] = {"/odm/etc", "/vendor/etc", "/system/etc"};
     const char* configSchemaPath = "/data/local/tmp/audio_policy_configuration.xsd";
 
-    bool found = false;
     for (std::string folder : possibleConfigLocations) {
         const auto configPath = folder + '/' + configName;
         if (access(configPath.c_str(), R_OK) == 0) {
-            ASSERT_FALSE(found) << "Multiple " << configName << " found in "
-                                << ::testing::PrintToString(possibleConfigLocations);
-            found = true;
             ASSERT_VALID_XML(configPath.c_str(), configSchemaPath);
         }
     }