• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright (c) 2018 The WebRTC project authors. All Rights Reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 #ifndef API_TEST_MOCK_VIDEO_DECODER_H_
12 #define API_TEST_MOCK_VIDEO_DECODER_H_
13 
14 #include "api/video_codecs/video_decoder.h"
15 #include "test/gmock.h"
16 
17 namespace webrtc {
18 
19 class MockDecodedImageCallback : public DecodedImageCallback {
20  public:
21   MOCK_METHOD(int32_t,
22               Decoded,
23               (VideoFrame & decoded_image),  // NOLINT
24               (override));
25   MOCK_METHOD(int32_t,
26               Decoded,
27               (VideoFrame & decoded_image,  // NOLINT
28                int64_t decode_time_ms),
29               (override));
30   MOCK_METHOD(void,
31               Decoded,
32               (VideoFrame & decoded_image,  // NOLINT
33                absl::optional<int32_t> decode_time_ms,
34                absl::optional<uint8_t> qp),
35               (override));
36 };
37 
38 class MockVideoDecoder : public VideoDecoder {
39  public:
40   MOCK_METHOD(int32_t,
41               InitDecode,
42               (const VideoCodec* codec_settings, int32_t number_of_cores),
43               (override));
44   MOCK_METHOD(int32_t,
45               Decode,
46               (const EncodedImage& input_image,
47                bool missing_frames,
48                int64_t render_time_ms),
49               (override));
50   MOCK_METHOD(int32_t,
51               RegisterDecodeCompleteCallback,
52               (DecodedImageCallback * callback),
53               (override));
54   MOCK_METHOD(int32_t, Release, (), (override));
55 };
56 
57 }  // namespace webrtc
58 
59 #endif  // API_TEST_MOCK_VIDEO_DECODER_H_
60