diff options
author | ernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-24 00:01:23 +0000 |
---|---|---|
committer | ernstm@chromium.org <ernstm@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-24 00:01:23 +0000 |
commit | 1155b87eb2d37441b196363a7f3ed96227663139 (patch) | |
tree | b8396f0f23364b98cf2ad12883c78aed079de010 /cc | |
parent | 17ea4430b5b35be0ac3d83115dd16412a5a08a01 (diff) | |
download | chromium_src-1155b87eb2d37441b196363a7f3ed96227663139.zip chromium_src-1155b87eb2d37441b196363a7f3ed96227663139.tar.gz chromium_src-1155b87eb2d37441b196363a7f3ed96227663139.tar.bz2 |
cc: Formatted render_surface_filters_unittest.cc in Chromium style
BUG=
Review URL: https://chromiumcodereview.appspot.com/12989034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@190127 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc')
-rw-r--r-- | cc/output/render_surface_filters_unittest.cc | 226 |
1 files changed, 111 insertions, 115 deletions
diff --git a/cc/output/render_surface_filters_unittest.cc b/cc/output/render_surface_filters_unittest.cc index 6898f23..f2f02647 100644 --- a/cc/output/render_surface_filters_unittest.cc +++ b/cc/output/render_surface_filters_unittest.cc @@ -14,132 +14,128 @@ namespace cc { namespace { // Checks whether op can be combined with a following color matrix. -bool isCombined(const WebFilterOperation& op) -{ - WebFilterOperations filters; - filters.append(op); - filters.append(WebFilterOperation::createBrightnessFilter(0)); // brightness(0) is identity. - WebFilterOperations optimized = RenderSurfaceFilters::Optimize(filters); - return optimized.size() == 1; +bool IsCombined(const WebFilterOperation& op) { + WebFilterOperations filters; + filters.append(op); + // brightness(0.0f) is identity. + filters.append(WebFilterOperation::createBrightnessFilter(0.0f)); + WebFilterOperations optimized = RenderSurfaceFilters::Optimize(filters); + return optimized.size() == 1; } -TEST(RenderSurfaceFiltersTest, testColorMatrixFiltersCombined) -{ - // Several filters should always combine for any amount between 0 and 1: - // grayscale, saturate, invert, contrast, opacity. - EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0))); - // Note that we use 0.3f to avoid "argument is truncated from 'double' to - // 'float'" warnings on Windows. 0.5 is exactly representable as a float, so - // there is no warning. - EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0.3f))); - EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(0.5))); - EXPECT_TRUE(isCombined(WebFilterOperation::createGrayscaleFilter(1))); - - EXPECT_TRUE(isCombined(WebFilterOperation::createSaturateFilter(0))); - EXPECT_TRUE(isCombined(WebFilterOperation::createSaturateFilter(0.3f))); - EXPECT_TRUE(isCombined(WebFilterOperation::createSaturateFilter(0.5))); - EXPECT_TRUE(isCombined(WebFilterOperation::createSaturateFilter(1))); - - EXPECT_TRUE(isCombined(WebFilterOperation::createInvertFilter(0))); - EXPECT_TRUE(isCombined(WebFilterOperation::createInvertFilter(0.3f))); - EXPECT_TRUE(isCombined(WebFilterOperation::createInvertFilter(0.5))); - EXPECT_TRUE(isCombined(WebFilterOperation::createInvertFilter(1))); - - EXPECT_TRUE(isCombined(WebFilterOperation::createContrastFilter(0))); - EXPECT_TRUE(isCombined(WebFilterOperation::createContrastFilter(0.3f))); - EXPECT_TRUE(isCombined(WebFilterOperation::createContrastFilter(0.5))); - EXPECT_TRUE(isCombined(WebFilterOperation::createContrastFilter(1))); - - EXPECT_TRUE(isCombined(WebFilterOperation::createOpacityFilter(0))); - EXPECT_TRUE(isCombined(WebFilterOperation::createOpacityFilter(0.3f))); - EXPECT_TRUE(isCombined(WebFilterOperation::createOpacityFilter(0.5))); - EXPECT_TRUE(isCombined(WebFilterOperation::createOpacityFilter(1))); - - // Brightness combines when amount <= 1 - EXPECT_TRUE(isCombined(WebFilterOperation::createBrightnessFilter(0.5))); - EXPECT_TRUE(isCombined(WebFilterOperation::createBrightnessFilter(1))); - EXPECT_FALSE(isCombined(WebFilterOperation::createBrightnessFilter(1.5))); - - // SaturatingBrightness combines only when amount == 0 - EXPECT_TRUE(isCombined(WebFilterOperation::createSaturatingBrightnessFilter(0))); - EXPECT_FALSE(isCombined(WebFilterOperation::createSaturatingBrightnessFilter(0.5))); - EXPECT_FALSE(isCombined(WebFilterOperation::createSaturatingBrightnessFilter(1))); - - // Several filters should never combine: blur, drop-shadow. - EXPECT_FALSE(isCombined(WebFilterOperation::createBlurFilter(3))); - EXPECT_FALSE(isCombined(WebFilterOperation::createDropShadowFilter(WebPoint(2, 2), 3, 0xffffffff))); - - // sepia and hue may or may not combine depending on the value. - EXPECT_TRUE(isCombined(WebFilterOperation::createSepiaFilter(0))); - EXPECT_FALSE(isCombined(WebFilterOperation::createSepiaFilter(1))); - EXPECT_TRUE(isCombined(WebFilterOperation::createHueRotateFilter(0))); - EXPECT_FALSE(isCombined(WebFilterOperation::createHueRotateFilter(180))); - - float matrix1[20] = { - 1, 0, 0, 0, 0, - 0, 1, 0, 0, 0, - 0, 0, 1, 0, 0, - 0, 0, 0, 1, 0, - }; - EXPECT_TRUE(isCombined(WebFilterOperation::createColorMatrixFilter(matrix1))); - - float matrix2[20] = { - 1, 1, 0, 0, 0, - 0, 1, 0, 0, 0, - 0, 0, 1, 0, 0, - 0, 0, 0, 1, 0, - }; - EXPECT_FALSE(isCombined(WebFilterOperation::createColorMatrixFilter(matrix2))); - - float matrix3[20] = { - 0.25, 0, 0, 0, 255*0.75, - 0, 1, 0, 0, 0, - 0, 0, 1, 0, 0, - 0, 0, 0, 1, 0, - }; - EXPECT_TRUE(isCombined(WebFilterOperation::createColorMatrixFilter(matrix3))); - - float matrix4[20] = { - -0.25, 0.75, 0, 0, 255*0.25, - 0, 1, 0, 0, 0, - 0, 0, 1, 0, 0, - 0, 0, 0, 1, 0, - }; - EXPECT_TRUE(isCombined(WebFilterOperation::createColorMatrixFilter(matrix4))); +TEST(RenderSurfaceFiltersTest, TestColorMatrixFiltersCombined) { + // Several filters should always combine for any amount between 0 and 1: + // grayscale, saturate, invert, contrast, opacity. + EXPECT_TRUE(IsCombined(WebFilterOperation::createGrayscaleFilter(0.0f))); + // Note that we use 0.3f to avoid "argument is truncated from 'double' to + // 'float'" warnings on Windows. 0.5f is exactly representable as a float, so + // there is no warning. + EXPECT_TRUE(IsCombined(WebFilterOperation::createGrayscaleFilter(0.3f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createGrayscaleFilter(0.5f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createGrayscaleFilter(1.0f))); + + EXPECT_TRUE(IsCombined(WebFilterOperation::createSaturateFilter(0.0f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createSaturateFilter(0.3f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createSaturateFilter(0.5))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createSaturateFilter(1.0f))); + + EXPECT_TRUE(IsCombined(WebFilterOperation::createInvertFilter(0.0f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createInvertFilter(0.3f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createInvertFilter(0.5))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createInvertFilter(1.0f))); + + EXPECT_TRUE(IsCombined(WebFilterOperation::createContrastFilter(0.0f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createContrastFilter(0.3f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createContrastFilter(0.5))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createContrastFilter(1.0f))); + + EXPECT_TRUE(IsCombined(WebFilterOperation::createOpacityFilter(0.0f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createOpacityFilter(0.3f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createOpacityFilter(0.5))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createOpacityFilter(1.0f))); + + // Brightness combines when amount <= 1 + EXPECT_TRUE(IsCombined(WebFilterOperation::createBrightnessFilter(0.5))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createBrightnessFilter(1.0f))); + EXPECT_FALSE(IsCombined(WebFilterOperation::createBrightnessFilter(1.5))); + + // SaturatingBrightness combines only when amount == 0 + EXPECT_TRUE( + IsCombined(WebFilterOperation::createSaturatingBrightnessFilter(0.0f))); + EXPECT_FALSE( + IsCombined(WebFilterOperation::createSaturatingBrightnessFilter(0.5))); + EXPECT_FALSE( + IsCombined(WebFilterOperation::createSaturatingBrightnessFilter(1.0f))); + + // Several filters should never combine: blur, drop-shadow. + EXPECT_FALSE(IsCombined(WebFilterOperation::createBlurFilter(3.0f))); + EXPECT_FALSE(IsCombined(WebFilterOperation::createDropShadowFilter( + WebPoint(2, 2), 3.0f, 0xffffffff))); + + // sepia and hue may or may not combine depending on the value. + EXPECT_TRUE(IsCombined(WebFilterOperation::createSepiaFilter(0.0f))); + EXPECT_FALSE(IsCombined(WebFilterOperation::createSepiaFilter(1.0f))); + EXPECT_TRUE(IsCombined(WebFilterOperation::createHueRotateFilter(0.0f))); + EXPECT_FALSE(IsCombined(WebFilterOperation::createHueRotateFilter(180.0f))); + + float matrix1[20] = { 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, }; + EXPECT_TRUE(IsCombined(WebFilterOperation::createColorMatrixFilter(matrix1))); + + float matrix2[20] = { 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, }; + EXPECT_FALSE( + IsCombined(WebFilterOperation::createColorMatrixFilter(matrix2))); + + float matrix3[20] = { 0.25f, 0.0f, 0.0f, 0.0f, 255.0f * 0.75f, + 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, }; + EXPECT_TRUE(IsCombined(WebFilterOperation::createColorMatrixFilter(matrix3))); + + float matrix4[20] = { -0.25f, 0.75f, 0.0f, 0.0f, 255.0f * 0.25f, + 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, }; + EXPECT_TRUE(IsCombined(WebFilterOperation::createColorMatrixFilter(matrix4))); } -TEST(RenderSurfaceFiltersTest, testOptimize) -{ - WebFilterOperation combines(WebFilterOperation::createBrightnessFilter(1)); - WebFilterOperation doesntCombine(WebFilterOperation::createBrightnessFilter(1.5)); +TEST(RenderSurfaceFiltersTest, TestOptimize) { + WebFilterOperation combines(WebFilterOperation::createBrightnessFilter(1.0f)); + WebFilterOperation doesnt_combine( + WebFilterOperation::createBrightnessFilter(1.5f)); - WebFilterOperations filters; - WebFilterOperations optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(0u, optimized.size()); + WebFilterOperations filters; + WebFilterOperations optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(0u, optimized.size()); - filters.append(combines); - optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(1u, optimized.size()); + filters.append(combines); + optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(1u, optimized.size()); - filters.append(combines); - optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(1u, optimized.size()); + filters.append(combines); + optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(1u, optimized.size()); - filters.append(doesntCombine); - optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(1u, optimized.size()); + filters.append(doesnt_combine); + optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(1u, optimized.size()); - filters.append(combines); - optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(2u, optimized.size()); + filters.append(combines); + optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(2u, optimized.size()); - filters.append(doesntCombine); - optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(2u, optimized.size()); + filters.append(doesnt_combine); + optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(2u, optimized.size()); - filters.append(doesntCombine); - optimized = RenderSurfaceFilters::Optimize(filters); - EXPECT_EQ(3u, optimized.size()); + filters.append(doesnt_combine); + optimized = RenderSurfaceFilters::Optimize(filters); + EXPECT_EQ(3u, optimized.size()); } } // namespace |