diff options
author | Florian Bruhin <git@the-compiler.org> | 2016-06-08 15:15:01 +0200 |
---|---|---|
committer | Florian Bruhin <git@the-compiler.org> | 2016-06-08 15:15:54 +0200 |
commit | b6e534f9b89f9ff8b4b5c9f395bb1997d2b0ccc2 (patch) | |
tree | 368740c655a8aa4546c8a6c9e8644cbbbbd51d93 /tests/end2end/features/test_history_bdd.py | |
parent | f17d4388fd79e74a094dd1868472361ee64fdea8 (diff) | |
download | qutebrowser-b6e534f9b89f9ff8b4b5c9f395bb1997d2b0ccc2.tar.gz qutebrowser-b6e534f9b89f9ff8b4b5c9f395bb1997d2b0ccc2.zip |
Add BDD tests for new history code
Diffstat (limited to 'tests/end2end/features/test_history_bdd.py')
-rw-r--r-- | tests/end2end/features/test_history_bdd.py | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/tests/end2end/features/test_history_bdd.py b/tests/end2end/features/test_history_bdd.py new file mode 100644 index 000000000..3190a0a31 --- /dev/null +++ b/tests/end2end/features/test_history_bdd.py @@ -0,0 +1,44 @@ +# vim: ft=python fileencoding=utf-8 sts=4 sw=4 et: + +# Copyright 2016 Florian Bruhin (The Compiler) <mail@qutebrowser.org> +# +# 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 <http://www.gnu.org/licenses/>. + +import os.path + +import pytest_bdd as bdd +bdd.scenarios('history.feature') + + +@bdd.then(bdd.parsers.parse("the history file should contain:\n{expected}")) +def check_history(quteproc, httpbin, expected): + history_file = os.path.join(quteproc.basedir, 'data', 'history') + quteproc.send_cmd(':save history') + quteproc.wait_for(message='Saved to *history') + + expected = expected.replace('(port)', str(httpbin.port)).splitlines() + + with open(history_file, 'r', encoding='utf-8') as f: + lines = [] + for line in f: + if not line.strip(): + continue + print('history line: ' + line) + line = line.split(' ', maxsplit=1)[1] # Strip off timestamp + line = line.rstrip() + lines.append(line) + + assert lines == expected |