Define MockFrameTransformer in test/.
Add MockFrameTransformer to test/, and remove definitions from unit test files. Bug: webrtc:11380 Change-Id: Ia709883e8d000852e3f71e7bfb87877072e22aeb Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/174001 Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Commit-Queue: Marina Ciocea <marinaciocea@webrtc.org> Cr-Commit-Position: refs/heads/master@{#31151}
This commit is contained in:
parent
8ae18adb66
commit
1148fd5cef
@ -429,6 +429,7 @@ if (rtc_include_tests) {
|
||||
"../test:encoder_settings",
|
||||
"../test:fake_video_codecs",
|
||||
"../test:field_trial",
|
||||
"../test:mock_frame_transformer",
|
||||
"../test:mock_transport",
|
||||
"../test:test_common",
|
||||
"../test:test_support",
|
||||
|
||||
@ -26,6 +26,7 @@
|
||||
#include "test/field_trial.h"
|
||||
#include "test/gmock.h"
|
||||
#include "test/gtest.h"
|
||||
#include "test/mock_frame_transformer.h"
|
||||
#include "test/mock_transport.h"
|
||||
#include "test/scenario/scenario.h"
|
||||
#include "test/time_controller/simulated_time_controller.h"
|
||||
@ -825,17 +826,6 @@ TEST(RtpVideoSenderTest, CanSetZeroBitrateWithoutOverhead) {
|
||||
}
|
||||
|
||||
TEST(RtpVideoSenderTest, SimulcastSenderRegistersFrameTransformers) {
|
||||
class MockFrameTransformer : public FrameTransformerInterface {
|
||||
public:
|
||||
MOCK_METHOD3(TransformFrame,
|
||||
void(std::unique_ptr<video_coding::EncodedFrame> frame,
|
||||
std::vector<uint8_t> additional_data,
|
||||
uint32_t ssrc));
|
||||
MOCK_METHOD2(RegisterTransformedFrameSinkCallback,
|
||||
void(rtc::scoped_refptr<TransformedFrameCallback>, uint32_t));
|
||||
MOCK_METHOD1(UnregisterTransformedFrameSinkCallback, void(uint32_t));
|
||||
};
|
||||
|
||||
rtc::scoped_refptr<MockFrameTransformer> transformer =
|
||||
new rtc::RefCountedObject<MockFrameTransformer>();
|
||||
|
||||
|
||||
@ -543,6 +543,7 @@ if (rtc_include_tests) {
|
||||
"../../rtc_base:task_queue_for_test",
|
||||
"../../system_wrappers",
|
||||
"../../test:field_trial",
|
||||
"../../test:mock_frame_transformer",
|
||||
"../../test:mock_transport",
|
||||
"../../test:rtp_test_utils",
|
||||
"../../test:test_common",
|
||||
|
||||
@ -36,6 +36,7 @@
|
||||
#include "rtc_base/rate_limiter.h"
|
||||
#include "test/gmock.h"
|
||||
#include "test/gtest.h"
|
||||
#include "test/mock_frame_transformer.h"
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
@ -873,20 +874,9 @@ TEST_P(RtpSenderVideoTest, PopulatesPlayoutDelay) {
|
||||
EXPECT_EQ(received_delay, kExpectedDelay);
|
||||
}
|
||||
|
||||
class MockFrameTransformer : public FrameTransformerInterface {
|
||||
public:
|
||||
MOCK_METHOD3(TransformFrame,
|
||||
void(std::unique_ptr<video_coding::EncodedFrame> frame,
|
||||
std::vector<uint8_t> additional_data,
|
||||
uint32_t ssrc));
|
||||
MOCK_METHOD2(RegisterTransformedFrameSinkCallback,
|
||||
void(rtc::scoped_refptr<TransformedFrameCallback>, uint32_t));
|
||||
MOCK_METHOD1(UnregisterTransformedFrameSinkCallback, void(uint32_t));
|
||||
};
|
||||
|
||||
TEST_P(RtpSenderVideoTest, SendEncodedImageWithFrameTransformer) {
|
||||
rtc::scoped_refptr<MockFrameTransformer> transformer =
|
||||
new rtc::RefCountedObject<MockFrameTransformer>();
|
||||
new rtc::RefCountedObject<NiceMock<MockFrameTransformer>>();
|
||||
RTPSenderVideo::Config config;
|
||||
config.clock = &fake_clock_;
|
||||
config.rtp_sender = rtp_module_->RtpSender();
|
||||
|
||||
@ -873,6 +873,16 @@ rtc_source_set("test_renderer") {
|
||||
}
|
||||
}
|
||||
|
||||
rtc_library("mock_frame_transformer") {
|
||||
visibility = [ "*" ]
|
||||
testonly = true
|
||||
sources = [ "mock_frame_transformer.h" ]
|
||||
deps = [
|
||||
"../api:frame_transformer_interface",
|
||||
"../test:test_support",
|
||||
]
|
||||
}
|
||||
|
||||
if (is_mac) {
|
||||
rtc_library("test_renderer_objc") {
|
||||
testonly = true
|
||||
|
||||
51
test/mock_frame_transformer.h
Normal file
51
test/mock_frame_transformer.h
Normal file
@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright (c) 2020 The WebRTC project authors. All Rights Reserved.
|
||||
*
|
||||
* Use of this source code is governed by a BSD-style license
|
||||
* that can be found in the LICENSE file in the root of the source
|
||||
* tree. An additional intellectual property rights grant can be found
|
||||
* in the file PATENTS. All contributing project authors may
|
||||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
#ifndef TEST_MOCK_FRAME_TRANSFORMER_H_
|
||||
#define TEST_MOCK_FRAME_TRANSFORMER_H_
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "api/frame_transformer_interface.h"
|
||||
#include "test/gmock.h"
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
class MockFrameTransformer : public FrameTransformerInterface {
|
||||
public:
|
||||
MOCK_METHOD(void,
|
||||
TransformFrame,
|
||||
(std::unique_ptr<video_coding::EncodedFrame>,
|
||||
std::vector<uint8_t>,
|
||||
uint32_t),
|
||||
(override));
|
||||
MOCK_METHOD(void,
|
||||
Transform,
|
||||
(std::unique_ptr<TransformableFrameInterface>),
|
||||
(override));
|
||||
MOCK_METHOD(void,
|
||||
RegisterTransformedFrameCallback,
|
||||
(rtc::scoped_refptr<TransformedFrameCallback>),
|
||||
(override));
|
||||
MOCK_METHOD(void,
|
||||
RegisterTransformedFrameSinkCallback,
|
||||
(rtc::scoped_refptr<TransformedFrameCallback>, uint32_t),
|
||||
(override));
|
||||
MOCK_METHOD(void, UnregisterTransformedFrameCallback, (), (override));
|
||||
MOCK_METHOD(void,
|
||||
UnregisterTransformedFrameSinkCallback,
|
||||
(uint32_t),
|
||||
(override));
|
||||
};
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
#endif // TEST_MOCK_FRAME_TRANSFORMER_H_
|
||||
@ -622,6 +622,7 @@ if (rtc_include_tests) {
|
||||
"../test:field_trial",
|
||||
"../test:fileutils",
|
||||
"../test:frame_utils",
|
||||
"../test:mock_frame_transformer",
|
||||
"../test:mock_transport",
|
||||
"../test:null_transport",
|
||||
"../test:perf_test",
|
||||
|
||||
@ -23,6 +23,7 @@
|
||||
#include "rtc_base/task_utils/to_queued_task.h"
|
||||
#include "test/gmock.h"
|
||||
#include "test/gtest.h"
|
||||
#include "test/mock_frame_transformer.h"
|
||||
#include "video/rtp_video_stream_receiver.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -108,25 +109,6 @@ class TestRtpVideoStreamReceiver : public TestRtpVideoStreamReceiverInitializer,
|
||||
(override));
|
||||
};
|
||||
|
||||
class MockFrameTransformer : public FrameTransformerInterface {
|
||||
public:
|
||||
~MockFrameTransformer() override = default;
|
||||
MOCK_METHOD(void,
|
||||
TransformFrame,
|
||||
(std::unique_ptr<video_coding::EncodedFrame>,
|
||||
std::vector<uint8_t>,
|
||||
uint32_t),
|
||||
(override));
|
||||
MOCK_METHOD(void,
|
||||
RegisterTransformedFrameSinkCallback,
|
||||
(rtc::scoped_refptr<TransformedFrameCallback>, uint32_t),
|
||||
(override));
|
||||
MOCK_METHOD(void,
|
||||
UnregisterTransformedFrameSinkCallback,
|
||||
(uint32_t),
|
||||
(override));
|
||||
};
|
||||
|
||||
TEST(RtpVideoStreamReceiverFrameTransformerDelegateTest,
|
||||
RegisterTransformedFrameCallbackSinkOnInit) {
|
||||
TestRtpVideoStreamReceiver receiver;
|
||||
@ -157,7 +139,7 @@ TEST(RtpVideoStreamReceiverFrameTransformerDelegateTest,
|
||||
TEST(RtpVideoStreamReceiverFrameTransformerDelegateTest, TransformFrame) {
|
||||
TestRtpVideoStreamReceiver receiver;
|
||||
rtc::scoped_refptr<MockFrameTransformer> frame_transformer(
|
||||
new rtc::RefCountedObject<MockFrameTransformer>());
|
||||
new rtc::RefCountedObject<testing::NiceMock<MockFrameTransformer>>());
|
||||
rtc::scoped_refptr<RtpVideoStreamReceiverFrameTransformerDelegate> delegate(
|
||||
new rtc::RefCountedObject<RtpVideoStreamReceiverFrameTransformerDelegate>(
|
||||
&receiver, frame_transformer, rtc::Thread::Current(),
|
||||
|
||||
@ -36,6 +36,7 @@
|
||||
#include "test/field_trial.h"
|
||||
#include "test/gmock.h"
|
||||
#include "test/gtest.h"
|
||||
#include "test/mock_frame_transformer.h"
|
||||
|
||||
using ::testing::_;
|
||||
using ::testing::ElementsAre;
|
||||
@ -134,17 +135,6 @@ class MockRtpPacketSink : public RtpPacketSinkInterface {
|
||||
MOCK_METHOD1(OnRtpPacket, void(const RtpPacketReceived&));
|
||||
};
|
||||
|
||||
class MockFrameTransformer : public FrameTransformerInterface {
|
||||
public:
|
||||
MOCK_METHOD3(TransformFrame,
|
||||
void(std::unique_ptr<video_coding::EncodedFrame> frame,
|
||||
std::vector<uint8_t> additional_data,
|
||||
uint32_t ssrc));
|
||||
MOCK_METHOD2(RegisterTransformedFrameSinkCallback,
|
||||
void(rtc::scoped_refptr<TransformedFrameCallback>, uint32_t));
|
||||
MOCK_METHOD1(UnregisterTransformedFrameSinkCallback, void(uint32_t));
|
||||
};
|
||||
|
||||
constexpr uint32_t kSsrc = 111;
|
||||
constexpr uint16_t kSequenceNumber = 222;
|
||||
constexpr int kPayloadType = 100;
|
||||
@ -1126,7 +1116,7 @@ TEST_F(RtpVideoStreamReceiverTest, RepeatedSecondarySinkDisallowed) {
|
||||
|
||||
TEST_F(RtpVideoStreamReceiverTest, TransformFrame) {
|
||||
rtc::scoped_refptr<MockFrameTransformer> mock_frame_transformer =
|
||||
new rtc::RefCountedObject<MockFrameTransformer>();
|
||||
new rtc::RefCountedObject<testing::NiceMock<MockFrameTransformer>>();
|
||||
EXPECT_CALL(*mock_frame_transformer,
|
||||
RegisterTransformedFrameSinkCallback(_, config_.rtp.remote_ssrc));
|
||||
auto receiver = std::make_unique<RtpVideoStreamReceiver>(
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user