diff --git a/tests/end2end/data/adblock/simple b/tests/end2end/data/adblock/simple new file mode 100644 index 000000000..5778335db --- /dev/null +++ b/tests/end2end/data/adblock/simple @@ -0,0 +1 @@ +example.org diff --git a/tests/end2end/features/adblock.feature b/tests/end2end/features/adblock.feature new file mode 100644 index 000000000..c33df30fe --- /dev/null +++ b/tests/end2end/features/adblock.feature @@ -0,0 +1,6 @@ +Feature: Ad blocking + + Scenario: Simple adblock update + When I set up "simple" as block lists + And I run :adblock-update + Then the message "adblock: Read 1 hosts from 1 sources." should be shown diff --git a/tests/end2end/features/test_adblock_bdd.py b/tests/end2end/features/test_adblock_bdd.py new file mode 100644 index 000000000..9f4ae63b3 --- /dev/null +++ b/tests/end2end/features/test_adblock_bdd.py @@ -0,0 +1,29 @@ +# vim: ft=python fileencoding=utf-8 sts=4 sw=4 et: + +# Copyright 2016 Florian Bruhin (The Compiler) +# +# This file is part of qutebrowser. +# +# qutebrowser is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# qutebrowser is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with qutebrowser. If not, see . + +import pytest_bdd as bdd + +bdd.scenarios('adblock.feature') + + +@bdd.when(bdd.parsers.parse('I set up "{lists}" as block lists')) +def set_up_blocking(quteproc, lists, httpbin): + url = 'http://localhost:{}/data/adblock/'.format(httpbin.port) + urls = [url + item.strip() for item in lists.split(',')] + quteproc.set_setting('content', 'host-block-lists', ','.join(urls))