Shaka Packager SDK
Loading...
Searching...
No Matches
mock_media_playlist.h
1// Copyright 2016 Google LLC. All rights reserved.
2//
3// Use of this source code is governed by a BSD-style
4// license that can be found in the LICENSE file or at
5// https://developers.google.com/open-source/licenses/bsd
6
7#ifndef PACKAGER_HLS_BASE_MOCK_MEDIA_PLAYLIST_H_
8#define PACKAGER_HLS_BASE_MOCK_MEDIA_PLAYLIST_H_
9
10#include <cstdint>
11#include <filesystem>
12#include <string>
13
14#include <gmock/gmock.h>
15
16#include <packager/hls/base/media_playlist.h>
17#include <packager/mpd/base/media_info.pb.h>
18
19namespace shaka {
20namespace hls {
21
23 public:
24 // The actual parameters to MediaPlaylist() (parent) constructor doesn't
25 // matter because the return value can be mocked.
26 MockMediaPlaylist(const std::string& file_name,
27 const std::string& name,
28 const std::string& group_id);
29 ~MockMediaPlaylist() override;
30
31 MOCK_METHOD1(SetMediaInfo, bool(const MediaInfo& media_info));
32 MOCK_METHOD5(AddSegment,
33 void(const std::string& file_name,
34 int64_t start_time,
35 int64_t duration,
36 uint64_t start_byte_offset,
37 uint64_t size));
38 MOCK_METHOD3(AddKeyFrame,
39 void(int64_t timestamp,
40 uint64_t start_byte_offset,
41 uint64_t size));
42 MOCK_METHOD6(AddEncryptionInfo,
43 void(EncryptionMethod method,
44 const std::string& url,
45 const std::string& key_id,
46 const std::string& iv,
47 const std::string& key_format,
48 const std::string& key_format_versions));
49 MOCK_METHOD0(AddPlacementOpportunity, void());
50 MOCK_METHOD3(WriteToFile,
51 bool(const std::filesystem::path& file_path,
52 bool event_to_vod_on_end_of_stream,
53 bool end_stream));
54 MOCK_CONST_METHOD0(MaxBitrate, uint64_t());
55 MOCK_CONST_METHOD0(AvgBitrate, uint64_t());
56 MOCK_CONST_METHOD0(GetLongestSegmentDuration, double());
57 MOCK_METHOD1(SetTargetDuration, void(int32_t target_duration));
58 MOCK_CONST_METHOD0(GetNumChannels, int());
59 MOCK_CONST_METHOD0(GetEC3JocComplexity, int());
60 MOCK_CONST_METHOD0(GetAC4ImsFlag, bool());
61 MOCK_CONST_METHOD0(GetAC4CbiFlag, bool());
62 MOCK_CONST_METHOD2(GetDisplayResolution,
63 bool(uint32_t* width, uint32_t* height));
64 MOCK_CONST_METHOD0(GetFrameRate, double());
65};
66
67} // namespace hls
68} // namespace shaka
69
70#endif // PACKAGER_HLS_BASE_MOCK_MEDIA_PLAYLIST_H_
Methods are virtual for mocking.
virtual bool WriteToFile(const std::filesystem::path &file_path, bool event_to_vod_on_end_of_stream, bool end_stream)
virtual bool GetAC4ImsFlag() const
virtual void AddEncryptionInfo(EncryptionMethod method, const std::string &url, const std::string &key_id, const std::string &iv, const std::string &key_format, const std::string &key_format_versions)
virtual void AddKeyFrame(int64_t timestamp, uint64_t start_byte_offset, uint64_t size)
virtual double GetFrameRate() const
virtual uint64_t AvgBitrate() const
virtual bool GetDisplayResolution(uint32_t *width, uint32_t *height) const
virtual double GetLongestSegmentDuration() const
virtual int GetEC3JocComplexity() const
virtual uint64_t MaxBitrate() const
virtual int GetNumChannels() const
virtual void AddPlacementOpportunity()
virtual bool SetMediaInfo(const MediaInfo &media_info)
virtual void SetTargetDuration(int32_t target_duration)
virtual bool GetAC4CbiFlag() const
virtual void AddSegment(const std::string &file_name, int64_t start_time, int64_t duration, uint64_t start_byte_offset, uint64_t size)
All the methods that are virtual are virtual for mocking.