diff options
author | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-17 20:04:29 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-03-17 20:04:29 +0000 |
commit | 40e5ac1f115a7905372d3414debaac63a5244886 (patch) | |
tree | 1613d237a6e69e0d1f95b1953b8b2572a9f5b52a /media/base/data_buffer_unittest.cc | |
parent | b0c2bda2081e3627baac5814d6c66ef121b88515 (diff) | |
download | chromium_src-40e5ac1f115a7905372d3414debaac63a5244886.zip chromium_src-40e5ac1f115a7905372d3414debaac63a5244886.tar.gz chromium_src-40e5ac1f115a7905372d3414debaac63a5244886.tar.bz2 |
andrew's patch
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11904 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/data_buffer_unittest.cc')
-rw-r--r-- | media/base/data_buffer_unittest.cc | 47 |
1 files changed, 23 insertions, 24 deletions
diff --git a/media/base/data_buffer_unittest.cc b/media/base/data_buffer_unittest.cc index 21334f8..b0a45a1 100644 --- a/media/base/data_buffer_unittest.cc +++ b/media/base/data_buffer_unittest.cc @@ -9,6 +9,7 @@ using media::DataBuffer; TEST(DataBufferTest, Basic) { + const size_t kBufferSize = 32; const char kData[] = "hello"; const size_t kDataSize = arraysize(kData); const char kNewData[] = "chromium"; @@ -19,13 +20,18 @@ TEST(DataBufferTest, Basic) { const base::TimeDelta kDurationB = base::TimeDelta::FromMicroseconds(5678); // Create our buffer and copy some data into it. + char* data = new char[kBufferSize]; + ASSERT_TRUE(data); + size_t copied = base::strlcpy(data, kData, kBufferSize); + EXPECT_EQ(kDataSize, copied + 1); + // Create a DataBuffer. - scoped_refptr<DataBuffer> buffer = new DataBuffer(); - ASSERT_TRUE(buffer); + scoped_refptr<DataBuffer> buffer; + buffer = new DataBuffer(data, kBufferSize, kDataSize, + kTimestampA, kDurationA); + ASSERT_TRUE(buffer.get()); // Test StreamSample implementation. - buffer->SetTimestamp(kTimestampA); - buffer->SetDuration(kDurationA); EXPECT_TRUE(kTimestampA == buffer->GetTimestamp()); EXPECT_TRUE(kDurationA == buffer->GetDuration()); EXPECT_FALSE(buffer->IsEndOfStream()); @@ -35,6 +41,19 @@ TEST(DataBufferTest, Basic) { EXPECT_TRUE(kTimestampB == buffer->GetTimestamp()); EXPECT_TRUE(kDurationB == buffer->GetDuration()); + // Test Buffer implementation. + ASSERT_EQ(data, buffer->GetData()); + EXPECT_EQ(kDataSize, buffer->GetDataSize()); + EXPECT_STREQ(kData, buffer->GetData()); + + // Test WritableBuffer implementation. + ASSERT_EQ(data, buffer->GetWritableData()); + EXPECT_EQ(kBufferSize, buffer->GetBufferSize()); + copied = base::strlcpy(data, kNewData, kBufferSize); + EXPECT_EQ(kNewDataSize, copied + 1); + buffer->SetDataSize(kNewDataSize); + EXPECT_EQ(kNewDataSize, buffer->GetDataSize()); + buffer->SetEndOfStream(true); EXPECT_TRUE(buffer->IsEndOfStream()); buffer->SetEndOfStream(false); @@ -43,24 +62,4 @@ TEST(DataBufferTest, Basic) { EXPECT_TRUE(buffer->IsDiscontinuous()); buffer->SetDiscontinuous(false); EXPECT_FALSE(buffer->IsDiscontinuous()); - - // Test WritableBuffer implementation. - EXPECT_FALSE(buffer->GetData()); - uint8* data = buffer->GetWritableData(kDataSize); - ASSERT_TRUE(data); - ASSERT_EQ(buffer->GetDataSize(), kDataSize); - memcpy(data, kData, kDataSize); - const uint8* read_only_data = buffer->GetData(); - ASSERT_EQ(data, read_only_data); - ASSERT_EQ(0, memcmp(read_only_data, kData, kDataSize)); - - data = buffer->GetWritableData(kNewDataSize + 10); - ASSERT_TRUE(data); - ASSERT_EQ(buffer->GetDataSize(), kNewDataSize + 10); - memcpy(data, kNewData, kNewDataSize); - read_only_data = buffer->GetData(); - buffer->SetDataSize(kNewDataSize); - EXPECT_EQ(buffer->GetDataSize(), kNewDataSize); - ASSERT_EQ(data, read_only_data); - EXPECT_EQ(0, memcmp(read_only_data, kNewData, kNewDataSize)); } |