| Index: third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
|
| diff --git a/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp b/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
|
| index e048949b7c0ed9e3165c1e5591e83629492bbbd8..645e9eb7d62174a2106802dd38a8c0df6156341d 100644
|
| --- a/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
|
| +++ b/third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp
|
| @@ -23,6 +23,8 @@
|
| #include "testing/gmock/include/gmock/gmock.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| #include "third_party/skia/include/core/SkSurface.h"
|
| +#include "wtf/PtrUtil.h"
|
| +#include <memory>
|
|
|
| using ::testing::Mock;
|
|
|
| @@ -86,7 +88,7 @@ protected:
|
| void TearDown();
|
|
|
| private:
|
| - OwnPtr<DummyPageHolder> m_dummyPageHolder;
|
| + std::unique_ptr<DummyPageHolder> m_dummyPageHolder;
|
| Persistent<HTMLDocument> m_document;
|
| Persistent<HTMLCanvasElement> m_canvasElement;
|
| Persistent<MemoryCache> m_globalMemoryCache;
|
| @@ -207,7 +209,7 @@ public:
|
| //============================================================================
|
|
|
| #define TEST_OVERDRAW_SETUP(EXPECTED_OVERDRAWS) \
|
| - OwnPtr<MockImageBufferSurfaceForOverwriteTesting> mockSurface = adoptPtr(new MockImageBufferSurfaceForOverwriteTesting(IntSize(10, 10), NonOpaque)); \
|
| + std::unique_ptr<MockImageBufferSurfaceForOverwriteTesting> mockSurface = wrapUnique(new MockImageBufferSurfaceForOverwriteTesting(IntSize(10, 10), NonOpaque)); \
|
| MockImageBufferSurfaceForOverwriteTesting* surfacePtr = mockSurface.get(); \
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(mockSurface)); \
|
| EXPECT_CALL(*surfacePtr, willOverwriteCanvas()).Times(EXPECTED_OVERDRAWS); \
|
| @@ -259,13 +261,13 @@ public:
|
| ExpectFallback,
|
| ExpectNoFallback
|
| };
|
| - static PassOwnPtr<MockSurfaceFactory> create(FallbackExpectation expectation) { return adoptPtr(new MockSurfaceFactory(expectation)); }
|
| + static std::unique_ptr<MockSurfaceFactory> create(FallbackExpectation expectation) { return wrapUnique(new MockSurfaceFactory(expectation)); }
|
|
|
| - PassOwnPtr<ImageBufferSurface> createSurface(const IntSize& size, OpacityMode mode) override
|
| + std::unique_ptr<ImageBufferSurface> createSurface(const IntSize& size, OpacityMode mode) override
|
| {
|
| EXPECT_EQ(ExpectFallback, m_expectation);
|
| m_didFallback = true;
|
| - return adoptPtr(new UnacceleratedImageBufferSurface(size, mode));
|
| + return wrapUnique(new UnacceleratedImageBufferSurface(size, mode));
|
| }
|
|
|
| ~MockSurfaceFactory() override
|
| @@ -405,7 +407,7 @@ TEST_F(CanvasRenderingContext2DTest, detectOverdrawWithCompositeOperations)
|
| TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionByDefault)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| EXPECT_FALSE(canvasElement().shouldBeDirectComposited());
|
| @@ -414,7 +416,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionByDefault)
|
| TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderOverdrawLimit)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->setGlobalAlpha(0.5f); // To prevent overdraw optimization
|
| @@ -428,7 +430,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderOverdrawLimit)
|
| TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverOverdrawLimit)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->setGlobalAlpha(0.5f); // To prevent overdraw optimization
|
| @@ -442,7 +444,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverOverdrawLimit)
|
| TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderImageSizeRatioLimit)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| NonThrowableExceptionState exceptionState;
|
| @@ -450,7 +452,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderImageSizeRatioLimit)
|
| EXPECT_FALSE(exceptionState.hadException());
|
| HTMLCanvasElement* sourceCanvas = static_cast<HTMLCanvasElement*>(sourceCanvasElement);
|
| IntSize sourceSize(10, 10 * ExpensiveCanvasHeuristicParameters::ExpensiveImageSizeRatio);
|
| - OwnPtr<UnacceleratedImageBufferSurface> sourceSurface = adoptPtr(new UnacceleratedImageBufferSurface(sourceSize, NonOpaque));
|
| + std::unique_ptr<UnacceleratedImageBufferSurface> sourceSurface = wrapUnique(new UnacceleratedImageBufferSurface(sourceSize, NonOpaque));
|
| sourceCanvas->createImageBufferUsingSurfaceForTesting(std::move(sourceSurface));
|
|
|
| const ImageBitmapOptions defaultOptions;
|
| @@ -466,7 +468,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderImageSizeRatioLimit)
|
| TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverImageSizeRatioLimit)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| NonThrowableExceptionState exceptionState;
|
| @@ -474,7 +476,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverImageSizeRatioLimit)
|
| EXPECT_FALSE(exceptionState.hadException());
|
| HTMLCanvasElement* sourceCanvas = static_cast<HTMLCanvasElement*>(sourceCanvasElement);
|
| IntSize sourceSize(10, 10 * ExpensiveCanvasHeuristicParameters::ExpensiveImageSizeRatio + 1);
|
| - OwnPtr<UnacceleratedImageBufferSurface> sourceSurface = adoptPtr(new UnacceleratedImageBufferSurface(sourceSize, NonOpaque));
|
| + std::unique_ptr<UnacceleratedImageBufferSurface> sourceSurface = wrapUnique(new UnacceleratedImageBufferSurface(sourceSize, NonOpaque));
|
| sourceCanvas->createImageBufferUsingSurfaceForTesting(std::move(sourceSurface));
|
|
|
| const ImageBitmapOptions defaultOptions;
|
| @@ -490,7 +492,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverImageSizeRatioLimit)
|
| TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderExpensivePathPointCount)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->beginPath();
|
| @@ -507,7 +509,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionUnderExpensivePathPointCoun
|
| TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverExpensivePathPointCount)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->beginPath();
|
| @@ -524,7 +526,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionOverExpensivePathPointCount)
|
| TEST_F(CanvasRenderingContext2DTest, LayerPromotionWhenPathIsConcave)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->beginPath();
|
| @@ -544,7 +546,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionWhenPathIsConcave)
|
| TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionWithRectangleClip)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->beginPath();
|
| @@ -558,7 +560,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionWithRectangleClip)
|
| TEST_F(CanvasRenderingContext2DTest, LayerPromotionWithComplexClip)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->beginPath();
|
| @@ -579,7 +581,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionWithComplexClip)
|
| TEST_F(CanvasRenderingContext2DTest, LayerPromotionWithBlurredShadow)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->setShadowColor(String("red"));
|
| @@ -596,7 +598,7 @@ TEST_F(CanvasRenderingContext2DTest, LayerPromotionWithBlurredShadow)
|
| TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionWithSharpShadow)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->setShadowColor(String("red"));
|
| @@ -609,7 +611,7 @@ TEST_F(CanvasRenderingContext2DTest, NoLayerPromotionWithSharpShadow)
|
| TEST_F(CanvasRenderingContext2DTest, NoFallbackWithSmallState)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->fillRect(0, 0, 1, 1); // To have a non-empty dirty rect
|
| @@ -623,7 +625,7 @@ TEST_F(CanvasRenderingContext2DTest, NoFallbackWithSmallState)
|
| TEST_F(CanvasRenderingContext2DTest, FallbackWithLargeState)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->fillRect(0, 0, 1, 1); // To have a non-empty dirty rect
|
| @@ -642,7 +644,7 @@ TEST_F(CanvasRenderingContext2DTest, OpaqueDisplayListFallsBackForText)
|
| // does not support pixel geometry settings.
|
| // See: crbug.com/583809
|
| createContext(Opaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectFallback), Opaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectFallback), Opaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->fillText("Text", 0, 5);
|
| @@ -651,7 +653,7 @@ TEST_F(CanvasRenderingContext2DTest, OpaqueDisplayListFallsBackForText)
|
| TEST_F(CanvasRenderingContext2DTest, NonOpaqueDisplayListDoesNotFallBackForText)
|
| {
|
| createContext(NonOpaque);
|
| - OwnPtr<RecordingImageBufferSurface> surface = adoptPtr(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| + std::unique_ptr<RecordingImageBufferSurface> surface = wrapUnique(new RecordingImageBufferSurface(IntSize(10, 10), MockSurfaceFactory::create(MockSurfaceFactory::ExpectNoFallback), NonOpaque));
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(surface));
|
|
|
| context2d()->fillText("Text", 0, 5);
|
| @@ -683,7 +685,7 @@ TEST_F(CanvasRenderingContext2DTest, GPUMemoryUpdateForAcceleratedCanvas)
|
| {
|
| createContext(NonOpaque);
|
|
|
| - OwnPtr<FakeAcceleratedImageBufferSurfaceForTesting> fakeAccelerateSurface = adoptPtr(new FakeAcceleratedImageBufferSurfaceForTesting(IntSize(10, 10), NonOpaque));
|
| + std::unique_ptr<FakeAcceleratedImageBufferSurfaceForTesting> fakeAccelerateSurface = wrapUnique(new FakeAcceleratedImageBufferSurfaceForTesting(IntSize(10, 10), NonOpaque));
|
| FakeAcceleratedImageBufferSurfaceForTesting* fakeAccelerateSurfacePtr = fakeAccelerateSurface.get();
|
| canvasElement().createImageBufferUsingSurfaceForTesting(std::move(fakeAccelerateSurface));
|
| // 800 = 10 * 10 * 4 * 2 where 10*10 is canvas size, 4 is num of bytes per pixel per buffer,
|
| @@ -704,8 +706,8 @@ TEST_F(CanvasRenderingContext2DTest, GPUMemoryUpdateForAcceleratedCanvas)
|
| EXPECT_EQ(800, getGlobalGPUMemoryUsage());
|
|
|
| // Creating a different accelerated image buffer
|
| - OwnPtr<FakeAcceleratedImageBufferSurfaceForTesting> fakeAccelerateSurface2 = adoptPtr(new FakeAcceleratedImageBufferSurfaceForTesting(IntSize(10, 5), NonOpaque));
|
| - OwnPtr<ImageBuffer> imageBuffer2 = ImageBuffer::create(std::move(fakeAccelerateSurface2));
|
| + std::unique_ptr<FakeAcceleratedImageBufferSurfaceForTesting> fakeAccelerateSurface2 = wrapUnique(new FakeAcceleratedImageBufferSurfaceForTesting(IntSize(10, 5), NonOpaque));
|
| + std::unique_ptr<ImageBuffer> imageBuffer2 = ImageBuffer::create(std::move(fakeAccelerateSurface2));
|
| EXPECT_EQ(800, getCurrentGPUMemoryUsage());
|
| EXPECT_EQ(1200, getGlobalGPUMemoryUsage());
|
|
|
|
|