Index: gpu/command_buffer/common/gles2_cmd_utils_unittest.cc |
=================================================================== |
--- gpu/command_buffer/common/gles2_cmd_utils_unittest.cc (revision 0) |
+++ gpu/command_buffer/common/gles2_cmd_utils_unittest.cc (revision 0) |
@@ -0,0 +1,98 @@ |
+// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "gpu/command_buffer/common/gles2_cmd_utils.h" |
+ |
+#include <GLES2/gl2.h> |
+#include <GLES2/gl2ext.h> |
+#include <GLES2/gles2_command_buffer.h> |
+ |
+#include "testing/gtest/include/gtest/gtest.h" |
+ |
+namespace gpu { |
+namespace gles2 { |
+ |
+class GLES2UtilTest : public testing:: Test { |
+ public: |
+ GLES2UtilTest() |
+ : util_(0) { |
+ } |
+ |
+ protected: |
+ GLES2Util util_; |
+}; |
+ |
+TEST_F(GLES2UtilTest, ComputeImageDataSizeFormats) { |
+ const int kWidth = 16; |
+ const int kHeight = 12; |
+ uint32 size; |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 3, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGBA, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 4, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_LUMINANCE, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 1, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_LUMINANCE_ALPHA, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 2, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_BGRA_EXT, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 4, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_ALPHA, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 1, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_DEPTH_COMPONENT, GL_UNSIGNED_SHORT, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 2, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_DEPTH_STENCIL_OES, GL_UNSIGNED_INT_24_8_OES, 1, |
+ &size)); |
+ EXPECT_EQ(kWidth * kHeight * 4, size); |
+} |
+ |
+TEST_F(GLES2UtilTest, ComputeImageDataSizeTypes) { |
+ const int kWidth = 16; |
+ const int kHeight = 12; |
+ uint32 size; |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGBA, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 4, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGBA, GL_UNSIGNED_SHORT_4_4_4_4, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 2, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGBA, GL_UNSIGNED_SHORT_5_5_5_1, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 2, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGB, GL_UNSIGNED_SHORT_5_6_5, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 2, size); |
+} |
+ |
+TEST_F(GLES2UtilTest, ComputeImageDataSizeUnpackAlignment) { |
+ const int kWidth = 19; |
+ const int kHeight = 12; |
+ uint32 size; |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, 1, &size)); |
+ EXPECT_EQ(kWidth * kHeight * 3, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, 2, &size)); |
+ EXPECT_EQ((kWidth * 3 + 1) * (kHeight - 1) + |
+ kWidth * 3, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, 4, &size)); |
+ EXPECT_EQ((kWidth * 3 + 3) * (kHeight - 1) + |
+ kWidth * 3, size); |
+ EXPECT_TRUE(GLES2Util::ComputeImageDataSize( |
+ kWidth, kHeight, GL_RGB, GL_UNSIGNED_BYTE, 8, &size)); |
+ EXPECT_EQ((kWidth * 3 + 7) * (kHeight - 1) + |
+ kWidth * 3, size); |
+} |
+ |
+} // namespace gles2 |
+} // namespace gpu |
+ |
Property changes on: gpu\command_buffer\common\gles2_cmd_utils_unittest.cc |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |