diff options
author | Allan Sandfeld Jensen <allan.jensen@digia.com> | 2013-09-13 12:51:20 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-19 20:50:05 +0200 |
commit | d441d6f39bb846989d95bcf5caf387b42414718d (patch) | |
tree | e367e64a75991c554930278175d403c072de6bb8 /Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp | |
parent | 0060b2994c07842f4c59de64b5e3e430525c4b90 (diff) | |
download | qtwebkit-d441d6f39bb846989d95bcf5caf387b42414718d.tar.gz |
Import Qt5x2 branch of QtWebkit for Qt 5.2
Importing a new snapshot of webkit.
Change-Id: I2d01ad12cdc8af8cb015387641120a9d7ea5f10c
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
Diffstat (limited to 'Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp')
-rw-r--r-- | Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp | 41 |
1 files changed, 25 insertions, 16 deletions
diff --git a/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp b/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp index ac13e4d07..1a06f7496 100644 --- a/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp +++ b/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp @@ -133,7 +133,7 @@ serverCallback(SoupServer* server, SoupMessage* message, const char* path, GHash soup_message_body_complete(message->response_body); } -static void testNotInitialized(FaviconDatabaseTest* test, gconstpointer) +static void testNotInitialized(FaviconDatabaseTest* test) { // Try to retrieve a valid favicon from a not initialized database. test->getFaviconForPageURIAndWaitUntilReady(kServer->getURIForPath("/foo").data()); @@ -142,22 +142,22 @@ static void testNotInitialized(FaviconDatabaseTest* test, gconstpointer) g_assert_cmpint(test->m_error->code, ==, WEBKIT_FAVICON_DATABASE_ERROR_NOT_INITIALIZED); } -static void testSetDirectory(FaviconDatabaseTest* test, gconstpointer) +static void testSetDirectory(FaviconDatabaseTest* test) { webkit_web_context_set_favicon_database_directory(test->m_webContext, kTempDirectory); g_assert_cmpstr(kTempDirectory, ==, webkit_web_context_get_favicon_database_directory(test->m_webContext)); } -static void testClearDatabase(FaviconDatabaseTest* test, gconstpointer) +static void testClearDatabase(FaviconDatabaseTest* test) { WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(test->m_webContext); webkit_favicon_database_clear(database); - GOwnPtr<char> iconURI(webkit_favicon_database_get_favicon_uri(database, kServer->getURIForPath("/").data())); + GOwnPtr<char> iconURI(webkit_favicon_database_get_favicon_uri(database, kServer->getURIForPath("/foo").data())); g_assert(!iconURI); } -static void testGetFavicon(FaviconDatabaseTest* test, gconstpointer) +static void testGetFavicon(FaviconDatabaseTest* test) { // We need to load the page first to ensure the icon data will be // in the database in case there's an associated favicon. @@ -198,17 +198,19 @@ static void testGetFavicon(FaviconDatabaseTest* test, gconstpointer) g_assert(test->m_error); } -static void testGetFaviconURI(FaviconDatabaseTest* test, gconstpointer) +static void testGetFaviconURI(FaviconDatabaseTest* test) { WebKitFaviconDatabase* database = webkit_web_context_get_favicon_database(test->m_webContext); - const char* baseURI = kServer->getURIForPath("/foo").data(); - GOwnPtr<char> iconURI(webkit_favicon_database_get_favicon_uri(database, baseURI)); - g_assert_cmpstr(iconURI.get(), ==, kServer->getURIForPath("/icon/favicon.ico").data()); + CString baseURI = kServer->getURIForPath("/foo"); + GOwnPtr<char> iconURI(webkit_favicon_database_get_favicon_uri(database, baseURI.data())); + ASSERT_CMP_CSTRING(iconURI.get(), ==, kServer->getURIForPath("/icon/favicon.ico")); } -static void testWebViewFavicon(FaviconDatabaseTest* test, gconstpointer) +static void testWebViewFavicon(FaviconDatabaseTest* test) { + test->m_faviconURI = CString(); + cairo_surface_t* iconFromWebView = webkit_web_view_get_favicon(test->m_webView); g_assert(!iconFromWebView); @@ -225,6 +227,18 @@ static void testWebViewFavicon(FaviconDatabaseTest* test, gconstpointer) g_assert_cmpuint(cairo_image_surface_get_height(iconFromWebView), ==, 16); } +static void testFaviconDatabase(FaviconDatabaseTest* test, gconstpointer) +{ + // These tests depend on this order to run properly so we declare them in a single one. + // See https://bugs.webkit.org/show_bug.cgi?id=111434. + testNotInitialized(test); + testSetDirectory(test); + testGetFavicon(test); + testGetFaviconURI(test); + testWebViewFavicon(test); + testClearDatabase(test); +} + void beforeAll() { // Start a soup server for testing. @@ -235,12 +249,7 @@ void beforeAll() g_assert(kTempDirectory); // Add tests to the suite. - FaviconDatabaseTest::add("WebKitFaviconDatabase", "not-initialized", testNotInitialized); - FaviconDatabaseTest::add("WebKitFaviconDatabase", "set-directory", testSetDirectory); - FaviconDatabaseTest::add("WebKitFaviconDatabase", "get-favicon", testGetFavicon); - FaviconDatabaseTest::add("WebKitFaviconDatabase", "get-favicon-uri", testGetFaviconURI); - FaviconDatabaseTest::add("WebKitWebView", "favicon", testWebViewFavicon); - FaviconDatabaseTest::add("WebKitFaviconDatabase", "clear-database", testClearDatabase); + FaviconDatabaseTest::add("WebKitFaviconDatabase", "favicon-database-test", testFaviconDatabase); } static void webkitFaviconDatabaseFinalizedCallback(gpointer, GObject*) |