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

Side by Side Diff: media/audio/virtual_audio_output_stream_unittest.cc

Issue 1897953003: Unmute Tab Audio For Desktop Share (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Resolving Comments 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 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <memory> 5 #include <memory>
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/synchronization/waitable_event.h" 10 #include "base/synchronization/waitable_event.h"
(...skipping 17 matching lines...) Expand all
28 class MockVirtualAudioInputStream : public VirtualAudioInputStream { 28 class MockVirtualAudioInputStream : public VirtualAudioInputStream {
29 public: 29 public:
30 explicit MockVirtualAudioInputStream( 30 explicit MockVirtualAudioInputStream(
31 const scoped_refptr<base::SingleThreadTaskRunner>& worker_task_runner) 31 const scoped_refptr<base::SingleThreadTaskRunner>& worker_task_runner)
32 : VirtualAudioInputStream( 32 : VirtualAudioInputStream(
33 kParams, 33 kParams,
34 worker_task_runner, 34 worker_task_runner,
35 base::Bind(&base::DeletePointer<VirtualAudioInputStream>)) {} 35 base::Bind(&base::DeletePointer<VirtualAudioInputStream>)) {}
36 ~MockVirtualAudioInputStream() {} 36 ~MockVirtualAudioInputStream() {}
37 37
38 MOCK_METHOD2(AddOutputStream, void(VirtualAudioOutputStream* stream, 38 MOCK_METHOD2(AddInputProvider,
39 const AudioParameters& output_params)); 39 void(AudioConverter::InputCallback* input,
40 MOCK_METHOD2(RemoveOutputStream, void(VirtualAudioOutputStream* stream, 40 const AudioParameters& params));
41 const AudioParameters& output_params)); 41 MOCK_METHOD2(RemoveInputProvider,
42 void(AudioConverter::InputCallback* input,
43 const AudioParameters& params));
42 44
43 private: 45 private:
44 DISALLOW_COPY_AND_ASSIGN(MockVirtualAudioInputStream); 46 DISALLOW_COPY_AND_ASSIGN(MockVirtualAudioInputStream);
45 }; 47 };
46 48
47 class MockAudioDeviceListener : public AudioManager::AudioDeviceListener { 49 class MockAudioDeviceListener : public AudioManager::AudioDeviceListener {
48 public: 50 public:
49 MOCK_METHOD0(OnDeviceChange, void()); 51 MOCK_METHOD0(OnDeviceChange, void());
50 }; 52 };
51 53
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 audio_task_runner()->PostTask( 86 audio_task_runner()->PostTask(
85 FROM_HERE, base::Bind( 87 FROM_HERE, base::Bind(
86 base::IgnoreResult(&MockVirtualAudioInputStream::Open), 88 base::IgnoreResult(&MockVirtualAudioInputStream::Open),
87 base::Unretained(input_stream))); 89 base::Unretained(input_stream)));
88 90
89 VirtualAudioOutputStream* const output_stream = new VirtualAudioOutputStream( 91 VirtualAudioOutputStream* const output_stream = new VirtualAudioOutputStream(
90 kParams, 92 kParams,
91 input_stream, 93 input_stream,
92 base::Bind(&base::DeletePointer<VirtualAudioOutputStream>)); 94 base::Bind(&base::DeletePointer<VirtualAudioOutputStream>));
93 95
94 EXPECT_CALL(*input_stream, AddOutputStream(output_stream, _)) 96 EXPECT_CALL(*input_stream, AddInputProvider(output_stream, _)).Times(kCycles);
95 .Times(kCycles); 97 EXPECT_CALL(*input_stream, RemoveInputProvider(output_stream, _))
96 EXPECT_CALL(*input_stream, RemoveOutputStream(output_stream, _))
97 .Times(kCycles); 98 .Times(kCycles);
98 99
99 audio_task_runner()->PostTask( 100 audio_task_runner()->PostTask(
100 FROM_HERE, base::Bind(base::IgnoreResult(&VirtualAudioOutputStream::Open), 101 FROM_HERE, base::Bind(base::IgnoreResult(&VirtualAudioOutputStream::Open),
101 base::Unretained(output_stream))); 102 base::Unretained(output_stream)));
102 SineWaveAudioSource source(CHANNEL_LAYOUT_STEREO, 200.0, 128); 103 SineWaveAudioSource source(CHANNEL_LAYOUT_STEREO, 200.0, 128);
103 for (int i = 0; i < kCycles; ++i) { 104 for (int i = 0; i < kCycles; ++i) {
104 audio_task_runner()->PostTask( 105 audio_task_runner()->PostTask(
105 FROM_HERE, base::Bind(&VirtualAudioOutputStream::Start, 106 FROM_HERE, base::Bind(&VirtualAudioOutputStream::Start,
106 base::Unretained(output_stream), 107 base::Unretained(output_stream),
107 &source)); 108 &source));
108 audio_task_runner()->PostTask( 109 audio_task_runner()->PostTask(
109 FROM_HERE, base::Bind(&VirtualAudioOutputStream::Stop, 110 FROM_HERE, base::Bind(&VirtualAudioOutputStream::Stop,
110 base::Unretained(output_stream))); 111 base::Unretained(output_stream)));
111 } 112 }
112 audio_task_runner()->PostTask( 113 audio_task_runner()->PostTask(
113 FROM_HERE, base::Bind(&VirtualAudioOutputStream::Close, 114 FROM_HERE, base::Bind(&VirtualAudioOutputStream::Close,
114 base::Unretained(output_stream))); 115 base::Unretained(output_stream)));
115 116
116 audio_task_runner()->PostTask( 117 audio_task_runner()->PostTask(
117 FROM_HERE, base::Bind(&MockVirtualAudioInputStream::Close, 118 FROM_HERE, base::Bind(&MockVirtualAudioInputStream::Close,
118 base::Unretained(input_stream))); 119 base::Unretained(input_stream)));
119 120
120 SyncWithAudioThread(); 121 SyncWithAudioThread();
121 } 122 }
122 123
123 } // namespace media 124 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698