summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2022-11-08 16:17:31 +0100
committerFlorian Bruhin <me@the-compiler.org>2022-11-08 16:17:31 +0100
commit1387c999fa81af670f192b22e5186509dc769206 (patch)
tree3b253c065630f372639d7f411f4cb13411b529db
parent8431ba43ffc4c3726ec09a35a920a0de0b19c1e4 (diff)
downloadqutebrowser-1387c999fa81af670f192b22e5186509dc769206.tar.gz
qutebrowser-1387c999fa81af670f192b22e5186509dc769206.zip
Skip problematic QtWebKit tests with OpenSSL 3
See https://github.com/cherrypy/cheroot/issues/517 and #7467
-rw-r--r--pytest.ini1
-rw-r--r--tests/conftest.py5
-rw-r--r--tests/end2end/features/prompts.feature5
3 files changed, 11 insertions, 0 deletions
diff --git a/pytest.ini b/pytest.ini
index 50682a2cc..abe55bc6e 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -37,6 +37,7 @@ markers =
unicode_locale: Tests which need a unicode locale to work
js_headers: Sets JS headers dynamically on QtWebEngine (unsupported on some versions)
qtwebkit_pdf_imageformat_skip: Broken on QtWebKit with PDF image format plugin installed
+ qtwebkit_openssl3_skip: Broken due to cheroot bug with OpenSSL 3 on QtWebKit
windows_skip: Tests which should be skipped on Windows
qt_log_level_fail = WARNING
qt_log_ignore =
diff --git a/tests/conftest.py b/tests/conftest.py
index f7e685f4e..65f76aacc 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -22,6 +22,7 @@
import os
import pathlib
import sys
+import ssl
import pytest
import hypothesis
@@ -111,6 +112,10 @@ def _apply_platform_markers(config, item):
pytest.mark.skipif,
sys.getfilesystemencoding() == 'ascii',
"Skipped because of ASCII locale"),
+ ('qtwebkit_openssl3_skip',
+ pytest.mark.skipif,
+ not config.webengine and ssl.OPENSSL_VERSION_INFO[0] == 3,
+ "Failing due to cheroot: https://github.com/cherrypy/cheroot/issues/346"),
]
for searched_marker, new_marker_kind, condition, default_reason in markers:
diff --git a/tests/end2end/features/prompts.feature b/tests/end2end/features/prompts.feature
index 028f1a7b9..3ef4b9567 100644
--- a/tests/end2end/features/prompts.feature
+++ b/tests/end2end/features/prompts.feature
@@ -171,6 +171,7 @@ Feature: Prompts
Then the error "Certificate error: *" should be shown
And the page should contain the plaintext "Hello World via SSL!"
+ @qtwebkit_openssl3_skip
Scenario: SSL error with content.tls.certificate_errors = block
When I clear SSL errors
And I set content.tls.certificate_errors to block
@@ -186,6 +187,7 @@ Feature: Prompts
And I wait until the SSL page finished loading
Then the page should contain the plaintext "Hello World via SSL!"
+ @qtwebkit_openssl3_skip
Scenario: SSL error with content.tls.certificate_errors = ask -> no
When I clear SSL errors
And I set content.tls.certificate_errors to ask
@@ -194,6 +196,7 @@ Feature: Prompts
And I run :prompt-accept no
Then a SSL error page should be shown
+ @qtwebkit_openssl3_skip
Scenario: SSL error with content.tls.certificate_errors = ask -> abort
When I clear SSL errors
And I set content.tls.certificate_errors to ask
@@ -221,6 +224,7 @@ Feature: Prompts
Then the javascript message "Script loaded" should be logged
And the page should contain the plaintext "Script loaded"
+ @qtwebkit_openssl3_skip
Scenario: SSL resource error with content.tls.certificate_errors = ask -> no
When I clear SSL errors
And I set content.tls.certificate_errors to ask
@@ -231,6 +235,7 @@ Feature: Prompts
Then the javascript message "Script loaded" should not be logged
And the page should contain the plaintext "Script not loaded"
+ @qtwebkit_openssl3_skip
Scenario: SSL resource error with content.tls.certificate_errors = ask-block-thirdparty
When I clear SSL errors
And I set content.tls.certificate_errors to ask-block-thirdparty