| 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 9937fcc77390da8324eaf84188ad89358aa6c0ac..117e009e7ce659ee99b35bf6c86c55360f167e4d 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;
|
|
|
| @@ -87,7 +89,7 @@ protected:
|
| void unrefCanvas();
|
|
|
| private:
|
| - OwnPtr<DummyPageHolder> m_dummyPageHolder;
|
| + std::unique_ptr<DummyPageHolder> m_dummyPageHolder;
|
| Persistent<HTMLDocument> m_document;
|
| Persistent<HTMLCanvasElement> m_canvasElement;
|
| Persistent<MemoryCache> m_globalMemoryCache;
|
| @@ -208,7 +210,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); \
|
| @@ -260,13 +262,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
|
| @@ -406,7 +408,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());
|
| @@ -415,7 +417,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
|
| @@ -429,7 +431,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
|
| @@ -443,7 +445,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;
|
| @@ -451,7 +453,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;
|
| @@ -467,7 +469,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;
|
| @@ -475,7 +477,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;
|
| @@ -491,7 +493,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();
|
| @@ -508,7 +510,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();
|
| @@ -525,7 +527,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();
|
| @@ -545,7 +547,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();
|
| @@ -559,7 +561,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();
|
| @@ -580,7 +582,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"));
|
| @@ -597,7 +599,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"));
|
| @@ -610,7 +612,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
|
| @@ -624,7 +626,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
|
| @@ -643,7 +645,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);
|
| @@ -652,7 +654,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);
|
| @@ -684,7 +686,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,
|
| @@ -705,8 +707,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());
|
|
|
|
|