Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / media / filters / pipeline_integration_test_base.h
index d162d0b..a0f25c3 100644 (file)
@@ -9,10 +9,12 @@
 #include "base/message_loop/message_loop.h"
 #include "media/audio/clockless_audio_sink.h"
 #include "media/audio/null_audio_sink.h"
+#include "media/base/audio_hardware_config.h"
 #include "media/base/demuxer.h"
-#include "media/base/filter_collection.h"
 #include "media/base/media_keys.h"
 #include "media/base/pipeline.h"
+#include "media/base/text_track.h"
+#include "media/base/text_track_config.h"
 #include "media/base/video_frame.h"
 #include "media/filters/video_renderer_impl.h"
 #include "testing/gmock/include/gmock/gmock.h"
@@ -36,8 +38,9 @@ extern const char kNullAudioHash[];
 class DummyTickClock : public base::TickClock {
  public:
   DummyTickClock() : now_() {}
-  virtual ~DummyTickClock() {}
-  virtual base::TimeTicks NowTicks() OVERRIDE;
+  ~DummyTickClock() override {}
+  base::TimeTicks NowTicks() override;
+
  private:
   base::TimeTicks now_;
 };
@@ -76,8 +79,6 @@ class PipelineIntegrationTestBase {
   bool Seek(base::TimeDelta seek_time);
   void Stop();
   bool WaitUntilCurrentTimeIsAfter(const base::TimeDelta& wait_time);
-  scoped_ptr<FilterCollection> CreateFilterCollection(
-      const base::FilePath& file_path, Decryptor* decryptor);
 
   // Returns the MD5 hash of all video frames seen.  Should only be called once
   // after playback completes.  First time hashes should be generated with
@@ -109,7 +110,10 @@ class PipelineIntegrationTestBase {
   Demuxer::NeedKeyCB need_key_cb_;
   VideoFrame::Format last_video_frame_format_;
   DummyTickClock dummy_clock_;
+  AudioHardwareConfig hardware_config_;
+  PipelineMetadata metadata_;
 
+  void SaveStatus(PipelineStatus status);
   void OnStatusCallbackChecked(PipelineStatus expected_status,
                                PipelineStatus status);
   void OnStatusCallback(PipelineStatus status);
@@ -123,15 +127,23 @@ class PipelineIntegrationTestBase {
   void OnEnded();
   void OnError(PipelineStatus status);
   void QuitAfterCurrentTimeTask(const base::TimeDelta& quit_time);
-  scoped_ptr<FilterCollection> CreateFilterCollection(
-      scoped_ptr<Demuxer> demuxer, Decryptor* decryptor);
+
+  // Creates Demuxer and sets |demuxer_|.
+  void CreateDemuxer(const base::FilePath& file_path);
+
+  // Creates and returns a Renderer.
+  scoped_ptr<Renderer> CreateRenderer(Decryptor* decryptor);
 
   void SetDecryptor(Decryptor* decryptor,
                     const DecryptorReadyCB& decryptor_ready_cb);
   void OnVideoRendererPaint(const scoped_refptr<VideoFrame>& frame);
 
-  MOCK_METHOD1(OnSetOpaque, void(bool));
-  MOCK_METHOD1(OnBufferingState, void(Pipeline::BufferingState));
+  MOCK_METHOD1(OnMetadata, void(PipelineMetadata));
+  MOCK_METHOD1(OnBufferingStateChanged, void(BufferingState));
+  MOCK_METHOD1(DecryptorAttached, void(bool));
+  MOCK_METHOD2(OnAddTextTrack,
+               void(const TextTrackConfig& config,
+                    const AddTextTrackDoneCB& done_cb));
 };
 
 }  // namespace media