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

Side by Side Diff: media/base/mock_filters.h

Issue 155695: Replace the guts of AudioRendererBase with calls to scaling algorithm. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « media/base/buffer_queue_unittest.cc ('k') | media/filters/audio_renderer_algorithm_base.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. Use of this 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. Use of this
2 // source code is governed by a BSD-style license that can be found in the 2 // source code is governed by a BSD-style license that can be found in the
3 // LICENSE file. 3 // LICENSE file.
4 // 4 //
5 // A new breed of mock media filters, this time using gmock! Feel free to add 5 // A new breed of mock media filters, this time using gmock! Feel free to add
6 // actions if you need interesting side-effects (i.e., copying data to the 6 // actions if you need interesting side-effects (i.e., copying data to the
7 // buffer passed into MockDataSource::Read()). 7 // buffer passed into MockDataSource::Read()).
8 // 8 //
9 // Don't forget you can use StrictMock<> and NiceMock<> if you want the mock 9 // Don't forget you can use StrictMock<> and NiceMock<> if you want the mock
10 // filters to fail the test or do nothing when an unexpected method is called. 10 // filters to fail the test or do nothing when an unexpected method is called.
11 // http://code.google.com/p/googlemock/wiki/CookBook#Nice_Mocks_and_Strict_Mocks 11 // http://code.google.com/p/googlemock/wiki/CookBook#Nice_Mocks_and_Strict_Mocks
12 12
13 #ifndef MEDIA_BASE_MOCK_FILTERS_H_ 13 #ifndef MEDIA_BASE_MOCK_FILTERS_H_
14 #define MEDIA_BASE_MOCK_FILTERS_H_ 14 #define MEDIA_BASE_MOCK_FILTERS_H_
15 15
16 #include <string>
17
16 #include "media/base/factory.h" 18 #include "media/base/factory.h"
17 #include "media/base/filters.h" 19 #include "media/base/filters.h"
18 #include "testing/gmock/include/gmock/gmock.h" 20 #include "testing/gmock/include/gmock/gmock.h"
19 21
20 namespace media { 22 namespace media {
21 23
22 // Use this template to test for object destruction by setting expectations on 24 // Use this template to test for object destruction by setting expectations on
23 // the method OnDestroy(). 25 // the method OnDestroy().
24 // 26 //
25 // TODO(scherkus): not sure about the naming... perhaps contribute this back 27 // TODO(scherkus): not sure about the naming... perhaps contribute this back
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 // test. 60 // test.
59 FilterCallback* NewCallback() { 61 FilterCallback* NewCallback() {
60 return new CallbackImpl(this); 62 return new CallbackImpl(this);
61 } 63 }
62 64
63 private: 65 private:
64 // Private implementation of CallbackRunner used to trigger expectations on 66 // Private implementation of CallbackRunner used to trigger expectations on
65 // MockFilterCallback. 67 // MockFilterCallback.
66 class CallbackImpl : public CallbackRunner<Tuple0> { 68 class CallbackImpl : public CallbackRunner<Tuple0> {
67 public: 69 public:
68 CallbackImpl(MockFilterCallback* mock_callback) 70 explicit CallbackImpl(MockFilterCallback* mock_callback)
69 : mock_callback_(mock_callback) { 71 : mock_callback_(mock_callback) {
70 } 72 }
71 73
72 virtual ~CallbackImpl() { 74 virtual ~CallbackImpl() {
73 mock_callback_->OnCallbackDestroyed(); 75 mock_callback_->OnCallbackDestroyed();
74 } 76 }
75 77
76 virtual void RunWithParams(const Tuple0& params) { 78 virtual void RunWithParams(const Tuple0& params) {
77 mock_callback_->OnFilterCallback(); 79 mock_callback_->OnFilterCallback();
78 } 80 }
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 private: 189 private:
188 MediaFormat media_format_; 190 MediaFormat media_format_;
189 191
190 DISALLOW_COPY_AND_ASSIGN(MockVideoDecoder); 192 DISALLOW_COPY_AND_ASSIGN(MockVideoDecoder);
191 }; 193 };
192 194
193 class MockAudioDecoder : public AudioDecoder { 195 class MockAudioDecoder : public AudioDecoder {
194 public: 196 public:
195 MockAudioDecoder() {} 197 MockAudioDecoder() {}
196 198
199 // Sets the essential media format keys for this decoder.
200 MockAudioDecoder(int channels, int sample_rate, int sample_bits) {
201 media_format_.SetAsString(MediaFormat::kMimeType,
202 mime_type::kUncompressedAudio);
203 media_format_.SetAsInteger(MediaFormat::kChannels, channels);
204 media_format_.SetAsInteger(MediaFormat::kSampleRate, sample_rate);
205 media_format_.SetAsInteger(MediaFormat::kSampleBits, sample_bits);
206 }
207
197 // MediaFilter implementation. 208 // MediaFilter implementation.
198 MOCK_METHOD0(Stop, void()); 209 MOCK_METHOD0(Stop, void());
199 MOCK_METHOD1(SetPlaybackRate, void(float playback_rate)); 210 MOCK_METHOD1(SetPlaybackRate, void(float playback_rate));
200 MOCK_METHOD2(Seek, void(base::TimeDelta time, FilterCallback* callback)); 211 MOCK_METHOD2(Seek, void(base::TimeDelta time, FilterCallback* callback));
201 212
202 // AudioDecoder implementation. 213 // AudioDecoder implementation.
203 MOCK_METHOD2(Initialize, void(DemuxerStream* stream, 214 MOCK_METHOD2(Initialize, void(DemuxerStream* stream,
204 FilterCallback* callback)); 215 FilterCallback* callback));
205 const MediaFormat& media_format() { return media_format_; } 216 const MediaFormat& media_format() { return media_format_; }
206 MOCK_METHOD1(Read, void(Callback1<Buffer*>::Type* read_callback)); 217 MOCK_METHOD1(Read, void(Callback1<Buffer*>::Type* read_callback));
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 361
351 // Helper gmock action that calls SetBufferedBytes() on behalf of the provided 362 // Helper gmock action that calls SetBufferedBytes() on behalf of the provided
352 // filter. 363 // filter.
353 ACTION_P2(SetBufferedBytes, filter, bytes) { 364 ACTION_P2(SetBufferedBytes, filter, bytes) {
354 filter->host()->SetBufferedBytes(bytes); 365 filter->host()->SetBufferedBytes(bytes);
355 } 366 }
356 367
357 } // namespace media 368 } // namespace media
358 369
359 #endif // MEDIA_BASE_MOCK_FILTERS_H_ 370 #endif // MEDIA_BASE_MOCK_FILTERS_H_
OLDNEW
« no previous file with comments | « media/base/buffer_queue_unittest.cc ('k') | media/filters/audio_renderer_algorithm_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698