2013-02-27 21:03:41 +00:00
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
|
|
|
|
|
*
|
|
|
|
|
* Use of this source code is governed by a BSD-style license
|
|
|
|
|
* that can be found in the LICENSE file in the root of the source
|
|
|
|
|
* tree. An additional intellectual property rights grant can be found
|
|
|
|
|
* in the file PATENTS. All contributing project authors may
|
|
|
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
// TODO(bjornv): Make this a comprehensive test.
|
|
|
|
|
|
2015-11-11 20:16:11 +01:00
|
|
|
#include "webrtc/modules/audio_processing/aec/echo_cancellation.h"
|
2013-02-27 21:03:41 +00:00
|
|
|
|
2013-08-05 16:22:53 +00:00
|
|
|
#include <stdlib.h>
|
|
|
|
|
#include <time.h>
|
2013-02-27 21:03:41 +00:00
|
|
|
|
2016-09-30 22:29:43 -07:00
|
|
|
#include "webrtc/base/checks.h"
|
2013-02-27 21:03:41 +00:00
|
|
|
#include "webrtc/modules/audio_processing/aec/aec_core.h"
|
2016-09-28 17:42:01 -07:00
|
|
|
#include "webrtc/test/gtest.h"
|
2013-02-27 21:03:41 +00:00
|
|
|
|
|
|
|
|
namespace webrtc {
|
|
|
|
|
|
2015-04-10 07:56:57 +02:00
|
|
|
TEST(EchoCancellationTest, CreateAndFreeHasExpectedBehavior) {
|
2015-06-10 21:43:36 +02:00
|
|
|
void* handle = WebRtcAec_Create();
|
|
|
|
|
ASSERT_TRUE(handle);
|
2015-04-10 07:56:57 +02:00
|
|
|
WebRtcAec_Free(nullptr);
|
|
|
|
|
WebRtcAec_Free(handle);
|
2013-02-27 21:03:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TEST(EchoCancellationTest, ApplyAecCoreHandle) {
|
2015-06-10 21:43:36 +02:00
|
|
|
void* handle = WebRtcAec_Create();
|
|
|
|
|
ASSERT_TRUE(handle);
|
2013-02-27 21:03:41 +00:00
|
|
|
EXPECT_TRUE(WebRtcAec_aec_core(NULL) == NULL);
|
|
|
|
|
AecCore* aec_core = WebRtcAec_aec_core(handle);
|
|
|
|
|
EXPECT_TRUE(aec_core != NULL);
|
|
|
|
|
// A simple test to verify that we can set and get a value from the lower
|
|
|
|
|
// level |aec_core| handle.
|
|
|
|
|
int delay = 111;
|
|
|
|
|
WebRtcAec_SetSystemDelay(aec_core, delay);
|
|
|
|
|
EXPECT_EQ(delay, WebRtcAec_system_delay(aec_core));
|
2015-04-10 07:56:57 +02:00
|
|
|
WebRtcAec_Free(handle);
|
2013-02-27 21:03:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} // namespace webrtc
|