From cfab8dac2b83a3bb50f0ac7cb5a34690c818b0ef Mon Sep 17 00:00:00 2001 From: Kevin Rocard Date: Thu, 28 Jun 2018 17:34:11 -0700 Subject: [PATCH] Audio VTS: run tear-down hooks in LIFO instead of FIFO The audio tests use a static cache of some HAL objects for performance reasons (speed up by 10x on Pixel). Those object are destroy during the test environment tear-down. This tear-down was destroying the objects in a FIFO instead of LIFO order. Thus the DeficesFactory was destroyed before the Device it created. Bug: 79889318 Test: vts-tradefed run commandAndExit vts --module VtsHalAudioV2_0Target check that the device destructor is called before the devicesFactory one. Change-Id: I1b4345158139ba14a8779a9508f7ebdc41129d1d Signed-off-by: Kevin Rocard --- audio/common/test/utility/include/utility/EnvironmentTearDown.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/audio/common/test/utility/include/utility/EnvironmentTearDown.h b/audio/common/test/utility/include/utility/EnvironmentTearDown.h index 15b0bd81fc..e99dc237ef 100644 --- a/audio/common/test/utility/include/utility/EnvironmentTearDown.h +++ b/audio/common/test/utility/include/utility/EnvironmentTearDown.h @@ -36,7 +36,7 @@ namespace utility { class Environment : public ::testing::Environment { public: using TearDownFunc = std::function; - void registerTearDown(TearDownFunc&& tearDown) { tearDowns.push_back(std::move(tearDown)); } + void registerTearDown(TearDownFunc&& tearDown) { tearDowns.push_front(std::move(tearDown)); } private: void TearDown() override {