From c86e45d7c4846b9f26e4d92ac7a2f7518c840ea4 Mon Sep 17 00:00:00 2001 From: "pbos@webrtc.org" Date: Wed, 1 Oct 2014 10:05:40 +0000 Subject: [PATCH] Fix parallelizability in modules_tests. R=henrik.lundin@webrtc.org BUG=3873 TEST=third_party/gtest-parallel/gtest-parallel -r 10 -w 64 out/Debug/modules_tests Review URL: https://webrtc-codereview.appspot.com/24799004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7354 4adac7df-926f-26a2-2b94-8c16560cd09d --- .../audio_coding/main/test/EncodeDecodeTest.cc | 14 +++++++++----- .../audio_coding/main/test/EncodeDecodeTest.h | 5 ++++- .../audio_coding/main/test/PacketLossTest.cc | 3 ++- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.cc b/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.cc index 3253bbd4e0..66fd220ba5 100644 --- a/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.cc +++ b/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.cc @@ -307,10 +307,9 @@ void EncodeDecodeTest::Perform() { // Only encode using real mono encoders, not telephone-event and cng. for (int loopPars = 1; loopPars <= numPars[codeId]; loopPars++) { // Encode all data to file. - EncodeToFile(1, codeId, codePars, _testMode); + std::string fileName = EncodeToFile(1, codeId, codePars, _testMode); RTPFile rtpFile; - std::string fileName = webrtc::test::OutputPath() + "outFile.rtp"; rtpFile.Open(fileName.c_str(), "rb"); _receiver.codeId = codeId; @@ -329,11 +328,14 @@ void EncodeDecodeTest::Perform() { } } -void EncodeDecodeTest::EncodeToFile(int fileType, int codeId, int* codePars, - int testMode) { +std::string EncodeDecodeTest::EncodeToFile(int fileType, + int codeId, + int* codePars, + int testMode) { scoped_ptr acm(AudioCodingModule::Create(1)); RTPFile rtpFile; - std::string fileName = webrtc::test::OutputPath() + "outFile.rtp"; + std::string fileName = webrtc::test::TempFilename(webrtc::test::OutputPath(), + "encode_decode_rtp"); rtpFile.Open(fileName.c_str(), "wb+"); rtpFile.WriteHeader(); @@ -348,6 +350,8 @@ void EncodeDecodeTest::EncodeToFile(int fileType, int codeId, int* codePars, } _sender.Teardown(); rtpFile.Close(); + + return fileName; } } // namespace webrtc diff --git a/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h b/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h index 693c96e013..f6b55538fe 100644 --- a/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h +++ b/webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h @@ -107,7 +107,10 @@ class EncodeDecodeTest : public ACMTest { uint8_t _testMode; private: - void EncodeToFile(int fileType, int codeId, int* codePars, int testMode); + std::string EncodeToFile(int fileType, + int codeId, + int* codePars, + int testMode); protected: Sender _sender; diff --git a/webrtc/modules/audio_coding/main/test/PacketLossTest.cc b/webrtc/modules/audio_coding/main/test/PacketLossTest.cc index e6ef39277d..9fec4861d0 100644 --- a/webrtc/modules/audio_coding/main/test/PacketLossTest.cc +++ b/webrtc/modules/audio_coding/main/test/PacketLossTest.cc @@ -131,7 +131,8 @@ void PacketLossTest::Perform() { int codec_id = acm->Codec("opus", 48000, channels_); RTPFile rtpFile; - std::string fileName = webrtc::test::OutputPath() + "outFile.rtp"; + std::string fileName = webrtc::test::TempFilename(webrtc::test::OutputPath(), + "packet_loss_test"); // Encode to file rtpFile.Open(fileName.c_str(), "wb+");