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

Side by Side Diff: tests/ImageFilterTest.cpp

Issue 1817383002: switch surface to sk_sp (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 9 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
« no previous file with comments | « tests/GradientTest.cpp ('k') | tests/ImageIsOpaqueTest.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 1
2 /* 2 /*
3 * Copyright 2013 Google Inc. 3 * Copyright 2013 Google Inc.
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 8
9 #include "SkBitmap.h" 9 #include "SkBitmap.h"
10 #include "SkBitmapDevice.h" 10 #include "SkBitmapDevice.h"
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 } 224 }
225 225
226 #ifndef SK_IGNORE_TO_STRING 226 #ifndef SK_IGNORE_TO_STRING
227 void MatrixTestImageFilter::toString(SkString* str) const { 227 void MatrixTestImageFilter::toString(SkString* str) const {
228 str->appendf("MatrixTestImageFilter: ("); 228 str->appendf("MatrixTestImageFilter: (");
229 str->append(")"); 229 str->append(")");
230 } 230 }
231 #endif 231 #endif
232 232
233 static sk_sp<SkImage> make_small_image() { 233 static sk_sp<SkImage> make_small_image() {
234 SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(kBitmapSize, k BitmapSize)); 234 auto surface(SkSurface::MakeRasterN32Premul(kBitmapSize, kBitmapSize));
235 SkCanvas* canvas = surface->getCanvas(); 235 SkCanvas* canvas = surface->getCanvas();
236 canvas->clear(0x00000000); 236 canvas->clear(0x00000000);
237 SkPaint darkPaint; 237 SkPaint darkPaint;
238 darkPaint.setColor(0xFF804020); 238 darkPaint.setColor(0xFF804020);
239 SkPaint lightPaint; 239 SkPaint lightPaint;
240 lightPaint.setColor(0xFF244484); 240 lightPaint.setColor(0xFF244484);
241 const int i = kBitmapSize / 4; 241 const int i = kBitmapSize / 4;
242 for (int y = 0; y < kBitmapSize; y += i) { 242 for (int y = 0; y < kBitmapSize; y += i) {
243 for (int x = 0; x < kBitmapSize; x += i) { 243 for (int x = 0; x < kBitmapSize; x += i) {
244 canvas->save(); 244 canvas->save();
(...skipping 1243 matching lines...) Expand 10 before | Expand all | Expand 10 after
1488 REPORTER_ASSERT(reporter, identityFilter->canComputeFastBounds()); 1488 REPORTER_ASSERT(reporter, identityFilter->canComputeFastBounds());
1489 1489
1490 auto forceOpaqueCF(SkTableColorFilter::MakeARGB(allOne, identity, identity, identity)); 1490 auto forceOpaqueCF(SkTableColorFilter::MakeARGB(allOne, identity, identity, identity));
1491 SkAutoTUnref<SkImageFilter> forceOpaque(SkColorFilterImageFilter::Create(for ceOpaqueCF.get())); 1491 SkAutoTUnref<SkImageFilter> forceOpaque(SkColorFilterImageFilter::Create(for ceOpaqueCF.get()));
1492 REPORTER_ASSERT(reporter, forceOpaqueCF->affectsTransparentBlack()); 1492 REPORTER_ASSERT(reporter, forceOpaqueCF->affectsTransparentBlack());
1493 REPORTER_ASSERT(reporter, !forceOpaque->canComputeFastBounds()); 1493 REPORTER_ASSERT(reporter, !forceOpaque->canComputeFastBounds());
1494 } 1494 }
1495 1495
1496 // Verify that SkImageSource survives serialization 1496 // Verify that SkImageSource survives serialization
1497 DEF_TEST(ImageFilterImageSourceSerialization, reporter) { 1497 DEF_TEST(ImageFilterImageSourceSerialization, reporter) {
1498 SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(10, 10)); 1498 auto surface(SkSurface::MakeRasterN32Premul(10, 10));
1499 surface->getCanvas()->clear(SK_ColorGREEN); 1499 surface->getCanvas()->clear(SK_ColorGREEN);
1500 sk_sp<SkImage> image(surface->makeImageSnapshot()); 1500 sk_sp<SkImage> image(surface->makeImageSnapshot());
1501 SkAutoTUnref<SkImageFilter> filter(SkImageSource::Create(image.get())); 1501 SkAutoTUnref<SkImageFilter> filter(SkImageSource::Create(image.get()));
1502 1502
1503 SkAutoTUnref<SkData> data(SkValidatingSerializeFlattenable(filter)); 1503 SkAutoTUnref<SkData> data(SkValidatingSerializeFlattenable(filter));
1504 SkAutoTUnref<SkFlattenable> flattenable(SkValidatingDeserializeFlattenable( 1504 SkAutoTUnref<SkFlattenable> flattenable(SkValidatingDeserializeFlattenable(
1505 data->data(), data->size(), SkImageFilter::GetFlattenableType())); 1505 data->data(), data->size(), SkImageFilter::GetFlattenableType()));
1506 SkImageFilter* unflattenedFilter = static_cast<SkImageFilter*>(flattenable.g et()); 1506 SkImageFilter* unflattenedFilter = static_cast<SkImageFilter*>(flattenable.g et());
1507 REPORTER_ASSERT(reporter, unflattenedFilter); 1507 REPORTER_ASSERT(reporter, unflattenedFilter);
1508 1508
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
1555 } 1555 }
1556 1556
1557 SkPaint paint; 1557 SkPaint paint;
1558 paint.setImageFilter(blur); 1558 paint.setImageFilter(blur);
1559 1559
1560 // This should not crash (http://crbug.com/570479). 1560 // This should not crash (http://crbug.com/570479).
1561 canvas->drawRect(SkRect::MakeIWH(largeW, largeH), paint); 1561 canvas->drawRect(SkRect::MakeIWH(largeW, largeH), paint);
1562 } 1562 }
1563 1563
1564 DEF_TEST(BlurLargeImage, reporter) { 1564 DEF_TEST(BlurLargeImage, reporter) {
1565 SkAutoTUnref<SkSurface> surface(SkSurface::NewRaster(SkImageInfo::MakeN32Pre mul(100, 100))); 1565 auto surface(SkSurface::MakeRaster(SkImageInfo::MakeN32Premul(100, 100)));
1566 test_large_blur_input(reporter, surface->getCanvas()); 1566 test_large_blur_input(reporter, surface->getCanvas());
1567 } 1567 }
1568 1568
1569 #if SK_SUPPORT_GPU 1569 #if SK_SUPPORT_GPU
1570 1570
1571 DEF_GPUTEST_FOR_NATIVE_CONTEXT(HugeBlurImageFilter_Gpu, reporter, context) { 1571 DEF_GPUTEST_FOR_NATIVE_CONTEXT(HugeBlurImageFilter_Gpu, reporter, context) {
1572 const SkSurfaceProps props(SkSurfaceProps::kLegacyFontHost_InitType); 1572 const SkSurfaceProps props(SkSurfaceProps::kLegacyFontHost_InitType);
1573 1573
1574 SkAutoTUnref<SkGpuDevice> device(SkGpuDevice::Create(context, 1574 SkAutoTUnref<SkGpuDevice> device(SkGpuDevice::Create(context,
1575 SkBudgeted::kNo, 1575 SkBudgeted::kNo,
(...skipping 14 matching lines...) Expand all
1590 SkImageInfo::MakeN32Pre mul(1, 1), 1590 SkImageInfo::MakeN32Pre mul(1, 1),
1591 0, 1591 0,
1592 &props, 1592 &props,
1593 SkGpuDevice::kUninit_In itContents)); 1593 SkGpuDevice::kUninit_In itContents));
1594 SkCanvas canvas(device); 1594 SkCanvas canvas(device);
1595 1595
1596 test_xfermode_cropped_input(&canvas, reporter); 1596 test_xfermode_cropped_input(&canvas, reporter);
1597 } 1597 }
1598 1598
1599 DEF_GPUTEST_FOR_ALL_CONTEXTS(BlurLargeImage_Gpu, reporter, context) { 1599 DEF_GPUTEST_FOR_ALL_CONTEXTS(BlurLargeImage_Gpu, reporter, context) {
1600 SkAutoTUnref<SkSurface> surface( 1600 auto surface(SkSurface::MakeRenderTarget(context, SkBudgeted::kYes,
1601 SkSurface::NewRenderTarget(context, SkBudgeted::kYes, 1601 SkImageInfo::MakeN32Premul(100, 100 )));
1602 SkImageInfo::MakeN32Premul(100, 100)));
1603 test_large_blur_input(reporter, surface->getCanvas()); 1602 test_large_blur_input(reporter, surface->getCanvas());
1604 } 1603 }
1605 #endif 1604 #endif
OLDNEW
« no previous file with comments | « tests/GradientTest.cpp ('k') | tests/ImageIsOpaqueTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698