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