diff --git a/api/video/BUILD.gn b/api/video/BUILD.gn index 5cd543e1d3..d65f6412b4 100644 --- a/api/video/BUILD.gn +++ b/api/video/BUILD.gn @@ -403,10 +403,7 @@ rtc_library("frame_buffer_unittest") { if (rtc_include_tests) { rtc_library("video_unittests") { testonly = true - sources = [ - "video_frame_metadata_unittest.cc", - "video_stream_decoder_create_unittest.cc", - ] + sources = [ "video_stream_decoder_create_unittest.cc" ] deps = [ ":video_frame_metadata", ":video_frame_type", diff --git a/modules/rtp_rtcp/BUILD.gn b/modules/rtp_rtcp/BUILD.gn index a23f595da1..843d2f2de8 100644 --- a/modules/rtp_rtcp/BUILD.gn +++ b/modules/rtp_rtcp/BUILD.gn @@ -437,6 +437,17 @@ rtc_library("rtp_video_header") { ] } +rtc_source_set("rtp_video_header_unittest") { + testonly = true + sources = [ "source/rtp_video_header_unittest.cc" ] + deps = [ + ":rtp_video_header", + "../../api/video:video_frame_metadata", + "../../api/video:video_frame_type", + "../../test:test_support", + ] +} + rtc_library("fec_test_helper") { testonly = true sources = [ @@ -604,6 +615,7 @@ if (rtc_include_tests) { ":rtp_rtcp", ":rtp_rtcp_format", ":rtp_rtcp_legacy", + ":rtp_video_header_unittest", "../../api:array_view", "../../api:create_time_controller", "../../api:field_trials_registry", diff --git a/api/video/video_frame_metadata_unittest.cc b/modules/rtp_rtcp/source/rtp_video_header_unittest.cc similarity index 76% rename from api/video/video_frame_metadata_unittest.cc rename to modules/rtp_rtcp/source/rtp_video_header_unittest.cc index 1dd39e9142..c8439e1796 100644 --- a/api/video/video_frame_metadata_unittest.cc +++ b/modules/rtp_rtcp/source/rtp_video_header_unittest.cc @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 The WebRTC project authors. All Rights Reserved. + * Copyright (c) 2022 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 @@ -8,10 +8,10 @@ * be found in the AUTHORS file in the root of the source tree. */ -#include "api/video/video_frame_metadata.h" - -#include "api/video/video_frame_type.h" #include "modules/rtp_rtcp/source/rtp_video_header.h" + +#include "api/video/video_frame_metadata.h" +#include "api/video/video_frame_type.h" #include "test/gmock.h" #include "test/gtest.h" @@ -21,45 +21,42 @@ namespace { using ::testing::ElementsAre; using ::testing::IsEmpty; -// TODO(https://crbug.com/webrtc/14709): Move all of these tests to -// rtp_video_header_unittest.cc, they're excercising GetAsMetadata(). - -TEST(VideoFrameMetadata, GetFrameTypeReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetFrameType) { RTPVideoHeader video_header; video_header.frame_type = VideoFrameType::kVideoFrameKey; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_EQ(metadata.GetFrameType(), VideoFrameType::kVideoFrameKey); } -TEST(VideoFrameMetadata, GetWidthReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetWidth) { RTPVideoHeader video_header; video_header.width = 1280u; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_EQ(metadata.GetWidth(), video_header.width); } -TEST(VideoFrameMetadata, GetHeightReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetHeight) { RTPVideoHeader video_header; video_header.height = 720u; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_EQ(metadata.GetHeight(), video_header.height); } -TEST(VideoFrameMetadata, GetRotationReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetRotation) { RTPVideoHeader video_header; video_header.rotation = VideoRotation::kVideoRotation_90; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_EQ(metadata.GetRotation(), VideoRotation::kVideoRotation_90); } -TEST(VideoFrameMetadata, GetContentTypeReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetContentType) { RTPVideoHeader video_header; video_header.content_type = VideoContentType::SCREENSHARE; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_EQ(metadata.GetContentType(), VideoContentType::SCREENSHARE); } -TEST(VideoFrameMetadata, GetFrameIdReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetFrameId) { RTPVideoHeader video_header; RTPVideoHeader::GenericDescriptorInfo& generic = video_header.generic.emplace(); @@ -68,14 +65,14 @@ TEST(VideoFrameMetadata, GetFrameIdReturnsCorrectValue) { EXPECT_EQ(metadata.GetFrameId().value(), 10); } -TEST(VideoFrameMetadata, HasNoFrameIdForHeaderWithoutGeneric) { +TEST(RTPVideoHeaderTest, GetAsMetadataHasNoFrameIdForHeaderWithoutGeneric) { RTPVideoHeader video_header; VideoFrameMetadata metadata = video_header.GetAsMetadata(); ASSERT_FALSE(video_header.generic); - EXPECT_EQ(metadata.GetFrameId(), absl::nullopt); + EXPECT_FALSE(metadata.GetFrameId().has_value()); } -TEST(VideoFrameMetadata, GetSpatialIndexReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetSpatialIndex) { RTPVideoHeader video_header; RTPVideoHeader::GenericDescriptorInfo& generic = video_header.generic.emplace(); @@ -84,14 +81,15 @@ TEST(VideoFrameMetadata, GetSpatialIndexReturnsCorrectValue) { EXPECT_EQ(metadata.GetSpatialIndex(), 2); } -TEST(VideoFrameMetadata, SpatialIndexIsZeroForHeaderWithoutGeneric) { +TEST(RTPVideoHeaderTest, + GetAsMetadataSpatialIndexIsZeroForHeaderWithoutGeneric) { RTPVideoHeader video_header; VideoFrameMetadata metadata = video_header.GetAsMetadata(); ASSERT_FALSE(video_header.generic); EXPECT_EQ(metadata.GetSpatialIndex(), 0); } -TEST(VideoFrameMetadata, GetTemporalIndexReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetTemporalIndex) { RTPVideoHeader video_header; RTPVideoHeader::GenericDescriptorInfo& generic = video_header.generic.emplace(); @@ -100,14 +98,15 @@ TEST(VideoFrameMetadata, GetTemporalIndexReturnsCorrectValue) { EXPECT_EQ(metadata.GetTemporalIndex(), 3); } -TEST(VideoFrameMetadata, TemporalIndexIsZeroForHeaderWithoutGeneric) { +TEST(RTPVideoHeaderTest, + GetAsMetadataTemporalIndexIsZeroForHeaderWithoutGeneric) { RTPVideoHeader video_header; VideoFrameMetadata metadata = video_header.GetAsMetadata(); ASSERT_FALSE(video_header.generic); EXPECT_EQ(metadata.GetTemporalIndex(), 0); } -TEST(VideoFrameMetadata, GetFrameDependenciesReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetFrameDependencies) { RTPVideoHeader video_header; RTPVideoHeader::GenericDescriptorInfo& generic = video_header.generic.emplace(); @@ -116,14 +115,15 @@ TEST(VideoFrameMetadata, GetFrameDependenciesReturnsCorrectValue) { EXPECT_THAT(metadata.GetFrameDependencies(), ElementsAre(5, 6, 7)); } -TEST(VideoFrameMetadata, FrameDependencyVectorIsEmptyForHeaderWithoutGeneric) { +TEST(RTPVideoHeaderTest, + GetAsMetadataFrameDependencyIsEmptyForHeaderWithoutGeneric) { RTPVideoHeader video_header; VideoFrameMetadata metadata = video_header.GetAsMetadata(); ASSERT_FALSE(video_header.generic); EXPECT_THAT(metadata.GetFrameDependencies(), IsEmpty()); } -TEST(VideoFrameMetadata, GetDecodeTargetIndicationsReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetDecodeTargetIndications) { RTPVideoHeader video_header; RTPVideoHeader::GenericDescriptorInfo& generic = video_header.generic.emplace(); @@ -133,29 +133,29 @@ TEST(VideoFrameMetadata, GetDecodeTargetIndicationsReturnsCorrectValue) { ElementsAre(DecodeTargetIndication::kSwitch)); } -TEST(VideoFrameMetadata, - DecodeTargetIndicationsVectorIsEmptyForHeaderWithoutGeneric) { +TEST(RTPVideoHeaderTest, + GetAsMetadataGetDecodeTargetIndicationsIsEmptyForHeaderWithoutGeneric) { RTPVideoHeader video_header; VideoFrameMetadata metadata = video_header.GetAsMetadata(); ASSERT_FALSE(video_header.generic); EXPECT_THAT(metadata.GetDecodeTargetIndications(), IsEmpty()); } -TEST(VideoFrameMetadata, GetIsLastFrameInPictureReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetIsLastFrameInPicture) { RTPVideoHeader video_header; video_header.is_last_frame_in_picture = false; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_FALSE(metadata.GetIsLastFrameInPicture()); } -TEST(VideoFrameMetadata, GetSimulcastIdxReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetSimulcastIdx) { RTPVideoHeader video_header; video_header.simulcastIdx = 123; VideoFrameMetadata metadata = video_header.GetAsMetadata(); EXPECT_EQ(metadata.GetSimulcastIdx(), 123); } -TEST(VideoFrameMetadata, GetCodecReturnsCorrectValue) { +TEST(RTPVideoHeaderTest, GetAsMetadataGetCodec) { RTPVideoHeader video_header; video_header.codec = VideoCodecType::kVideoCodecVP9; VideoFrameMetadata metadata = video_header.GetAsMetadata();