Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(20)

Side by Side Diff: webrtc/modules/audio_coding/neteq/decision_logic_unittest.cc

Issue 1990803004: Turned AudioDecoderFactory into a RefCounted thing to use with scoped_refptr. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Removed AudioDecoderFactory destructor declaration. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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 // Unit tests for DecisionLogic class and derived classes. 11 // Unit tests for DecisionLogic class and derived classes.
12 12
13 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
14 #include "webrtc/modules/audio_coding/codecs/mock/mock_audio_decoder_factory.h" 14 #include "webrtc/modules/audio_coding/codecs/mock/mock_audio_decoder_factory.h"
15 #include "webrtc/modules/audio_coding/neteq/buffer_level_filter.h" 15 #include "webrtc/modules/audio_coding/neteq/buffer_level_filter.h"
16 #include "webrtc/modules/audio_coding/neteq/decoder_database.h" 16 #include "webrtc/modules/audio_coding/neteq/decoder_database.h"
17 #include "webrtc/modules/audio_coding/neteq/decision_logic.h" 17 #include "webrtc/modules/audio_coding/neteq/decision_logic.h"
18 #include "webrtc/modules/audio_coding/neteq/delay_manager.h" 18 #include "webrtc/modules/audio_coding/neteq/delay_manager.h"
19 #include "webrtc/modules/audio_coding/neteq/delay_peak_detector.h" 19 #include "webrtc/modules/audio_coding/neteq/delay_peak_detector.h"
20 #include "webrtc/modules/audio_coding/neteq/packet_buffer.h" 20 #include "webrtc/modules/audio_coding/neteq/packet_buffer.h"
21 #include "webrtc/modules/audio_coding/neteq/tick_timer.h" 21 #include "webrtc/modules/audio_coding/neteq/tick_timer.h"
22 22
23 namespace webrtc { 23 namespace webrtc {
24 24
25 TEST(DecisionLogic, CreateAndDestroy) { 25 TEST(DecisionLogic, CreateAndDestroy) {
26 int fs_hz = 8000; 26 int fs_hz = 8000;
27 int output_size_samples = fs_hz / 100; // Samples per 10 ms. 27 int output_size_samples = fs_hz / 100; // Samples per 10 ms.
28 DecoderDatabase decoder_database( 28 DecoderDatabase decoder_database(
29 std::unique_ptr<MockAudioDecoderFactory>(new MockAudioDecoderFactory)); 29 new rtc::RefCountedObject<MockAudioDecoderFactory>);
30 TickTimer tick_timer; 30 TickTimer tick_timer;
31 PacketBuffer packet_buffer(10, &tick_timer); 31 PacketBuffer packet_buffer(10, &tick_timer);
32 DelayPeakDetector delay_peak_detector(&tick_timer); 32 DelayPeakDetector delay_peak_detector(&tick_timer);
33 DelayManager delay_manager(240, &delay_peak_detector, &tick_timer); 33 DelayManager delay_manager(240, &delay_peak_detector, &tick_timer);
34 BufferLevelFilter buffer_level_filter; 34 BufferLevelFilter buffer_level_filter;
35 DecisionLogic* logic = DecisionLogic::Create( 35 DecisionLogic* logic = DecisionLogic::Create(
36 fs_hz, output_size_samples, kPlayoutOn, &decoder_database, packet_buffer, 36 fs_hz, output_size_samples, kPlayoutOn, &decoder_database, packet_buffer,
37 &delay_manager, &buffer_level_filter, &tick_timer); 37 &delay_manager, &buffer_level_filter, &tick_timer);
38 delete logic; 38 delete logic;
39 logic = DecisionLogic::Create( 39 logic = DecisionLogic::Create(
40 fs_hz, output_size_samples, kPlayoutStreaming, &decoder_database, 40 fs_hz, output_size_samples, kPlayoutStreaming, &decoder_database,
41 packet_buffer, &delay_manager, &buffer_level_filter, &tick_timer); 41 packet_buffer, &delay_manager, &buffer_level_filter, &tick_timer);
42 delete logic; 42 delete logic;
43 logic = DecisionLogic::Create( 43 logic = DecisionLogic::Create(
44 fs_hz, output_size_samples, kPlayoutFax, &decoder_database, packet_buffer, 44 fs_hz, output_size_samples, kPlayoutFax, &decoder_database, packet_buffer,
45 &delay_manager, &buffer_level_filter, &tick_timer); 45 &delay_manager, &buffer_level_filter, &tick_timer);
46 delete logic; 46 delete logic;
47 logic = DecisionLogic::Create( 47 logic = DecisionLogic::Create(
48 fs_hz, output_size_samples, kPlayoutOff, &decoder_database, packet_buffer, 48 fs_hz, output_size_samples, kPlayoutOff, &decoder_database, packet_buffer,
49 &delay_manager, &buffer_level_filter, &tick_timer); 49 &delay_manager, &buffer_level_filter, &tick_timer);
50 delete logic; 50 delete logic;
51 } 51 }
52 52
53 // TODO(hlundin): Write more tests. 53 // TODO(hlundin): Write more tests.
54 54
55 } // namespace webrtc 55 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698