OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #include "webrtc/modules/audio_processing/transient/moving_moments.h" | 11 #include "webrtc/modules/audio_processing/transient/moving_moments.h" |
12 | 12 |
| 13 #include <memory> |
| 14 |
13 #include "testing/gtest/include/gtest/gtest.h" | 15 #include "testing/gtest/include/gtest/gtest.h" |
14 #include "webrtc/base/scoped_ptr.h" | |
15 | 16 |
16 namespace webrtc { | 17 namespace webrtc { |
17 | 18 |
18 static const float kTolerance = 0.0001f; | 19 static const float kTolerance = 0.0001f; |
19 | 20 |
20 class MovingMomentsTest : public ::testing::Test { | 21 class MovingMomentsTest : public ::testing::Test { |
21 protected: | 22 protected: |
22 static const size_t kMovingMomentsBufferLength = 5; | 23 static const size_t kMovingMomentsBufferLength = 5; |
23 static const size_t kMaxOutputLength = 20; // Valid for this tests only. | 24 static const size_t kMaxOutputLength = 20; // Valid for this tests only. |
24 | 25 |
25 virtual void SetUp(); | 26 virtual void SetUp(); |
26 // Calls CalculateMoments and verifies that it produces the expected | 27 // Calls CalculateMoments and verifies that it produces the expected |
27 // outputs. | 28 // outputs. |
28 void CalculateMomentsAndVerify(const float* input, size_t input_length, | 29 void CalculateMomentsAndVerify(const float* input, size_t input_length, |
29 const float* expected_mean, | 30 const float* expected_mean, |
30 const float* expected_mean_squares); | 31 const float* expected_mean_squares); |
31 | 32 |
32 rtc::scoped_ptr<MovingMoments> moving_moments_; | 33 std::unique_ptr<MovingMoments> moving_moments_; |
33 float output_mean_[kMaxOutputLength]; | 34 float output_mean_[kMaxOutputLength]; |
34 float output_mean_squares_[kMaxOutputLength]; | 35 float output_mean_squares_[kMaxOutputLength]; |
35 }; | 36 }; |
36 | 37 |
37 const size_t MovingMomentsTest::kMaxOutputLength; | 38 const size_t MovingMomentsTest::kMaxOutputLength; |
38 | 39 |
39 void MovingMomentsTest::SetUp() { | 40 void MovingMomentsTest::SetUp() { |
40 moving_moments_.reset(new MovingMoments(kMovingMomentsBufferLength)); | 41 moving_moments_.reset(new MovingMoments(kMovingMomentsBufferLength)); |
41 } | 42 } |
42 | 43 |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
197 moving_moments_->CalculateMoments( | 198 moving_moments_->CalculateMoments( |
198 &kInput[i], 1, &output_mean_sample_based, | 199 &kInput[i], 1, &output_mean_sample_based, |
199 &output_mean_squares_sample_based); | 200 &output_mean_squares_sample_based); |
200 EXPECT_FLOAT_EQ(output_mean_block_based[i], output_mean_sample_based); | 201 EXPECT_FLOAT_EQ(output_mean_block_based[i], output_mean_sample_based); |
201 EXPECT_FLOAT_EQ(output_mean_squares_block_based[i], | 202 EXPECT_FLOAT_EQ(output_mean_squares_block_based[i], |
202 output_mean_squares_sample_based); | 203 output_mean_squares_sample_based); |
203 } | 204 } |
204 } | 205 } |
205 | 206 |
206 } // namespace webrtc | 207 } // namespace webrtc |
OLD | NEW |