Chromium Code Reviews| Index: media/base/video_frame_unittest.cc |
| diff --git a/media/base/video_frame_unittest.cc b/media/base/video_frame_unittest.cc |
| index eabb21b0dc1edfd3aa8b7becf0d9808f086b910f..636a1a682ee4dd3661578698db8c96e18ebc5889 100644 |
| --- a/media/base/video_frame_unittest.cc |
| +++ b/media/base/video_frame_unittest.cc |
| @@ -229,6 +229,8 @@ static void FrameNoLongerNeededCallback( |
| TEST(VideoFrame, WrapVideoFrame) { |
| const int kWidth = 4; |
| const int kHeight = 4; |
| + const base::TimeDelta kFrameDuration = base::TimeDelta::FromMicroseconds(42); |
| + |
| scoped_refptr<media::VideoFrame> frame; |
| bool done_callback_was_run = false; |
| { |
| @@ -238,11 +240,13 @@ TEST(VideoFrame, WrapVideoFrame) { |
| gfx::Rect visible_rect(1, 1, 1, 1); |
| gfx::Size natural_size = visible_rect.size(); |
| - frame = media::VideoFrame::WrapVideoFrame( |
| - wrapped_frame, visible_rect, natural_size); |
| - frame->AddDestructionObserver( |
| - base::Bind(&FrameNoLongerNeededCallback, wrapped_frame, |
| - &done_callback_was_run)); |
| + wrapped_frame->metadata()->SetTimeDelta( |
| + media::VideoFrameMetadata::FRAME_DURATION, kFrameDuration); |
| + frame = media::VideoFrame::WrapVideoFrame(wrapped_frame, visible_rect, |
| + natural_size); |
| + frame->AddDestructionObserver(base::Bind( |
| + &FrameNoLongerNeededCallback, wrapped_frame, &done_callback_was_run)); |
| + |
| EXPECT_EQ(wrapped_frame->coded_size(), frame->coded_size()); |
| EXPECT_EQ(wrapped_frame->data(media::VideoFrame::kYPlane), |
| frame->data(media::VideoFrame::kYPlane)); |
| @@ -250,6 +254,23 @@ TEST(VideoFrame, WrapVideoFrame) { |
| EXPECT_EQ(visible_rect, frame->visible_rect()); |
| EXPECT_NE(wrapped_frame->natural_size(), frame->natural_size()); |
| EXPECT_EQ(natural_size, frame->natural_size()); |
| + |
| + // Verify metada was copied to the wrapped frame |
|
watk
2016/03/02 21:25:16
s/metada/metadata
Full stop.
tguilbert
2016/03/03 21:42:04
Done.
|
| + base::TimeDelta frame_duration; |
| + bool frame_has_duration = frame->metadata()->GetTimeDelta( |
| + media::VideoFrameMetadata::FRAME_DURATION, &frame_duration); |
| + |
| + EXPECT_TRUE(frame_has_duration); |
| + if (frame_has_duration) { |
|
watk
2016/03/02 21:25:16
No need to handle !frame_has_duration because that
tguilbert
2016/03/03 21:42:04
Good to know, thank you for the tip.
|
| + EXPECT_EQ(frame_duration, kFrameDuration); |
| + |
| + // Verify the metadata copy was a deep copy |
|
watk
2016/03/02 21:25:16
Full stop.
tguilbert
2016/03/03 21:42:04
Done.
|
| + wrapped_frame->metadata()->Clear(); |
| + EXPECT_NE( |
| + wrapped_frame->metadata()->HasKey( |
| + media::VideoFrameMetadata::FRAME_DURATION), |
| + frame->metadata()->HasKey(media::VideoFrameMetadata::FRAME_DURATION)); |
| + } |
| } |
| EXPECT_FALSE(done_callback_was_run); |