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

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

Issue 1904793002: Move Pipeline permanent callbacks into Pipeline::Client interface. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: CHECK waiter PostTask 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 #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
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
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_
OLDNEW
« no previous file with comments | « media/base/BUILD.gn ('k') | media/base/mock_filters.cc » ('j') | media/base/pipeline.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698