From 13213724b036140a95ad9116bc80a015066e5358 Mon Sep 17 00:00:00 2001 From: "Kirill A. Shutemov" Date: Tue, 21 Feb 2017 02:05:54 +0300 Subject: [PATCH] PAC: fix isPlainHostName() Fix isPlainHostName() implementation and add test-case for it. Signed-off-by: Kirill A. Shutemov --- qutebrowser/javascript/pac_utils.js | 2 +- tests/unit/browser/webkit/network/test_pac.py | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/qutebrowser/javascript/pac_utils.js b/qutebrowser/javascript/pac_utils.js index a6102df9f..b4540c18a 100644 --- a/qutebrowser/javascript/pac_utils.js +++ b/qutebrowser/javascript/pac_utils.js @@ -78,7 +78,7 @@ function isInNet(ipaddr, pattern, maskstr) { } function isPlainHostName(host) { - return (host.search('\\\\.') == -1); + return (host.search('\\.') == -1); } function isResolvable(host) { diff --git a/tests/unit/browser/webkit/network/test_pac.py b/tests/unit/browser/webkit/network/test_pac.py index dc9229dbf..e52b4e7ec 100644 --- a/tests/unit/browser/webkit/network/test_pac.py +++ b/tests/unit/browser/webkit/network/test_pac.py @@ -109,6 +109,15 @@ def test_myIpAddress(): _pac_equality_test("isResolvable(myIpAddress())", "true") +@pytest.mark.parametrize("host, expected", [ + ("example", "true"), + ("example.com", "false"), + ("www.example.com", "false"), +]) +def test_isPlainHostName(host, expected): + _pac_equality_test("isPlainHostName('{}')".format(host), expected) + + def test_proxyBindings(): _pac_equality_test("JSON.stringify(ProxyConfig.bindings)", "'{}'")