ACM test are modified to run with both ACM1 and ACM2.
Beside the changes in test files. acm2/acm_generic_codec.cc and acm2/audio_coding_module_impl.cc are modified to fix a bug.
Also, nack{.cc, .h, _unittest.cc} are removed form main/sourc as nack files in both ACM1 and ACM2 are essentially identical.
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2192005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4908 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/modules/audio_coding/main/test/Tester.cc b/webrtc/modules/audio_coding/main/test/Tester.cc
index 72284ff..31f7317 100644
--- a/webrtc/modules/audio_coding/main/test/Tester.cc
+++ b/webrtc/modules/audio_coding/main/test/Tester.cc
@@ -13,6 +13,7 @@
#include <vector>
#include "testing/gtest/include/gtest/gtest.h"
+#include "webrtc/common.h"
#include "webrtc/modules/audio_coding/main/interface/audio_coding_module.h"
#include "webrtc/modules/audio_coding/main/test/APITest.h"
#include "webrtc/modules/audio_coding/main/test/EncodeDecodeTest.h"
@@ -23,11 +24,11 @@
#include "webrtc/modules/audio_coding/main/test/TestStereo.h"
#include "webrtc/modules/audio_coding/main/test/TestVADDTX.h"
#include "webrtc/modules/audio_coding/main/test/TwoWayCommunication.h"
+#include "webrtc/modules/audio_coding/main/test/utility.h"
#include "webrtc/system_wrappers/interface/trace.h"
#include "webrtc/test/testsupport/fileutils.h"
#include "webrtc/test/testsupport/gtest_disable.h"
-using webrtc::AudioCodingModule;
using webrtc::Trace;
// This parameter is used to describe how to run the tests. It is normally
@@ -38,7 +39,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_allcodecs_trace.txt").c_str());
- webrtc::TestAllCodecs(ACM_TEST_MODE).Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::TestAllCodecs(ACM_TEST_MODE, config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::TestAllCodecs(ACM_TEST_MODE, config).Perform();
+
Trace::ReturnTrace();
}
@@ -46,7 +54,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_encodedecode_trace.txt").c_str());
- webrtc::EncodeDecodeTest(ACM_TEST_MODE).Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::EncodeDecodeTest(ACM_TEST_MODE, config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::EncodeDecodeTest(ACM_TEST_MODE, config).Perform();
+
Trace::ReturnTrace();
}
@@ -54,7 +69,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_fec_trace.txt").c_str());
- webrtc::TestFEC().Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::TestFEC(config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::TestFEC(config).Perform();
+
Trace::ReturnTrace();
}
@@ -62,7 +84,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_isac_trace.txt").c_str());
- webrtc::ISACTest(ACM_TEST_MODE).Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::ISACTest(ACM_TEST_MODE, config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::ISACTest(ACM_TEST_MODE, config).Perform();
+
Trace::ReturnTrace();
}
@@ -70,7 +99,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_twowaycom_trace.txt").c_str());
- webrtc::TwoWayCommunication(ACM_TEST_MODE).Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::TwoWayCommunication(ACM_TEST_MODE, config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::TwoWayCommunication(ACM_TEST_MODE, config).Perform();
+
Trace::ReturnTrace();
}
@@ -78,7 +114,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_stereo_trace.txt").c_str());
- webrtc::TestStereo(ACM_TEST_MODE).Perform();
+
+ webrtc::Config config;
+ UseLegacyAcm(&config);
+
+ webrtc::TestStereo(ACM_TEST_MODE, config).Perform();
+ UseNewAcm(&config);
+
+ webrtc::TestStereo(ACM_TEST_MODE, config).Perform();
Trace::ReturnTrace();
}
@@ -86,7 +129,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_vaddtx_trace.txt").c_str());
- webrtc::TestVADDTX().Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::TestVADDTX(config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::TestVADDTX(config).Perform();
+
Trace::ReturnTrace();
}
@@ -94,7 +144,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_opus_trace.txt").c_str());
- webrtc::OpusTest().Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::OpusTest(config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::OpusTest(config).Perform();
+
Trace::ReturnTrace();
}
@@ -105,7 +162,14 @@
Trace::CreateTrace();
Trace::SetTraceFile((webrtc::test::OutputPath() +
"acm_apitest_trace.txt").c_str());
- webrtc::APITest().Perform();
+ webrtc::Config config;
+
+ UseLegacyAcm(&config);
+ webrtc::APITest(config).Perform();
+
+ UseNewAcm(&config);
+ webrtc::APITest(config).Perform();
+
Trace::ReturnTrace();
}
#endif