Commit Graph

195 Commits

Author SHA1 Message Date
Niklas Haas
c2cc28a72b
Add new-instance-open-target.window = first-opened
Fixes #1060.

In the process of adding this, I also decided to rewrite
mainwindow.get_window() for clarity (and also because flake8 was warning
about complexity).

Also adds some tests to the new-instance-target mechanism, in particular
a specific test for the issue in question.
2016-08-16 12:24:38 +02:00
Florian Bruhin
cf0b12b5a9 Merge branch 'var_replacements' of https://github.com/lahwaacz/qutebrowser into lahwaacz-var_replacements 2016-08-16 11:49:31 +02:00
Florian Bruhin
380856bcb2 Merge branch 'navigate-count' of https://github.com/pvsr/qutebrowser into pvsr-navigate-count 2016-08-16 11:21:07 +02:00
Florian Bruhin
9d7d307aa5 Merge branch 'winonly' of https://github.com/haasn/qutebrowser into haasn-winonly 2016-08-16 11:02:49 +02:00
Peter Rice
ad9dfc1981 add end-to-end tests for navigating with a count 2016-08-16 04:28:31 -04:00
Michael Hoang
8608c6b8b3 Remove unnecessary fresh instance requirement for test 2016-08-16 08:04:54 +10:00
Michael Hoang
c0ab474b21 Give error when trying to detach a single tab 2016-08-16 07:36:39 +10:00
Jakub Klinkovský
befaf4f6dc fix nested expansion of {variables} in command args 2016-08-14 15:29:16 +02:00
Niklas Haas
b6145d98a4
Remove some unnecessary "fresh instances" in tests
With the addition of :window-only, it's no longer necessary to use
"Given I have a fresh instance" to clean up previous windows. This
greatly cuts down on the amount of process restarts that need to happen
to complete a full testing cycle.

I also made one of the tests more robust against order alterations, and
removed some unnecessary extra commands that were already implied by the
background on others.
2016-08-12 00:20:57 +02:00
Niklas Haas
d5080bdb1a
Add :window-only command
I mainly added this so I can speed up all of the tests that rely on
closing other windows.
2016-08-11 23:37:14 +02:00
Florian Bruhin
fe3c748e44 Fix another navigation request log 2016-08-11 17:47:13 +02:00
Florian Bruhin
20517e9a8f Adjust navigation request logging in hints.feature 2016-08-11 16:38:51 +02:00
Jakub Klinkovský
9b1c07e2e2 add tests for hints auto-follow in word mode 2016-08-11 15:20:52 +02:00
Jan Verbeek
79ab5da45b Update test comment 2016-08-11 14:04:30 +02:00
Florian Bruhin
aafdc225bc tests: Use last history item to check scroll pos 2016-08-11 11:56:11 +02:00
Florian Bruhin
bb2eee6178 Add a test for #1821 2016-08-11 11:49:56 +02:00
Florian Bruhin
c12aeea670 tests: Move data/scroll.html to data/scroll/simple 2016-08-11 11:47:55 +02:00
Jan Verbeek
e7367bd949 Make :insert-text test platform-independent
The test for inserting text at a specific position failed because
<Ctrl+Right> doesn't behave the same on Windows and Linux. This changes
it to move the cursor using other keys.
2016-08-11 02:26:48 +02:00
Jan Verbeek
4966debd61 Deprecate :paste-primary to :insert-text {primary} 2016-08-10 21:55:16 +02:00
Florian Bruhin
57896dc00e Merge branch 'clip' of https://github.com/blyxxyz/qutebrowser into blyxxyz-clip 2016-08-10 20:38:54 +02:00
Jan Verbeek
efa53ac25e Add variable tests 2016-08-10 19:42:03 +02:00
Jakub Klinkovský
073e5555ca add more tests for hints auto-follow 2016-08-10 16:12:09 +02:00
Michael Hoang
66dcc391ba Add tests to check :undo opens in the old position 2016-08-10 21:52:02 +10:00
Jakub Klinkovský
605e90a222 simplify hints auto-follow tests 2016-08-10 13:14:21 +02:00
Jakub Klinkovský
f69c02a2b1 tests: fix hints auto-follow tests 2016-08-10 13:05:53 +02:00
Jakub Klinkovský
a31565f46e hints: make auto-follow a quadruple option instead of binary 2016-08-10 12:40:16 +02:00
Florian Bruhin
cc0579bd1a Merge branch 'bind-alias' of https://github.com/rcorre/qutebrowser into rcorre-bind-alias 2016-08-10 09:35:28 +02:00
Ryan Roden-Corrent
245212efa1 Allow binding to an alias.
Fix #1813: Cannot :bind to alias
2016-08-09 21:37:12 -04:00
Florian Bruhin
fb3da578c5 Fix lint 2016-08-09 17:28:14 +02:00
Niklas Haas
62e58c0ab9
Add a --mode flag to :hints
This allows a specific keybinding, for whatever reason, to override the
default mode. Examples of when this could be useful:

* :hint --rapid --mode=word  (to type them more rapidly)
* :hint --mode=letter input  (if the default mode is number)

Also reword the description of 'group' to make the distinction between
'group' and 'mode' clearer.
2016-08-09 15:34:13 +02:00
Jan Verbeek
ebfe23c376 Merge https://github.com/The-Compiler/qutebrowser into clip
Also make it possible to use multiple variables in one argument.
2016-08-07 13:14:46 +02:00
Jan Verbeek
0177dafbd0 Add {clipboard} and {primary} to replace :paste
:paste is deprecated and replaced by equivalents using :open and the
new variables, and :open supports opening newline-separated lists of
URLs.
2016-08-06 22:03:50 +02:00
Marshall Lochbaum
54ba27cf77 Merge :yank-selected into :yank (fixes #820)
Changes :yank's flag arguments to a positional "what" argument
specifying the object to be yanked. Including "selection" as a
possibility allows for the replacement of :yank-selected with
:yank selection.
2016-08-05 22:01:17 -04:00
Florian Bruhin
8cc9f30eba Add a BDD test for :debug-log-capacity 2016-08-05 15:13:36 +02:00
Florian Bruhin
466a87af6a Merge branch 'end2endTest4@844' of https://github.com/nanjekyejoannah/qutebrowser into nanjekyejoannah-end2endTest4@844 2016-08-04 18:21:43 +02:00
nanjekyejoannah
04b007986f end2end testcase for #844 2016-08-04 13:47:14 +03:00
Daniel Schadt
8730dc6f8e tests: use :hint instead of :hint all download
:hint all download does not use the response headers to determine the
filename (the prompt is shown before a request is even done), so our
long filename was pretty useless.

:hint works because it does a request first and uses the right filename,
but we need to wait until the prompt is shown before we can do
:prompt-open-download, since the request is a bit slower and would fail
otherwise.
2016-08-04 11:16:43 +02:00
Daniel Schadt
e21bdab2c0 rename function to remove duplicate 2016-08-04 02:14:46 +02:00
Daniel Schadt
47b455957f tests: actually download file
Otherwise the :prompt-open-download will throw an error since the
request is not fast enough.
2016-08-04 01:47:02 +02:00
Daniel Schadt
8f4377937d use shlex.quote instead of "{}" 2016-08-04 01:41:50 +02:00
Daniel Schadt
d2107498a2 add a test for downloads with long filenames
See issue #1725.
2016-08-04 01:06:42 +02:00
Daniel Schadt
afa7494c5f add tests for download-open/prompt-open-download
This has tests for
* standard :download-open
* standard :prompt-open-download
* :prompt-open-download + cancel the download (issue #1728)
2016-08-03 17:59:32 +02:00
nanjekyejoannah
4e93e04468 end2end testcase for issue #844 2016-08-03 18:55:33 +03:00
Florian Bruhin
1fb4aa3532 Merge branch 'tab-open-implicit' of https://github.com/mlochbaum/qutebrowser into mlochbaum-tab-open-implicit 2016-08-03 09:16:49 +02:00
Marshall Lochbaum
97a249d8a6 Rewrite tests in open.feature 2016-08-02 15:27:26 -04:00
Marshall Lochbaum
66adbc9323 Add --implicit flag to :open 2016-08-02 13:49:25 -04:00
Marshall Lochbaum
8a127f2839 Remove cmdutils.arg_or_count 2016-08-02 11:31:03 -04:00
Florian Bruhin
424758a6d1 Use HTML content for localstorage test
JS logging is disabled by QtWebKit in private browsing mode
2016-08-02 15:18:25 +02:00
Florian Bruhin
43ff1b0d97 Tunnel private-browsing to QtWebKit correctly 2016-08-02 14:19:31 +02:00
Florian Bruhin
5ec39b7540 Fix crash when opening http://foo%40bar@baz 2016-08-01 17:18:14 +02:00
Florian Bruhin
4414f5fea9 Merge branch 'tab-move-index' of https://github.com/mlochbaum/qutebrowser into mlochbaum-tab-move-index 2016-08-01 16:17:09 +02:00
Florian Bruhin
86669600ff Consider input elements without type for hinting 2016-08-01 15:49:50 +02:00
Marshall Lochbaum
a7438f4f15 Extend tab-move's direction argument to take an index (fixes #1701) 2016-07-29 23:06:51 -04:00
Claire Cavanaugh
e409eafe2a Add test for opening a quickmark 2016-07-28 23:36:05 -07:00
Florian Bruhin
be609d5779 Improve logging for BaseKeyParser
See #1653
2016-07-27 10:27:53 +02:00
Marshall Lochbaum
826d0befe0 Update number files 2016-07-26 13:57:35 -04:00
Marshall Lochbaum
b2c2d5a4f4 Add --delete option to bookmark-load 2016-07-26 13:49:17 -04:00
Marshall Lochbaum
ae7fe2ee33 Update number files 2016-07-26 09:14:51 -04:00
Marshall Lochbaum
28842c90b6 Add --toggle flag to bookmark-add (fixes #1667) 2016-07-26 09:07:21 -04:00
Florian Bruhin
f4f6a3dac1 Merge branch 'open-download' of https://github.com/Kingdread/qutebrowser into Kingdread-open-download 2016-07-26 10:32:34 +02:00
Marshall Lochbaum
028e7239ed Add more number files 2016-07-25 15:37:02 -04:00
Marshall Lochbaum
3ffb726b98 Merge branch 'master' into mark-del-no-args 2016-07-23 12:12:19 -04:00
Marshall Lochbaum
f52c7f13d3 Update numbers in urlmarks test 2016-07-23 12:05:26 -04:00
Marshall Lochbaum
9eeda62adf Use quickmark-add rather than quickmark-save in test 2016-07-23 12:05:26 -04:00
David Vogt
1f320b8686 Various fixes after code review.
* Move documentation changes of bookmark / quickmarks to docstrings, as the
  asciidoc is autogenerated from those
* Fix some whitespaces in the BDD test cases
* Improved docstring in qute_bookmarks handler
2016-07-23 14:50:28 +02:00
David Vogt
85be6565fc Implement feature request #1033: Bookmark display
There is a new page now, qute:bookmarks that will display all bookmarks and
quickmarks. It's still missing a search / filter feature, but you can use
the built-in search / navigation just as easily for now.
2016-07-23 12:09:49 +02:00
Marshall Lochbaum
e9660ad676 Fix incorrect number in test 2016-07-21 22:45:36 -04:00
Marshall Lochbaum
ff682606ab Add tests for bookmark-del and quickmark-del with no arguments 2016-07-21 22:34:10 -04:00
Florian Bruhin
8a290bf9b2 Add a test for #1657/#1658 2016-07-18 14:31:01 +02:00
Florian Bruhin
ff89ae7839 Merge branch 'master' of https://github.com/blyxxyz/qutebrowser into blyxxyz-master 2016-07-13 21:21:37 +02:00
Jan Verbeek
13cbdbb8bd Record mode for :repeat-command before executing 2016-07-13 15:24:45 +02:00
Florian Bruhin
9c49900f9e QtWebEngine: Add JS logging 2016-07-13 10:55:04 +02:00
Daniel Schadt
8795f89c88 tests: fix tests for downloads bdd test
The test was failing because of two reasons:

First, the old code had filename questions in DownloadManager.get and
DownloadManager.fetch which were almost identical, thus the part in
DownloadManager.get was removed in an earlier commit. All filename
asking is now done by DownloadManager.fetch. The good part is code
deduplication, the bad part is slightly modified behavior: The new code
doesn't wait for a filename to start the download, instead it tries to
fill the buffer immediately. This made the test fail because qute:// has
no registered handler, so in order for the test to pass now, the "no
crash" part is not enough, we also need to expect the "No handler"
error.

Secondly, and a rather rare (race) condition was the handling of errors
in the DownloadItem. If an error occured after the registration of
self.on_reply_error as error handler and before the check
    reply.error() != QNetworkReply.NoError
at the end of the function, the error signal would be emitted twice:
Once by _die() (called by on_reply_error), and once by the init_reply
function directly (in the last if block). This lead to duplicated error
messages. This is also explained in a comment in the file (with small
"stack traces").
2016-07-12 16:52:01 +02:00
Daniel Schadt
7608805c9a tests: adjust tests for new download mode
Now the prompt is shown with PromptMode.download instead of
PromptMode.text, which we need to change in the tests.
2016-07-12 16:52:01 +02:00
Florian Bruhin
64b32ec87d Remove general -> wrap-search 2016-07-12 16:47:57 +02:00
Florian Bruhin
f0da508c21 Move searching out of WebView subclass
This also makes it work for QtWebEngine.
It also seems to fix #1050 though I'm not 100% sure why.
2016-07-12 16:29:50 +02:00
Florian Bruhin
9f6b3973d3 Adjust :print --pdf test title 2016-07-12 13:29:32 +02:00
Florian Bruhin
77035851a3 Sanity check the PDF file for :print --pdf test 2016-07-12 13:28:43 +02:00
Florian Bruhin
fce825f9df Remove redundant "Given a new tmpdir" step
With the (tmpdir) replacement we'll get a temporary directory no matter
what, so this is unnecessary.
2016-07-12 13:22:47 +02:00
Florian Bruhin
7a39021d41 Merge branch 'issues/1630' of https://github.com/jdkaplan/qutebrowser into jdkaplan-issues/1630 2016-07-12 10:07:59 +02:00
Jeremy Kaplan
6b2b096f3c Add test for :print --pdf 2016-07-11 20:08:24 -04:00
Florian Bruhin
4f9be56d7d Merge branch 'add-bookmark-by-url' of https://github.com/ismail-s/qutebrowser into ismail-s-add-bookmark-by-url 2016-07-11 20:54:09 +02:00
Florian Bruhin
9f9e41687f Add a (tmpdir) replacement for BDD tests
See #1639
2016-07-11 20:47:37 +02:00
Ismail S
394d9d1404 Add more tests for :bookmark-add 2016-07-08 15:54:39 +01:00
Florian Bruhin
00b287117a Fix tabs.feature tests 2016-07-07 18:32:52 +02:00
Florian Bruhin
70117265d6 Fix some a/an misspellings
Thanks to https://github.com/jwilk/anorack
2016-07-05 08:34:03 +02:00
Jan Verbeek
8039e7ab74 Move :repeat-command tests 2016-07-03 22:32:07 +02:00
Florian Bruhin
d1f6ae99b5 tests: Skip :spawn with invalid quoting on Windows
For some reason this often causes segfaults lately - let's skip it until
we can investigate what's wrong.

See #1614
2016-07-03 17:32:19 +02:00
Jan Verbeek
4172e39045 Move :repeat-command tests to scroll.feature 2016-07-02 01:42:47 +02:00
Jan Verbeek
4f32d94f5f Remove obsolete :edit-url with count test 2016-06-30 22:58:05 +02:00
Florian Bruhin
eb463ab2d3 Fix pytest-bdd tags 2016-06-30 14:47:55 +02:00
Florian Bruhin
8d9a699b5b test requirements: Update to pytest-bdd 2.17.0
This also allows us to have dynamic pyqt>=5.3.1 etc. tags.
2016-06-30 14:02:30 +02:00
Jan Verbeek
320b9cac3f Move repeat-command, make it work with multiple modes, improve tests 2016-06-30 02:22:02 +02:00
Jan Verbeek
cc1899ebca Add tests for repeat-command, make compatible with different count methods 2016-06-29 20:29:56 +02:00
Jan Verbeek
3c2c7ecaae Test for scroll with count and argument 2016-06-29 11:47:51 +02:00
Florian Bruhin
8eee3f6bce Add a test for zooming in cloned tab 2016-06-15 14:44:01 +02:00
Florian Bruhin
4fccc89d7d Split browser into browser/browser.webkit 2016-06-13 11:18:21 +02:00
Florian Bruhin
66938ed44b Full redirect support for history
When a redirect occurs, the item is saved in history with a -r suffix
now. When opening qutebrowser that's picked up and the item is hidden
from completion.
2016-06-10 14:40:42 +02:00
Florian Bruhin
e0acda403f Add an end-to-end test for :history-clear 2016-06-10 13:20:58 +02:00
Florian Bruhin
089131c79d Improve error message when clicking invalid link 2016-06-09 17:43:33 +02:00