Loading libs/hwui/Android.mk +4 −3 Original line number Diff line number Diff line Loading @@ -238,6 +238,7 @@ LOCAL_CFLAGS := \ LOCAL_SRC_FILES += \ $(hwui_test_common_src_files) \ tests/unit/BufferPoolTests.cpp \ tests/unit/CanvasStateTests.cpp \ tests/unit/ClipAreaTests.cpp \ tests/unit/CrashHandlerInjector.cpp \ Loading @@ -247,11 +248,11 @@ LOCAL_SRC_FILES += \ tests/unit/GpuMemoryTrackerTests.cpp \ tests/unit/LayerUpdateQueueTests.cpp \ tests/unit/LinearAllocatorTests.cpp \ tests/unit/VectorDrawableTests.cpp \ tests/unit/OffscreenBufferPoolTests.cpp \ tests/unit/SkiaBehaviorTests.cpp \ tests/unit/StringUtilsTests.cpp \ tests/unit/BufferPoolTests.cpp \ tests/unit/TextDropShadowCacheTests.cpp tests/unit/TextDropShadowCacheTests.cpp \ tests/unit/VectorDrawableTests.cpp ifeq (true, $(HWUI_NEW_OPS)) LOCAL_SRC_FILES += \ Loading libs/hwui/tests/unit/SkiaBehaviorTests.cpp 0 → 100644 +43 −0 Original line number Diff line number Diff line /* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "tests/common/TestUtils.h" #include <gtest/gtest.h> #include <SkShader.h> using namespace android; using namespace android::uirenderer; /** * 1x1 bitmaps must not be optimized into solid color shaders, since HWUI can't * compose/render color shaders */ TEST(SkiaBehavior, CreateBitmapShader1x1) { SkBitmap origBitmap = TestUtils::createSkBitmap(1, 1); std::unique_ptr<SkShader> s(SkShader::CreateBitmapShader( origBitmap, SkShader::kClamp_TileMode, SkShader::kRepeat_TileMode)); SkBitmap bitmap; SkShader::TileMode xy[2]; ASSERT_TRUE(s->isABitmap(&bitmap, nullptr, xy)) << "1x1 bitmap shader must query as bitmap shader"; EXPECT_EQ(SkShader::kClamp_TileMode, xy[0]); EXPECT_EQ(SkShader::kRepeat_TileMode, xy[1]); EXPECT_EQ(origBitmap.pixelRef(), bitmap.pixelRef()); } Loading
libs/hwui/Android.mk +4 −3 Original line number Diff line number Diff line Loading @@ -238,6 +238,7 @@ LOCAL_CFLAGS := \ LOCAL_SRC_FILES += \ $(hwui_test_common_src_files) \ tests/unit/BufferPoolTests.cpp \ tests/unit/CanvasStateTests.cpp \ tests/unit/ClipAreaTests.cpp \ tests/unit/CrashHandlerInjector.cpp \ Loading @@ -247,11 +248,11 @@ LOCAL_SRC_FILES += \ tests/unit/GpuMemoryTrackerTests.cpp \ tests/unit/LayerUpdateQueueTests.cpp \ tests/unit/LinearAllocatorTests.cpp \ tests/unit/VectorDrawableTests.cpp \ tests/unit/OffscreenBufferPoolTests.cpp \ tests/unit/SkiaBehaviorTests.cpp \ tests/unit/StringUtilsTests.cpp \ tests/unit/BufferPoolTests.cpp \ tests/unit/TextDropShadowCacheTests.cpp tests/unit/TextDropShadowCacheTests.cpp \ tests/unit/VectorDrawableTests.cpp ifeq (true, $(HWUI_NEW_OPS)) LOCAL_SRC_FILES += \ Loading
libs/hwui/tests/unit/SkiaBehaviorTests.cpp 0 → 100644 +43 −0 Original line number Diff line number Diff line /* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include "tests/common/TestUtils.h" #include <gtest/gtest.h> #include <SkShader.h> using namespace android; using namespace android::uirenderer; /** * 1x1 bitmaps must not be optimized into solid color shaders, since HWUI can't * compose/render color shaders */ TEST(SkiaBehavior, CreateBitmapShader1x1) { SkBitmap origBitmap = TestUtils::createSkBitmap(1, 1); std::unique_ptr<SkShader> s(SkShader::CreateBitmapShader( origBitmap, SkShader::kClamp_TileMode, SkShader::kRepeat_TileMode)); SkBitmap bitmap; SkShader::TileMode xy[2]; ASSERT_TRUE(s->isABitmap(&bitmap, nullptr, xy)) << "1x1 bitmap shader must query as bitmap shader"; EXPECT_EQ(SkShader::kClamp_TileMode, xy[0]); EXPECT_EQ(SkShader::kRepeat_TileMode, xy[1]); EXPECT_EQ(origBitmap.pixelRef(), bitmap.pixelRef()); }