/src/mozilla-central/dom/media/gtest/TestVideoSegment.cpp
Line | Count | Source (jump to first uncovered line) |
1 | | /* This Source Code Form is subject to the terms of the Mozilla Public |
2 | | * License, v. 2.0. If a copy of the MPL was not distributed with this |
3 | | * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
4 | | |
5 | | #include "gtest/gtest.h" |
6 | | #include "VideoSegment.h" |
7 | | |
8 | | using namespace mozilla; |
9 | | |
10 | | namespace mozilla { |
11 | | namespace layer { |
12 | | class Image; |
13 | | } // namespace layer |
14 | | } // namespace mozilla |
15 | | |
16 | | TEST(VideoSegment, TestAppendFrameForceBlack) |
17 | 0 | { |
18 | 0 | RefPtr<layers::Image> testImage = nullptr; |
19 | 0 |
|
20 | 0 | VideoSegment segment; |
21 | 0 | segment.AppendFrame(testImage.forget(), |
22 | 0 | mozilla::StreamTime(90000), |
23 | 0 | mozilla::gfx::IntSize(640, 480), |
24 | 0 | PRINCIPAL_HANDLE_NONE, |
25 | 0 | true); |
26 | 0 |
|
27 | 0 | VideoSegment::ChunkIterator iter(segment); |
28 | 0 | while (!iter.IsEnded()) { |
29 | 0 | VideoChunk chunk = *iter; |
30 | 0 | EXPECT_TRUE(chunk.mFrame.GetForceBlack()); |
31 | 0 | iter.Next(); |
32 | 0 | } |
33 | 0 | } |
34 | | |
35 | | TEST(VideoSegment, TestAppendFrameNotForceBlack) |
36 | 0 | { |
37 | 0 | RefPtr<layers::Image> testImage = nullptr; |
38 | 0 |
|
39 | 0 | VideoSegment segment; |
40 | 0 | segment.AppendFrame(testImage.forget(), |
41 | 0 | mozilla::StreamTime(90000), |
42 | 0 | mozilla::gfx::IntSize(640, 480), |
43 | 0 | PRINCIPAL_HANDLE_NONE); |
44 | 0 |
|
45 | 0 | VideoSegment::ChunkIterator iter(segment); |
46 | 0 | while (!iter.IsEnded()) { |
47 | 0 | VideoChunk chunk = *iter; |
48 | 0 | EXPECT_FALSE(chunk.mFrame.GetForceBlack()); |
49 | 0 | iter.Next(); |
50 | 0 | } |
51 | 0 | } |