Skip to content

Commit

Permalink
[GLib] API test /webkit/WebKitSettings/webkit-settings is failing
Browse files Browse the repository at this point in the history
https://bugs.webkit.org/show_bug.cgi?id=259049

Reviewed by Michael Catanzaro.

The test was failing because
`webkit_settings_get_load_icons_ignoring_image_load_setting()` and
`webkit_settings_set_load_icons_ignoring_image_load_setting()` are
deprecated and issue a `g_warning()` which is fatal by default in
Glib tests.

The solution is to temporarily remove `G_LOG_LEVEL_WARNING` from fatals.

Also, unlike some other similar deprecated API functions, these two were
not marked as `WEBKIT_DEPRECATED`.

* Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:
(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
* Source/WebKit/UIProcess/API/glib/WebKitSettings.h.in:
* Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings):
(testWebKitSettingsNewWithSettings):
* Tools/TestWebKitAPI/glib/TestExpectations.json:

Canonical link: https://commits.webkit.org/265946@main
  • Loading branch information
obyknovenius committed Jul 11, 2023
1 parent beecadc commit 1ba6a9f
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 13 deletions.
8 changes: 6 additions & 2 deletions Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,7 @@ static void webKitSettingsSetProperty(GObject* object, guint propId, const GValu
{
WebKitSettings* settings = WEBKIT_SETTINGS(object);

ALLOW_DEPRECATED_DECLARATIONS_BEGIN
switch (propId) {
case PROP_ENABLE_JAVASCRIPT:
webkit_settings_set_enable_javascript(settings, g_value_get_boolean(value));
Expand Down Expand Up @@ -416,12 +417,14 @@ static void webKitSettingsSetProperty(GObject* object, guint propId, const GValu
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, paramSpec);
break;
}
ALLOW_DEPRECATED_DECLARATIONS_END
}

static void webKitSettingsGetProperty(GObject* object, guint propId, GValue* value, GParamSpec* paramSpec)
{
WebKitSettings* settings = WEBKIT_SETTINGS(object);

ALLOW_DEPRECATED_DECLARATIONS_BEGIN
switch (propId) {
case PROP_ENABLE_JAVASCRIPT:
g_value_set_boolean(value, webkit_settings_get_enable_javascript(settings));
Expand Down Expand Up @@ -622,6 +625,7 @@ static void webKitSettingsGetProperty(GObject* object, guint propId, GValue* val
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, paramSpec);
break;
}
ALLOW_DEPRECATED_DECLARATIONS_END
}

static void webkit_settings_class_init(WebKitSettingsClass* klass)
Expand Down Expand Up @@ -677,7 +681,7 @@ static void webkit_settings_class_init(WebKitSettingsClass* klass)
_("Load icons ignoring image load setting"),
_("Whether to load site icons ignoring image load setting."),
FALSE,
readWriteConstructParamFlags);
static_cast<GParamFlags>(readWriteConstructParamFlags | G_PARAM_DEPRECATED));

/**
* WebKitSettings:enable-offline-web-application-cache:
Expand Down Expand Up @@ -787,7 +791,7 @@ static void webkit_settings_class_init(WebKitSettingsClass* klass)
_("Enable Java"),
_("Whether Java support should be enabled."),
FALSE,
readWriteConstructParamFlags);
static_cast<GParamFlags>(readWriteConstructParamFlags | G_PARAM_DEPRECATED));
#endif

/**
Expand Down
4 changes: 2 additions & 2 deletions Source/WebKit/UIProcess/API/glib/WebKitSettings.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,10 @@ WEBKIT_API void
webkit_settings_set_auto_load_images (WebKitSettings *settings,
gboolean enabled);

WEBKIT_API gboolean
WEBKIT_DEPRECATED gboolean
webkit_settings_get_load_icons_ignoring_image_load_setting (WebKitSettings *settings);

WEBKIT_API void
WEBKIT_DEPRECATED void
webkit_settings_set_load_icons_ignoring_image_load_setting (WebKitSettings *settings,
gboolean enabled);

Expand Down
8 changes: 5 additions & 3 deletions Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,15 @@ static void testWebKitSettings(Test*, gconstpointer)
webkit_settings_set_auto_load_images(settings, FALSE);
g_assert_false(webkit_settings_get_auto_load_images(settings));

ALLOW_DEPRECATED_DECLARATIONS_BEGIN
// load-icons-ignoring-image-load-setting is deprecated and always false.
// Make warnings non-fatal for this test to make it pass.
Test::removeLogFatalFlag(G_LOG_LEVEL_WARNING);
g_assert_false(webkit_settings_get_load_icons_ignoring_image_load_setting(settings));
webkit_settings_set_load_icons_ignoring_image_load_setting(settings, TRUE);
g_assert_false(webkit_settings_get_load_icons_ignoring_image_load_setting(settings));
Test::addLogFatalFlag(G_LOG_LEVEL_WARNING);
ALLOW_DEPRECATED_DECLARATIONS_END

// Offline application cache is true by default.
g_assert_true(webkit_settings_get_enable_offline_web_application_cache(settings));
Expand Down Expand Up @@ -392,13 +397,10 @@ void testWebKitSettingsNewWithSettings(Test* test, gconstpointer)
GRefPtr<WebKitSettings> settings = adoptGRef(webkit_settings_new_with_settings(
"enable-javascript", FALSE,
"auto-load-images", FALSE,
"load-icons-ignoring-image-load-setting", TRUE,
nullptr));
test->assertObjectIsDeletedWhenTestFinishes(G_OBJECT(settings.get()));
g_assert_false(webkit_settings_get_enable_javascript(settings.get()));
g_assert_false(webkit_settings_get_auto_load_images(settings.get()));
// load-icons-ignoring-image-load-setting is deprecated and always false.
g_assert_false(webkit_settings_get_load_icons_ignoring_image_load_setting(settings.get()));
}

void testWebKitFeatures(Test* test, gconstpointer)
Expand Down
6 changes: 0 additions & 6 deletions Tools/TestWebKitAPI/glib/TestExpectations.json
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,6 @@
"subtests": {
"/webkit/WebKitSettings/javascript-markup": {
"expected": {"all@Debug": {"status": ["CRASH"], "bug": "webkit.org/b/221119"}}
},
"/webkit/WebKitSettings/webkit-settings": {
"expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/256557"}}
},
"/webkit/WebKitSettings/new-with-settings": {
"expected": {"all": {"status": ["FAIL"], "bug": "webkit.org/b/256557"}}
}
}
},
Expand Down

0 comments on commit 1ba6a9f

Please sign in to comment.