Title: [135506] trunk/Source/WebKit/chromium
- Revision
- 135506
- Author
- [email protected]
- Date
- 2012-11-22 05:16:48 -0800 (Thu, 22 Nov 2012)
Log Message
IDBRequestTest needs a v8 context
https://bugs.webkit.org/show_bug.cgi?id=102941
Patch by Dan Carney <[email protected]> on 2012-11-22
Reviewed by Jochen Eisinger.
Added v8 context to IDBRequestTest tests.
* tests/IDBRequestTest.cpp:
(IDBRequestTest):
(WebKit::IDBRequestTest::IDBRequestTest):
(WebKit::IDBRequestTest::context):
(WebKit::IDBRequestTest::scriptExecutionContext):
(WebKit):
(WebKit::TEST_F):
Modified Paths
Diff
Modified: trunk/Source/WebKit/chromium/ChangeLog (135505 => 135506)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-11-22 12:39:30 UTC (rev 135505)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-11-22 13:16:48 UTC (rev 135506)
@@ -1,3 +1,20 @@
+2012-11-22 Dan Carney <[email protected]>
+
+ IDBRequestTest needs a v8 context
+ https://bugs.webkit.org/show_bug.cgi?id=102941
+
+ Reviewed by Jochen Eisinger.
+
+ Added v8 context to IDBRequestTest tests.
+
+ * tests/IDBRequestTest.cpp:
+ (IDBRequestTest):
+ (WebKit::IDBRequestTest::IDBRequestTest):
+ (WebKit::IDBRequestTest::context):
+ (WebKit::IDBRequestTest::scriptExecutionContext):
+ (WebKit):
+ (WebKit::TEST_F):
+
2012-11-21 Tien-Ren Chen <[email protected]>
[chromium] Device scale factor should be no-op when applyDeviceScaleFactorInCompositor == 0
Modified: trunk/Source/WebKit/chromium/WebKit.gyp (135505 => 135506)
--- trunk/Source/WebKit/chromium/WebKit.gyp 2012-11-22 12:39:30 UTC (rev 135505)
+++ trunk/Source/WebKit/chromium/WebKit.gyp 2012-11-22 13:16:48 UTC (rev 135506)
@@ -720,6 +720,7 @@
'tests/FakeWebPlugin.cpp',
'tests/FrameTestHelpers.cpp',
'tests/IDBBindingUtilitiesTest.cpp',
+ 'tests/IDBRequestTest.cpp',
'tests/LevelDBTest.cpp',
'tests/ListenerLeakTest.cpp',
'tests/LinkHighlightTest.cpp',
Modified: trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp (135505 => 135506)
--- trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp 2012-11-22 12:39:30 UTC (rev 135505)
+++ trunk/Source/WebKit/chromium/tests/IDBRequestTest.cpp 2012-11-22 13:16:48 UTC (rev 135506)
@@ -28,23 +28,64 @@
#include "IDBRequest.h"
#include "DOMStringList.h"
+#include "Document.h"
+#include "Frame.h"
+#include "FrameTestHelpers.h"
#include "IDBCursorBackendInterface.h"
#include "IDBDatabaseBackendImpl.h"
#include "IDBTransactionCoordinator.h"
+#include "WebFrame.h"
+#include "WebFrameImpl.h"
+#include "WebView.h"
#include <gtest/gtest.h>
#if ENABLE(INDEXED_DATABASE)
using namespace WebCore;
+using namespace WebKit;
namespace {
-TEST(IDBRequestTest, EventsAfterStopping)
+class IDBRequestTest : public testing::Test {
+public:
+ IDBRequestTest()
+ : m_webView(0)
+ {
+ }
+
+ void SetUp() OVERRIDE
+ {
+ m_webView = FrameTestHelpers::createWebViewAndLoad("about:blank");
+ m_webView->setFocus(true);
+ }
+
+ void TearDown() OVERRIDE
+ {
+ m_webView->close();
+ }
+
+ v8::Handle<v8::Context> context()
+ {
+ return static_cast<WebFrameImpl*>(m_webView->mainFrame())->frame()->script()->mainWorldContext();
+ }
+
+ ScriptExecutionContext* scriptExecutionContext()
+ {
+ return static_cast<WebFrameImpl*>(m_webView->mainFrame())->frame()->document();
+ }
+
+private:
+ WebView* m_webView;
+};
+
+TEST_F(IDBRequestTest, EventsAfterStopping)
{
- ScriptExecutionContext* context = 0;
+ v8::HandleScope handleScope;
+ v8::Context::Scope scope(context());
+
IDBTransaction* transaction = 0;
- RefPtr<IDBRequest> request = IDBRequest::create(context, IDBAny::createInvalid(), transaction);
+ RefPtr<IDBRequest> request = IDBRequest::create(scriptExecutionContext(), IDBAny::createInvalid(), transaction);
EXPECT_EQ(request->readyState(), "pending");
request->stop();
@@ -59,11 +100,13 @@
request->onSuccess(IDBKey::createInvalid(), IDBKey::createInvalid(), SerializedScriptValue::nullValue());
}
-TEST(IDBRequestTest, AbortErrorAfterAbort)
+TEST_F(IDBRequestTest, AbortErrorAfterAbort)
{
- ScriptExecutionContext* context = 0;
+ v8::HandleScope handleScope;
+ v8::Context::Scope scope(context());
+
IDBTransaction* transaction = 0;
- RefPtr<IDBRequest> request = IDBRequest::create(context, IDBAny::createInvalid(), transaction);
+ RefPtr<IDBRequest> request = IDBRequest::create(scriptExecutionContext(), IDBAny::createInvalid(), transaction);
EXPECT_EQ(request->readyState(), "pending");
// Simulate the IDBTransaction having received onAbort from back end and aborting the request:
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes