1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "base/message_loop/message_loop.h"
6 #include "media/base/audio_decoder_config.h"
7 #include "media/base/demuxer_stream.h"
8 #include "media/base/video_decoder_config.h"
9 #include "testing/gmock/include/gmock/gmock.h"
13 // Fake implementation of the DemuxerStream. These are the stream objects
14 // we pass to the text renderer object when streams are added and removed.
15 class FakeTextTrackStream
: public DemuxerStream
{
17 FakeTextTrackStream();
18 virtual ~FakeTextTrackStream();
20 // DemuxerStream implementation.
21 virtual void Read(const ReadCB
&) override
;
22 MOCK_METHOD0(audio_decoder_config
, AudioDecoderConfig());
23 MOCK_METHOD0(video_decoder_config
, VideoDecoderConfig());
24 virtual Type
type() const override
;
25 MOCK_METHOD0(EnableBitstreamConverter
, void());
26 virtual bool SupportsConfigChanges();
27 virtual VideoRotation
video_rotation() override
;
29 void SatisfyPendingRead(const base::TimeDelta
& start
,
30 const base::TimeDelta
& duration
,
31 const std::string
& id
,
32 const std::string
& content
,
33 const std::string
& settings
);
34 void AbortPendingRead();
35 void SendEosNotification();
39 MOCK_METHOD0(OnRead
, void());
42 scoped_refptr
<base::SingleThreadTaskRunner
> task_runner_
;
46 DISALLOW_COPY_AND_ASSIGN(FakeTextTrackStream
);