summaryrefslogtreecommitdiffstats
path: root/media/base/bit_reader_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'media/base/bit_reader_unittest.cc')
-rw-r--r--media/base/bit_reader_unittest.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/media/base/bit_reader_unittest.cc b/media/base/bit_reader_unittest.cc
index 48e8c5e..3dca9c6 100644
--- a/media/base/bit_reader_unittest.cc
+++ b/media/base/bit_reader_unittest.cc
@@ -45,4 +45,23 @@ TEST(BitReaderTest, ReadBeyondEndTest) {
EXPECT_TRUE(reader1.ReadBits(0, &value8));
}
+TEST(BitReaderTest, SkipBitsTest) {
+ uint8 value8;
+ uint8 buffer[] = { 0x0a, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
+ BitReader reader1(buffer, sizeof(buffer));
+
+ EXPECT_TRUE(reader1.SkipBits(2));
+ EXPECT_TRUE(reader1.ReadBits(3, &value8));
+ EXPECT_EQ(value8, 1);
+ EXPECT_TRUE(reader1.SkipBits(11));
+ EXPECT_TRUE(reader1.ReadBits(8, &value8));
+ EXPECT_EQ(value8, 3);
+ EXPECT_TRUE(reader1.SkipBits(76));
+ EXPECT_TRUE(reader1.ReadBits(4, &value8));
+ EXPECT_EQ(value8, 13);
+ EXPECT_FALSE(reader1.SkipBits(100));
+ EXPECT_TRUE(reader1.SkipBits(0));
+ EXPECT_FALSE(reader1.SkipBits(1));
+}
+
} // namespace media