diff options
author | reed <reed@google.com> | 2014-12-09 12:33:38 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-12-09 12:33:38 -0800 |
commit | 2c1605a1fbaa2e35a27399a34254fb1200ec2ae6 (patch) | |
tree | 3b85dbe084734ed436783de6593c5b35ef3e9867 /tests | |
parent | 269edd5f7ec37f417b5a64b5ebb4929cd7fce18c (diff) |
remove (dumb) canvas::NewRaster, and rename surface::NewRasterPMColor to N32Premul
patch from issue 781403002 at patchset 20001 (http://crrev.com/781403002#ps20001)
BUG=skia:
Review URL: https://codereview.chromium.org/790733003
Diffstat (limited to 'tests')
-rw-r--r-- | tests/CanvasTest.cpp | 19 | ||||
-rw-r--r-- | tests/DeferredCanvasTest.cpp | 16 | ||||
-rw-r--r-- | tests/DrawBitmapRectTest.cpp | 2 | ||||
-rw-r--r-- | tests/DrawPathTest.cpp | 48 | ||||
-rw-r--r-- | tests/PathTest.cpp | 10 | ||||
-rw-r--r-- | tests/RecordDrawTest.cpp | 2 | ||||
-rw-r--r-- | tests/RecorderTest.cpp | 2 | ||||
-rw-r--r-- | tests/SkResourceCacheTest.cpp | 5 |
8 files changed, 55 insertions, 49 deletions
diff --git a/tests/CanvasTest.cpp b/tests/CanvasTest.cpp index d5ddfe6fb0..1f8f2760b5 100644 --- a/tests/CanvasTest.cpp +++ b/tests/CanvasTest.cpp @@ -73,7 +73,7 @@ static void createBitmap(SkBitmap* bm, SkColor color) { } static SkSurface* createSurface(SkColor color) { - SkSurface* surface = SkSurface::NewRasterPMColor(kWidth, kHeight); + SkSurface* surface = SkSurface::NewRasterN32Premul(kWidth, kHeight); surface->getCanvas()->clear(color); return surface; } @@ -748,7 +748,13 @@ static void TestOverrideStateConsistency(skiatest::Reporter* reporter, const Tes static void test_newraster(skiatest::Reporter* reporter) { SkImageInfo info = SkImageInfo::MakeN32Premul(10, 10); - SkCanvas* canvas = SkCanvas::NewRaster(info); + const size_t minRowBytes = info.minRowBytes(); + const size_t size = info.getSafeSize(minRowBytes); + SkAutoMalloc storage(size); + SkPMColor* baseAddr = static_cast<SkPMColor*>(storage.get()); + sk_bzero(baseAddr, size); + + SkCanvas* canvas = SkCanvas::NewRasterDirect(info, baseAddr, minRowBytes); REPORTER_ASSERT(reporter, canvas); SkImageInfo info2; @@ -756,6 +762,7 @@ static void test_newraster(skiatest::Reporter* reporter) { const SkPMColor* addr = (const SkPMColor*)canvas->peekPixels(&info2, &rowBytes); REPORTER_ASSERT(reporter, addr); REPORTER_ASSERT(reporter, info == info2); + REPORTER_ASSERT(reporter, minRowBytes == rowBytes); for (int y = 0; y < info.height(); ++y) { for (int x = 0; x < info.width(); ++x) { REPORTER_ASSERT(reporter, 0 == addr[x]); @@ -766,19 +773,19 @@ static void test_newraster(skiatest::Reporter* reporter) { // now try a deliberately bad info info = info.makeWH(-1, info.height()); - REPORTER_ASSERT(reporter, NULL == SkCanvas::NewRaster(info)); + REPORTER_ASSERT(reporter, NULL == SkCanvas::NewRasterDirect(info, baseAddr, minRowBytes)); // too big info = info.makeWH(1 << 30, 1 << 30); - REPORTER_ASSERT(reporter, NULL == SkCanvas::NewRaster(info)); + REPORTER_ASSERT(reporter, NULL == SkCanvas::NewRasterDirect(info, baseAddr, minRowBytes)); // not a valid pixel type info = SkImageInfo::Make(10, 10, kUnknown_SkColorType, info.alphaType()); - REPORTER_ASSERT(reporter, NULL == SkCanvas::NewRaster(info)); + REPORTER_ASSERT(reporter, NULL == SkCanvas::NewRasterDirect(info, baseAddr, minRowBytes)); // We should succeed with a zero-sized valid info info = SkImageInfo::MakeN32Premul(0, 0); - canvas = SkCanvas::NewRaster(info); + canvas = SkCanvas::NewRasterDirect(info, baseAddr, minRowBytes); REPORTER_ASSERT(reporter, canvas); SkDELETE(canvas); } diff --git a/tests/DeferredCanvasTest.cpp b/tests/DeferredCanvasTest.cpp index 043fe33557..1c1970a03f 100644 --- a/tests/DeferredCanvasTest.cpp +++ b/tests/DeferredCanvasTest.cpp @@ -32,7 +32,7 @@ static void create(SkBitmap* bm, SkColor color) { } static SkSurface* createSurface(SkColor color) { - SkSurface* surface = SkSurface::NewRasterPMColor(gWidth, gHeight); + SkSurface* surface = SkSurface::NewRasterN32Premul(gWidth, gHeight); surface->getCanvas()->clear(color); return surface; } @@ -451,7 +451,7 @@ private: // Verifies that the deferred canvas triggers a flush when its memory // limit is exceeded static void TestDeferredCanvasMemoryLimit(skiatest::Reporter* reporter) { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); SkAutoTUnref<SkDeferredCanvas> canvas(SkDeferredCanvas::Create(surface.get())); NotificationCounter notificationCounter; @@ -486,7 +486,7 @@ static void TestDeferredCanvasSilentFlush(skiatest::Reporter* reporter) { } static void TestDeferredCanvasBitmapCaching(skiatest::Reporter* reporter) { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); SkAutoTUnref<SkDeferredCanvas> canvas(SkDeferredCanvas::Create(surface.get())); NotificationCounter notificationCounter; @@ -566,7 +566,7 @@ static void TestDeferredCanvasBitmapCaching(skiatest::Reporter* reporter) { } static void TestDeferredCanvasSkip(skiatest::Reporter* reporter) { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); SkAutoTUnref<SkDeferredCanvas> canvas(SkDeferredCanvas::Create(surface.get())); NotificationCounter notificationCounter; @@ -585,7 +585,7 @@ static void TestDeferredCanvasBitmapShaderNoLeak(skiatest::Reporter* reporter) { // This test covers a code path that inserts bitmaps into the bitmap heap through the // flattening of SkBitmapProcShaders. The refcount in the bitmap heap is maintained through // the flattening and unflattening of the shader. - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); SkAutoTUnref<SkDeferredCanvas> canvas(SkDeferredCanvas::Create(surface.get())); // test will fail if nbIterations is not in sync with // BITMAPS_TO_KEEP in SkGPipeWrite.cpp @@ -620,7 +620,7 @@ static void TestDeferredCanvasBitmapShaderNoLeak(skiatest::Reporter* reporter) { } static void TestDeferredCanvasBitmapSizeThreshold(skiatest::Reporter* reporter) { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); SkBitmap sourceImage; // 100 by 100 image, takes 40,000 bytes in memory @@ -811,7 +811,7 @@ static void TestDeferredCanvasSetSurface(skiatest::Reporter* reporter, GrContext } static void TestDeferredCanvasCreateCompatibleDevice(skiatest::Reporter* reporter) { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); SkAutoTUnref<SkDeferredCanvas> canvas(SkDeferredCanvas::Create(surface.get())); NotificationCounter notificationCounter; @@ -842,7 +842,7 @@ static void TestDeferredCanvasGetCanvasSize(skiatest::Reporter* reporter) { SkAutoTUnref<SkSurface> surface(createSurface(0xFFFFFFFF)); SkAutoTUnref<SkDeferredCanvas> canvas(SkDeferredCanvas::Create(surface.get())); - SkSurface* newSurface = SkSurface::NewRasterPMColor(4, 4); + SkSurface* newSurface = SkSurface::NewRasterN32Premul(4, 4); SkAutoTUnref<SkSurface> aur(newSurface); for (int i = 0; i < 2; ++i) { diff --git a/tests/DrawBitmapRectTest.cpp b/tests/DrawBitmapRectTest.cpp index 71ad2cf733..c1e34a2612 100644 --- a/tests/DrawBitmapRectTest.cpp +++ b/tests/DrawBitmapRectTest.cpp @@ -43,7 +43,7 @@ static void test_faulty_pixelref(skiatest::Reporter* reporter) { REPORTER_ASSERT(reporter, installSuccess); // now our bitmap has a pixelref, but we know it will fail to lock - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(200, 200)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(200, 200)); SkCanvas* canvas = surface->getCanvas(); const SkPaint::FilterLevel levels[] = { diff --git a/tests/DrawPathTest.cpp b/tests/DrawPathTest.cpp index 2af4224c9c..67af75568a 100644 --- a/tests/DrawPathTest.cpp +++ b/tests/DrawPathTest.cpp @@ -17,7 +17,7 @@ static void test_big_aa_rect(skiatest::Reporter* reporter) { SkPMColor pixel[1]; output.installPixels(SkImageInfo::MakeN32Premul(1, 1), pixel, 4); - SkSurface* surf = SkSurface::NewRasterPMColor(300, 33300); + SkSurface* surf = SkSurface::NewRasterN32Premul(300, 33300); SkCanvas* canvas = surf->getCanvas(); SkRect r = { 0, 33000, 300, 33300 }; @@ -94,11 +94,11 @@ static void test_crbug131181() { moveToH(&path, &data[0]); cubicToH(&path, &data[2]); - SkAutoTUnref<SkCanvas> canvas(SkCanvas::NewRasterN32(640, 480)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(640, 480)); SkPaint paint; paint.setAntiAlias(true); - canvas->drawPath(path, paint); + surface->getCanvas()->drawPath(path, paint); } // This used to assert in debug builds (and crash writing bad memory in release) @@ -125,38 +125,36 @@ static void test_crbug_140803() { static void test_inversepathwithclip() { SkPath path; - path.moveTo(0, SkIntToScalar(20)); - path.quadTo(SkIntToScalar(10), SkIntToScalar(10), - SkIntToScalar(20), SkIntToScalar(20)); + path.moveTo(0, 20); + path.quadTo(10, 10, 20, 20); path.toggleInverseFillType(); SkPaint paint; - SkAutoTUnref<SkCanvas> canvas(SkCanvas::NewRasterN32(640, 480)); - canvas.get()->save(); - canvas.get()->clipRect(SkRect::MakeWH(SkIntToScalar(19), SkIntToScalar(11))); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(640, 480)); + SkCanvas* canvas = surface->getCanvas(); + canvas->save(); + canvas->clipRect(SkRect::MakeWH(19, 11)); paint.setAntiAlias(false); - canvas.get()->drawPath(path, paint); + canvas->drawPath(path, paint); paint.setAntiAlias(true); - canvas.get()->drawPath(path, paint); + canvas->drawPath(path, paint); - canvas.get()->restore(); + canvas->restore(); // Now do the test again, with the path flipped, so we only draw in the // top half of our bounds, and have the clip intersect our bounds at the // bottom. path.reset(); // preserves our filltype - path.moveTo(0, SkIntToScalar(10)); - path.quadTo(SkIntToScalar(10), SkIntToScalar(20), - SkIntToScalar(20), SkIntToScalar(10)); - canvas.get()->clipRect(SkRect::MakeXYWH(SkIntToScalar(0), SkIntToScalar(19), - SkIntToScalar(19), SkIntToScalar(11))); + path.moveTo(0, 10); + path.quadTo(10, 20, 20, 10); + canvas->clipRect(SkRect::MakeXYWH(0, 19, 19, 11)); paint.setAntiAlias(false); - canvas.get()->drawPath(path, paint); + canvas->drawPath(path, paint); paint.setAntiAlias(true); - canvas.get()->drawPath(path, paint); + canvas->drawPath(path, paint); } static void test_bug533() { @@ -172,8 +170,8 @@ static void test_bug533() { SkPaint paint; paint.setAntiAlias(true); - SkAutoTUnref<SkCanvas> canvas(SkCanvas::NewRasterN32(640, 480)); - canvas.get()->drawPath(path, paint); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(640, 480)); + surface->getCanvas()->drawPath(path, paint); } static void test_crbug_140642() { @@ -214,8 +212,8 @@ static void test_bigcubic() { SkPaint paint; paint.setAntiAlias(true); - SkAutoTUnref<SkCanvas> canvas(SkCanvas::NewRasterN32(640, 480)); - canvas.get()->drawPath(path, paint); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(640, 480)); + surface->getCanvas()->drawPath(path, paint); } // we used to assert if the bounds of the device (clip) was larger than 32K @@ -224,13 +222,13 @@ static void test_bigcubic() { static void test_giantaa() { const int W = 400; const int H = 400; - SkAutoTUnref<SkCanvas> canvas(SkCanvas::NewRasterN32(33000, 10)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(33000, 10)); SkPaint paint; paint.setAntiAlias(true); SkPath path; path.addOval(SkRect::MakeXYWH(-10, -10, 20 + W, 20 + H)); - canvas.get()->drawPath(path, paint); + surface->getCanvas()->drawPath(path, paint); } // Extremely large path_length/dash_length ratios may cause infinite looping diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp index 4588619080..d09f8a2b30 100644 --- a/tests/PathTest.cpp +++ b/tests/PathTest.cpp @@ -54,7 +54,7 @@ static void make_path_crbug364224_simplified(SkPath* path) { static void test_path_crbug364224() { SkPath path; SkPaint paint; - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(84, 88)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(84, 88)); SkCanvas* canvas = surface->getCanvas(); make_path_crbug364224_simplified(&path); @@ -299,7 +299,7 @@ static void test_bad_cubic_crbug234190() { SkPaint paint; paint.setAntiAlias(true); - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(84, 88)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(84, 88)); surface->getCanvas()->drawPath(path, paint); } @@ -418,7 +418,7 @@ static void test_crbug_170666() { SkPaint paint; paint.setAntiAlias(true); - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(1000, 1000)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(1000, 1000)); build_path_simple_170666(path); surface->getCanvas()->drawPath(path, paint); @@ -497,7 +497,7 @@ static void build_big_path(SkPath* path, bool reducedCase) { } static void test_clipped_cubic() { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(640, 480)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(640, 480)); // This path used to assert, because our cubic-chopping code incorrectly // moved control points after the chop. This test should be run in SK_DEBUG @@ -533,7 +533,7 @@ static void test_tricky_cubic() { SkPaint paint; paint.setAntiAlias(true); - SkSurface* surface = SkSurface::NewRasterPMColor(19, 130); + SkSurface* surface = SkSurface::NewRasterN32Premul(19, 130); surface->getCanvas()->drawPath(path, paint); surface->unref(); } diff --git a/tests/RecordDrawTest.cpp b/tests/RecordDrawTest.cpp index 30be24c28a..2d9e90d48b 100644 --- a/tests/RecordDrawTest.cpp +++ b/tests/RecordDrawTest.cpp @@ -286,7 +286,7 @@ DEF_TEST(RecordDraw_drawImage, r){ bool fDrawImageRectCalled; }; - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(10, 10)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(10, 10)); surface->getCanvas()->clear(SK_ColorGREEN); SkAutoTUnref<SkImage> image(surface->newImageSnapshot()); diff --git a/tests/RecorderTest.cpp b/tests/RecorderTest.cpp index d81bf059ef..7a2755699f 100644 --- a/tests/RecorderTest.cpp +++ b/tests/RecorderTest.cpp @@ -155,7 +155,7 @@ DEF_TEST(Recorder_drawImage_takeReference, reporter) { SkAutoTUnref<SkImage> image; { - SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterPMColor(100, 100)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(100, 100)); surface->getCanvas()->clear(SK_ColorGREEN); image.reset(surface->newImageSnapshot()); } diff --git a/tests/SkResourceCacheTest.cpp b/tests/SkResourceCacheTest.cpp index 0e941758ee..e1f8a65bbc 100644 --- a/tests/SkResourceCacheTest.cpp +++ b/tests/SkResourceCacheTest.cpp @@ -11,6 +11,7 @@ #include "SkDiscardableMemoryPool.h" #include "SkGraphics.h" #include "SkResourceCache.h" +#include "SkSurface.h" static const int kCanvasSize = 1; static const int kBitmapSize = 16; @@ -27,8 +28,8 @@ static bool is_in_scaled_image_cache(const SkBitmap& orig, // Draw a scaled bitmap, then return true iff it has been cached. static bool test_scaled_image_cache_useage() { - SkAutoTUnref<SkCanvas> canvas( - SkCanvas::NewRasterN32(kCanvasSize, kCanvasSize)); + SkAutoTUnref<SkSurface> surface(SkSurface::NewRasterN32Premul(kCanvasSize, kCanvasSize)); + SkCanvas* canvas = surface->getCanvas(); SkBitmap bitmap; bitmap.allocN32Pixels(kBitmapSize, kBitmapSize); bitmap.eraseColor(0xFFFFFFFF); |