OLD | NEW |
| (Empty) |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "cc/resources/scoped_gpu_raster.h" | |
6 #include "cc/test/test_context_provider.h" | |
7 #include "testing/gtest/include/gtest/gtest.h" | |
8 | |
9 namespace cc { | |
10 namespace { | |
11 | |
12 class ScopedGpuRasterTest : public testing::Test { | |
13 public: | |
14 ScopedGpuRasterTest() {} | |
15 }; | |
16 | |
17 // Releasing ScopedGpuRaster should restore GL_UNPACK_ALIGNMENT == 4. | |
18 TEST(ScopedGpuRasterTest, RestoresUnpackAlignment) { | |
19 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create(); | |
20 EXPECT_TRUE(provider->BindToCurrentThread()); | |
21 gpu::gles2::GLES2Interface* gl = provider->ContextGL(); | |
22 GLint unpack_alignment = 0; | |
23 gl->GetIntegerv(GL_UNPACK_ALIGNMENT, &unpack_alignment); | |
24 EXPECT_EQ(4, unpack_alignment); | |
25 | |
26 { | |
27 scoped_ptr<ScopedGpuRaster> scoped_gpu_raster( | |
28 new ScopedGpuRaster(provider.get())); | |
29 gl->PixelStorei(GL_UNPACK_ALIGNMENT, 1); | |
30 gl->GetIntegerv(GL_UNPACK_ALIGNMENT, &unpack_alignment); | |
31 EXPECT_EQ(1, unpack_alignment); | |
32 } | |
33 | |
34 gl->GetIntegerv(GL_UNPACK_ALIGNMENT, &unpack_alignment); | |
35 EXPECT_EQ(4, unpack_alignment); | |
36 } | |
37 | |
38 } // namespace | |
39 } // namespace cc | |
OLD | NEW |