OLD | NEW |
---|---|
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 #ifndef MEDIA_BASE_MOCK_FILTERS_H_ | 5 #ifndef MEDIA_BASE_MOCK_FILTERS_H_ |
6 #define MEDIA_BASE_MOCK_FILTERS_H_ | 6 #define MEDIA_BASE_MOCK_FILTERS_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 #include <string> | 11 #include <string> |
12 | 12 |
13 #include "base/callback.h" | 13 #include "base/callback.h" |
14 #include "base/macros.h" | 14 #include "base/macros.h" |
15 #include "media/base/audio_decoder.h" | 15 #include "media/base/audio_decoder.h" |
16 #include "media/base/audio_decoder_config.h" | 16 #include "media/base/audio_decoder_config.h" |
17 #include "media/base/audio_renderer.h" | 17 #include "media/base/audio_renderer.h" |
18 #include "media/base/cdm_context.h" | 18 #include "media/base/cdm_context.h" |
19 #include "media/base/decoder_buffer.h" | 19 #include "media/base/decoder_buffer.h" |
20 #include "media/base/decryptor.h" | 20 #include "media/base/decryptor.h" |
21 #include "media/base/demuxer.h" | 21 #include "media/base/demuxer.h" |
22 #include "media/base/pipeline.h" | 22 #include "media/base/pipeline.h" |
23 #include "media/base/pipeline_status.h" | 23 #include "media/base/pipeline_status.h" |
24 #include "media/base/renderer.h" | 24 #include "media/base/renderer.h" |
25 #include "media/base/text_track.h" | 25 #include "media/base/text_track.h" |
26 #include "media/base/text_track_config.h" | |
26 #include "media/base/time_source.h" | 27 #include "media/base/time_source.h" |
27 #include "media/base/video_decoder.h" | 28 #include "media/base/video_decoder.h" |
28 #include "media/base/video_decoder_config.h" | 29 #include "media/base/video_decoder_config.h" |
29 #include "media/base/video_frame.h" | 30 #include "media/base/video_frame.h" |
30 #include "media/base/video_renderer.h" | 31 #include "media/base/video_renderer.h" |
31 #include "testing/gmock/include/gmock/gmock.h" | 32 #include "testing/gmock/include/gmock/gmock.h" |
32 | 33 |
33 namespace media { | 34 namespace media { |
34 | 35 |
36 class MockPipelineClient : public Pipeline::Client { | |
37 public: | |
38 MockPipelineClient(); | |
39 ~MockPipelineClient(); | |
40 | |
41 MOCK_METHOD1(OnError, void(PipelineStatus)); | |
42 MOCK_METHOD0(OnEnded, void()); | |
43 MOCK_METHOD1(OnMetadata, void(PipelineMetadata)); | |
44 MOCK_METHOD1(OnBufferingStateChange, void(BufferingState)); | |
45 MOCK_METHOD0(OnDurationChange, void()); | |
46 MOCK_METHOD2(OnAddTextTrack, | |
47 void(const TextTrackConfig&, const AddTextTrackDoneCB&)); | |
48 MOCK_METHOD0(OnWaitingForDecryptionKey, void()); | |
49 }; | |
50 | |
35 class MockPipeline : public Pipeline { | 51 class MockPipeline : public Pipeline { |
36 public: | 52 public: |
37 MockPipeline(); | 53 MockPipeline(); |
38 virtual ~MockPipeline(); | 54 virtual ~MockPipeline(); |
39 | 55 |
40 // Note: Start() and Resume() declarations are not actually overrides; they | 56 // Note: Start() and Resume() declarations are not actually overrides; they |
41 // take scoped_ptr* instead of scoped_ptr so that they can be mock methods. | 57 // take scoped_ptr* instead of scoped_ptr so that they can be mock methods. |
xhwang
2016/05/04 06:32:22
nit: s/scoped_ptr/unique_ptr
alokp
2016/05/04 17:40:01
Done.
| |
42 // Private stubs for Start() and Resume() implement the actual Pipeline | 58 // Private stubs for Start() and Resume() implement the actual Pipeline |
43 // interface by forwarding to these mock methods. | 59 // interface by forwarding to these mock methods. |
44 MOCK_METHOD10(Start, | 60 MOCK_METHOD4(Start, |
45 void(Demuxer*, | 61 void(Demuxer*, |
46 std::unique_ptr<Renderer>*, | 62 std::unique_ptr<Renderer>*, |
47 const base::Closure&, | 63 Client*, |
48 const PipelineStatusCB&, | 64 const PipelineStatusCB&)); |
49 const PipelineStatusCB&, | 65 MOCK_METHOD0(Stop, void()); |
50 const PipelineMetadataCB&, | |
51 const BufferingStateCB&, | |
52 const base::Closure&, | |
53 const AddTextTrackCB&, | |
54 const base::Closure&)); | |
55 MOCK_METHOD1(Stop, void(const base::Closure&)); | |
56 MOCK_METHOD2(Seek, void(base::TimeDelta, const PipelineStatusCB&)); | 66 MOCK_METHOD2(Seek, void(base::TimeDelta, const PipelineStatusCB&)); |
57 MOCK_METHOD1(Suspend, void(const PipelineStatusCB&)); | 67 MOCK_METHOD1(Suspend, void(const PipelineStatusCB&)); |
58 MOCK_METHOD3(Resume, | 68 MOCK_METHOD3(Resume, |
59 void(std::unique_ptr<Renderer>*, | 69 void(std::unique_ptr<Renderer>*, |
60 base::TimeDelta, | 70 base::TimeDelta, |
61 const PipelineStatusCB&)); | 71 const PipelineStatusCB&)); |
62 | 72 |
63 // TODO(sandersd): This should automatically return true between Start() and | 73 // TODO(sandersd): This should automatically return true between Start() and |
64 // Stop(). (Or better, remove it from the interface entirely.) | 74 // Stop(). (Or better, remove it from the interface entirely.) |
65 MOCK_CONST_METHOD0(IsRunning, bool()); | 75 MOCK_CONST_METHOD0(IsRunning, bool()); |
(...skipping 10 matching lines...) Expand all Loading... | |
76 MOCK_CONST_METHOD0(GetMediaDuration, base::TimeDelta()); | 86 MOCK_CONST_METHOD0(GetMediaDuration, base::TimeDelta()); |
77 MOCK_METHOD0(DidLoadingProgress, bool()); | 87 MOCK_METHOD0(DidLoadingProgress, bool()); |
78 MOCK_CONST_METHOD0(GetStatistics, PipelineStatistics()); | 88 MOCK_CONST_METHOD0(GetStatistics, PipelineStatistics()); |
79 | 89 |
80 MOCK_METHOD2(SetCdm, void(CdmContext*, const CdmAttachedCB&)); | 90 MOCK_METHOD2(SetCdm, void(CdmContext*, const CdmAttachedCB&)); |
81 | 91 |
82 private: | 92 private: |
83 // Forwarding stubs (see comment above). | 93 // Forwarding stubs (see comment above). |
84 void Start(Demuxer* demuxer, | 94 void Start(Demuxer* demuxer, |
85 std::unique_ptr<Renderer> renderer, | 95 std::unique_ptr<Renderer> renderer, |
86 const base::Closure& ended_cb, | 96 Client* client, |
87 const PipelineStatusCB& error_cb, | 97 const PipelineStatusCB& seek_cb) override; |
88 const PipelineStatusCB& seek_cb, | |
89 const PipelineMetadataCB& metadata_cb, | |
90 const BufferingStateCB& buffering_state_cb, | |
91 const base::Closure& duration_change_cb, | |
92 const AddTextTrackCB& add_text_track_cb, | |
93 const base::Closure& waiting_for_decryption_key_cb) override; | |
94 void Resume(std::unique_ptr<Renderer> renderer, | 98 void Resume(std::unique_ptr<Renderer> renderer, |
95 base::TimeDelta timestamp, | 99 base::TimeDelta timestamp, |
96 const PipelineStatusCB& seek_cb) override; | 100 const PipelineStatusCB& seek_cb) override; |
97 | 101 |
98 DISALLOW_COPY_AND_ASSIGN(MockPipeline); | 102 DISALLOW_COPY_AND_ASSIGN(MockPipeline); |
99 }; | 103 }; |
100 | 104 |
101 class MockDemuxer : public Demuxer { | 105 class MockDemuxer : public Demuxer { |
102 public: | 106 public: |
103 MockDemuxer(); | 107 MockDemuxer(); |
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
342 MOCK_METHOD0(GetDecryptor, Decryptor*()); | 346 MOCK_METHOD0(GetDecryptor, Decryptor*()); |
343 int GetCdmId() const override; | 347 int GetCdmId() const override; |
344 | 348 |
345 private: | 349 private: |
346 DISALLOW_COPY_AND_ASSIGN(MockCdmContext); | 350 DISALLOW_COPY_AND_ASSIGN(MockCdmContext); |
347 }; | 351 }; |
348 | 352 |
349 } // namespace media | 353 } // namespace media |
350 | 354 |
351 #endif // MEDIA_BASE_MOCK_FILTERS_H_ | 355 #endif // MEDIA_BASE_MOCK_FILTERS_H_ |
OLD | NEW |