OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "config.h" | 5 #include "config.h" |
6 #include "modules/canvas2d/CanvasRenderingContext2D.h" | 6 #include "modules/canvas2d/CanvasRenderingContext2D.h" |
7 | 7 |
8 #include "core/frame/FrameView.h" | 8 #include "core/frame/FrameView.h" |
9 #include "core/frame/ImageBitmap.h" | 9 #include "core/frame/ImageBitmap.h" |
10 #include "core/html/HTMLCanvasElement.h" | 10 #include "core/html/HTMLCanvasElement.h" |
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
134 void CanvasRenderingContext2DTest::SetUp() | 134 void CanvasRenderingContext2DTest::SetUp() |
135 { | 135 { |
136 Page::PageClients pageClients; | 136 Page::PageClients pageClients; |
137 fillWithEmptyClients(pageClients); | 137 fillWithEmptyClients(pageClients); |
138 m_dummyPageHolder = DummyPageHolder::create(IntSize(800, 600), &pageClients)
; | 138 m_dummyPageHolder = DummyPageHolder::create(IntSize(800, 600), &pageClients)
; |
139 m_document = toHTMLDocument(&m_dummyPageHolder->document()); | 139 m_document = toHTMLDocument(&m_dummyPageHolder->document()); |
140 m_document->documentElement()->setInnerHTML("<body><canvas id='c'></canvas><
/body>", ASSERT_NO_EXCEPTION); | 140 m_document->documentElement()->setInnerHTML("<body><canvas id='c'></canvas><
/body>", ASSERT_NO_EXCEPTION); |
141 m_document->view()->updateAllLifecyclePhases(); | 141 m_document->view()->updateAllLifecyclePhases(); |
142 m_canvasElement = toHTMLCanvasElement(m_document->getElementById("c")); | 142 m_canvasElement = toHTMLCanvasElement(m_document->getElementById("c")); |
143 | 143 |
144 m_fullImageData = ImageData::create(IntSize(10, 10)); | 144 NonThrowableExceptionState exceptionState; |
145 m_partialImageData = ImageData::create(IntSize(2, 2)); | 145 m_fullImageData = ImageData::create(IntSize(10, 10), exceptionState); |
| 146 EXPECT_FALSE(exceptionState.hadException()); |
| 147 m_partialImageData = ImageData::create(IntSize(2, 2), exceptionState); |
| 148 EXPECT_FALSE(exceptionState.hadException()); |
146 | 149 |
147 NonThrowableExceptionState exceptionState; | |
148 CanvasGradient* opaqueGradient = CanvasGradient::create(FloatPoint(0, 0), Fl
oatPoint(10, 0)); | 150 CanvasGradient* opaqueGradient = CanvasGradient::create(FloatPoint(0, 0), Fl
oatPoint(10, 0)); |
149 opaqueGradient->addColorStop(0, String("green"), exceptionState); | 151 opaqueGradient->addColorStop(0, String("green"), exceptionState); |
150 EXPECT_FALSE(exceptionState.hadException()); | 152 EXPECT_FALSE(exceptionState.hadException()); |
151 opaqueGradient->addColorStop(1, String("blue"), exceptionState); | 153 opaqueGradient->addColorStop(1, String("blue"), exceptionState); |
152 EXPECT_FALSE(exceptionState.hadException()); | 154 EXPECT_FALSE(exceptionState.hadException()); |
153 this->opaqueGradient().setCanvasGradient(opaqueGradient); | 155 this->opaqueGradient().setCanvasGradient(opaqueGradient); |
154 | 156 |
155 CanvasGradient* alphaGradient = CanvasGradient::create(FloatPoint(0, 0), Flo
atPoint(10, 0)); | 157 CanvasGradient* alphaGradient = CanvasGradient::create(FloatPoint(0, 0), Flo
atPoint(10, 0)); |
156 alphaGradient->addColorStop(0, String("green"), exceptionState); | 158 alphaGradient->addColorStop(0, String("green"), exceptionState); |
157 EXPECT_FALSE(exceptionState.hadException()); | 159 EXPECT_FALSE(exceptionState.hadException()); |
(...skipping 466 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
624 // The canvasChanged notification must be immediate, and not deferred until
paint time | 626 // The canvasChanged notification must be immediate, and not deferred until
paint time |
625 // because offscreen canvases, which are not painted, also need to emit noti
fications. | 627 // because offscreen canvases, which are not painted, also need to emit noti
fications. |
626 EXPECT_CALL(*observer, canvasChanged(&canvasElement(), FloatRect(0, 0, 1, 1)
)).Times(1); | 628 EXPECT_CALL(*observer, canvasChanged(&canvasElement(), FloatRect(0, 0, 1, 1)
)).Times(1); |
627 context2d()->fillRect(0, 0, 1, 1); | 629 context2d()->fillRect(0, 0, 1, 1); |
628 Mock::VerifyAndClearExpectations(observer.get()); | 630 Mock::VerifyAndClearExpectations(observer.get()); |
629 | 631 |
630 canvasElement().removeObserver(observer.get()); | 632 canvasElement().removeObserver(observer.get()); |
631 } | 633 } |
632 | 634 |
633 } // namespace blink | 635 } // namespace blink |
OLD | NEW |