Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(36)

Side by Side Diff: cc/render_surface_filters_unittest.cc

Issue 11189043: cc: Rename cc classes and members to match filenames (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "config.h" 5 #include "config.h"
6 6
7 #include "CCRenderSurfaceFilters.h" 7 #include "CCRenderSurfaceFilters.h"
8 8
9 #include "cc/test/compositor_fake_web_graphics_context_3d.h" 9 #include "cc/test/compositor_fake_web_graphics_context_3d.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
11 #include <public/WebFilterOperation.h> 11 #include <public/WebFilterOperation.h>
12 #include <public/WebFilterOperations.h> 12 #include <public/WebFilterOperations.h>
13 13
14 using namespace cc; 14 using namespace cc;
15 using namespace WebKit; 15 using namespace WebKit;
16 16
17 namespace { 17 namespace {
18 18
19 // Checks whether op can be combined with a following color matrix. 19 // Checks whether op can be combined with a following color matrix.
20 bool isCombined(const WebFilterOperation& op) 20 bool isCombined(const WebFilterOperation& op)
21 { 21 {
22 WebFilterOperations filters; 22 WebFilterOperations filters;
23 filters.append(op); 23 filters.append(op);
24 filters.append(WebFilterOperation::createBrightnessFilter(0)); // brightness (0) is identity. 24 filters.append(WebFilterOperation::createBrightnessFilter(0)); // brightness (0) is identity.
25 WebFilterOperations optimized = CCRenderSurfaceFilters::optimize(filters); 25 WebFilterOperations optimized = RenderSurfaceFilters::optimize(filters);
26 return optimized.size() == 1; 26 return optimized.size() == 1;
27 } 27 }
28 28
29 TEST(CCRenderSurfaceFiltersTest, testColorMatrixFiltersCombined) 29 TEST(RenderSurfaceFiltersTest, testColorMatrixFiltersCombined)
30 { 30 {
31 // Several filters should always combine for any amount between 0 and 1: 31 // Several filters should always combine for any amount between 0 and 1:
32 // grayscale, saturate, invert, contrast, opacity. 32 // grayscale, saturate, invert, contrast, opacity.
33 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0))); 33 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0)));
34 // Note that we use 0.3f to avoid "argument is truncated from 'double' to 34 // Note that we use 0.3f to avoid "argument is truncated from 'double' to
35 // 'float'" warnings on Windows. 0.5 is exactly representable as a float, so 35 // 'float'" warnings on Windows. 0.5 is exactly representable as a float, so
36 // there is no warning. 36 // there is no warning.
37 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0.3f))); 37 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0.3f)));
38 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0.5))); 38 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0.5)));
39 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(1))); 39 EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(1)));
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 96
97 float matrix4[20] = { 97 float matrix4[20] = {
98 -0.25, 0.75, 0, 0, 255*0.25, 98 -0.25, 0.75, 0, 0, 255*0.25,
99 0, 1, 0, 0, 0, 99 0, 1, 0, 0, 0,
100 0, 0, 1, 0, 0, 100 0, 0, 1, 0, 0,
101 0, 0, 0, 1, 0, 101 0, 0, 0, 1, 0,
102 }; 102 };
103 EXPECT_TRUE(isCombined(WebFilterOperation::createColorMatrixFilter(matrix4)) ); 103 EXPECT_TRUE(isCombined(WebFilterOperation::createColorMatrixFilter(matrix4)) );
104 } 104 }
105 105
106 TEST(CCRenderSurfaceFiltersTest, testOptimize) 106 TEST(RenderSurfaceFiltersTest, testOptimize)
107 { 107 {
108 WebFilterOperation combines(WebFilterOperation::createBrightnessFilter(0)); 108 WebFilterOperation combines(WebFilterOperation::createBrightnessFilter(0));
109 WebFilterOperation doesntCombine(WebFilterOperation::createBrightnessFilter( 1)); 109 WebFilterOperation doesntCombine(WebFilterOperation::createBrightnessFilter( 1));
110 110
111 WebFilterOperations filters; 111 WebFilterOperations filters;
112 WebFilterOperations optimized = CCRenderSurfaceFilters::optimize(filters); 112 WebFilterOperations optimized = RenderSurfaceFilters::optimize(filters);
113 EXPECT_EQ(0u, optimized.size()); 113 EXPECT_EQ(0u, optimized.size());
114 114
115 filters.append(combines); 115 filters.append(combines);
116 optimized = CCRenderSurfaceFilters::optimize(filters); 116 optimized = RenderSurfaceFilters::optimize(filters);
117 EXPECT_EQ(1u, optimized.size()); 117 EXPECT_EQ(1u, optimized.size());
118 118
119 filters.append(combines); 119 filters.append(combines);
120 optimized = CCRenderSurfaceFilters::optimize(filters); 120 optimized = RenderSurfaceFilters::optimize(filters);
121 EXPECT_EQ(1u, optimized.size()); 121 EXPECT_EQ(1u, optimized.size());
122 122
123 filters.append(doesntCombine); 123 filters.append(doesntCombine);
124 optimized = CCRenderSurfaceFilters::optimize(filters); 124 optimized = RenderSurfaceFilters::optimize(filters);
125 EXPECT_EQ(1u, optimized.size()); 125 EXPECT_EQ(1u, optimized.size());
126 126
127 filters.append(combines); 127 filters.append(combines);
128 optimized = CCRenderSurfaceFilters::optimize(filters); 128 optimized = RenderSurfaceFilters::optimize(filters);
129 EXPECT_EQ(2u, optimized.size()); 129 EXPECT_EQ(2u, optimized.size());
130 130
131 filters.append(doesntCombine); 131 filters.append(doesntCombine);
132 optimized = CCRenderSurfaceFilters::optimize(filters); 132 optimized = RenderSurfaceFilters::optimize(filters);
133 EXPECT_EQ(2u, optimized.size()); 133 EXPECT_EQ(2u, optimized.size());
134 134
135 filters.append(doesntCombine); 135 filters.append(doesntCombine);
136 optimized = CCRenderSurfaceFilters::optimize(filters); 136 optimized = RenderSurfaceFilters::optimize(filters);
137 EXPECT_EQ(3u, optimized.size()); 137 EXPECT_EQ(3u, optimized.size());
138 } 138 }
139 139
140 } // namespace 140 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698