Title: [88435] trunk
Revision
88435
Author
[email protected]
Date
2011-06-09 01:47:45 -0700 (Thu, 09 Jun 2011)

Log Message

[Qt][WK2] Canvas tests make css2.1 ones failing
https://bugs.webkit.org/show_bug.cgi?id=53427

Patch by Zoltan Herczeg <[email protected]> on 2011-06-09
Reviewed by Csaba Osztrogonac.

Tools: 

Adding a workaround for this issue by mimicing the behaviour of DumpRenderTree.
Since the Qt port should eventually go to QRawFont, this issue will be resolved
in the future. Both clearMemoryCaches() and removeAllApplicationFonts() are
needed for the workaround.

* WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
(WTR::LayoutTestController::platformInitialize):

LayoutTests: 

Unskipping canvas tests for WebKit2-Qt.

* platform/qt-wk2/Skipped:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (88434 => 88435)


--- trunk/LayoutTests/ChangeLog	2011-06-09 08:41:56 UTC (rev 88434)
+++ trunk/LayoutTests/ChangeLog	2011-06-09 08:47:45 UTC (rev 88435)
@@ -1,3 +1,14 @@
+2011-06-09  Zoltan Herczeg  <[email protected]>
+
+        Reviewed by Csaba Osztrogonac.
+
+        [Qt][WK2] Canvas tests make css2.1 ones failing
+        https://bugs.webkit.org/show_bug.cgi?id=53427
+
+        Unskipping canvas tests for WebKit2-Qt.
+
+        * platform/qt-wk2/Skipped:
+
 2011-06-09  Adam Barth  <[email protected]>
 
         Reviewed by Eric Seidel.

Modified: trunk/LayoutTests/platform/qt-wk2/Skipped (88434 => 88435)


--- trunk/LayoutTests/platform/qt-wk2/Skipped	2011-06-09 08:41:56 UTC (rev 88434)
+++ trunk/LayoutTests/platform/qt-wk2/Skipped	2011-06-09 08:47:45 UTC (rev 88435)
@@ -2270,9 +2270,6 @@
 # requires video.buffered to be able to return multiple timeranges
 http/tests/media/video-buffered.html
 
-# canvas tests pass, but break ~100 css2.1 tests, it might be a bug in WebKitTestRunner
-canvas
-
 # These tests always fail (with and without --singly). It needs investigation.
 animations/animation-controller-drt-api.html
 dom/xhtml/level2/html/HTMLDocument17.xhtml

Modified: trunk/Tools/ChangeLog (88434 => 88435)


--- trunk/Tools/ChangeLog	2011-06-09 08:41:56 UTC (rev 88434)
+++ trunk/Tools/ChangeLog	2011-06-09 08:47:45 UTC (rev 88435)
@@ -1,3 +1,18 @@
+2011-06-09  Zoltan Herczeg  <[email protected]>
+
+        Reviewed by Csaba Osztrogonac.
+
+        [Qt][WK2] Canvas tests make css2.1 ones failing
+        https://bugs.webkit.org/show_bug.cgi?id=53427
+
+        Adding a workaround for this issue by mimicing the behaviour of DumpRenderTree.
+        Since the Qt port should eventually go to QRawFont, this issue will be resolved
+        in the future. Both clearMemoryCaches() and removeAllApplicationFonts() are
+        needed for the workaround.
+
+        * WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
+        (WTR::LayoutTestController::platformInitialize):
+
 2011-06-09  Mario Sanchez Prada  <[email protected]>
 
         Reviewed by Chris Fleizach.

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp (88434 => 88435)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp	2011-06-09 08:41:56 UTC (rev 88434)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp	2011-06-09 08:47:45 UTC (rev 88435)
@@ -27,9 +27,12 @@
 #include "config.h"
 #include "LayoutTestController.h"
 
+#include "ActivateFonts.h"
 #include "InjectedBundle.h"
 #include <QDir>
+#include <QFontDatabase>
 #include <QObject>
+#include <qwebsettings.h>
 
 namespace WTR {
 
@@ -55,6 +58,15 @@
 
 void LayoutTestController::platformInitialize()
 {
+    // Make WebKit2 mimic the behaviour of DumpRenderTree, which is incorrect,
+    // but tests are successfully passed. On the long run, Qt will move to QRawFont,
+    // which makes the use of QFontDatabase unnecessary.
+    // See https://bugs.webkit.org/show_bug.cgi?id=53427
+    QWebSettings::clearMemoryCaches();
+#if !(defined(Q_OS_SYMBIAN) && QT_VERSION <= QT_VERSION_CHECK(4, 6, 2))
+    QFontDatabase::removeAllApplicationFonts();
+#endif
+    activateFonts();
     QObject::connect(&m_waitToDumpWatchdogTimer, SIGNAL(timeout()), WatchdogTimerHelper::instance(), SLOT(timerFired()));
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to