Commit Graph

866 Commits

Author SHA1 Message Date
Panagiotis K
e4be834b39 Platform-agnostic test. 2017-11-15 09:51:05 +02:00
dwagle
b3b768f4a8 normalize url path and strip trailing slashes when doing gu/gU, normalize every qute://* urls and raise OSError when a url redirects to a directory in qute://help/ pages 2017-11-14 21:23:40 +05:45
Florian Bruhin
be08cee63c Make testsuite work with LC_ALL=C 2017-11-07 17:23:38 +01:00
Jan Verbeek
3e8c84c018 Make :undo re-open all tabs closed by :tab-only
This changes the undo stack from a list of UndoEntry objects to a list
of lists of UndoEntry objects, so groups of tabs can be added. Only
:tab-only does that, but it's exposed by TabbedBrowser.close_tab as a
keyword argument.
2017-11-06 19:32:10 +01:00
Florian Bruhin
378b280f9a Fix qute://gpl 2017-11-06 12:13:54 +01:00
Michael Hoang
966aa810df Set maxsplit to 0 on :buffer
Remove double quotes from tests
2017-11-06 06:41:43 +11:00
Florian Bruhin
1536c098cf
Merge pull request #3215 from deewakar/issue3161
Add trailing slash to qute://help pages
2017-11-03 11:49:31 +01:00
Gyorgy Orban
bb54a954fe use subprocess run
The usage of subprocess.run is recommended since python 3.5.
Popen, check_call, call and check_output calls were replaced with run.
2017-11-01 09:59:32 +01:00
dwagle
95539961a4 made some adjustments in tests/end2end/features/qutescheme.feature for the tests to pass. These are to account for changes made in f70740c, 4c9482b and aab7496 2017-10-31 12:08:43 +05:45
dwagle
4c9482be84 added a Scenario: Opening link with qute://help to tests/end2end/features/qutescheme.feature 2017-10-30 17:49:22 +05:45
Florian Bruhin
9d415587bc Mark flaky test as flaky 2017-10-30 07:05:54 +01:00
Florian Bruhin
daee729fc2 Merge remote-tracking branch 'origin/pr/3200' 2017-10-30 06:58:46 +01:00
Ryan Roden-Corrent
24f466b2c3 Add --related flag to edit-url. 2017-10-26 22:13:35 -04:00
Ryan Roden-Corrent
6519f500a9 Add --private flag to edit_url.
The command :edit-url --private (or :edit-url -p) will spawn a new
private window with the url input from the editor.

I had to add 'Given I have a fresh instance' to the feature file to
ensure tests were not interfering.

Resolves #3185.
2017-10-26 07:21:51 -04:00
Florian Bruhin
02c996a785 Fix wrong 'When' in bdd file 2017-10-26 09:47:02 +02:00
Florian Bruhin
eee5f8263f Merge remote-tracking branch 'origin/pr/3179' 2017-10-26 09:43:42 +02:00
Florian Bruhin
1c9dc581a4 Skip "Clearing history" test on Windows 2017-10-26 08:45:15 +02:00
Luca Benci
df3f0124fc Add test 2017-10-25 21:37:22 +02:00
Florian Bruhin
2051a5d95e Stabilize :history-clear test
Something seems special with the previous view:source tab which prevents us
from loading the new page.

See #3003
2017-10-25 14:08:31 +02:00
siddhugolu
4862b2faf9 modified pylint pragmas 2017-10-22 23:52:35 +05:30
Michael Hoang
e5f2d27ed9 Ensure that a window with the given win_id exists 2017-10-22 08:22:45 +11:00
Jay Kamat
5ba4e13cab
Fix typo in :home on pinned tab test 2017-10-21 01:32:56 -04:00
Florian Bruhin
fd8e5e30c6 Re-add scroll filtering and disable it for mark/scroll tests
See #2233
2017-10-20 07:38:51 +02:00
Jay Kamat
5d11a1fd75
Prevent :home from bypassing pinned tab warnings
Closes #3138
2017-10-17 11:37:37 -04:00
Florian Bruhin
44e5dc1c5a Add a comment to @xfail_norun 2017-10-17 10:45:58 +02:00
Florian Bruhin
458a45c172 Remove old deprecated commands 2017-10-17 10:44:22 +02:00
Florian Bruhin
cce4ff6d53 Merge remote-tracking branch 'origin/pr/3054' 2017-10-17 09:10:45 +02:00
Florian Bruhin
2eba2cc8f5 Skip another history test on AppVeyor 2017-10-15 00:26:26 +02:00
Florian Bruhin
db8fa5fdb6 Skip "History with invalid URL" test on Windows
For some reason, this hangs a lot on AppVeyor
2017-10-13 10:45:40 +02:00
Panagiotis K
630384e07f Fix tests. 2017-10-13 10:39:34 +03:00
Panagiotis K
0a753915ff Prompt for non-existing download directories.
Closes #2120
2017-10-12 15:00:35 +03:00
Florian Bruhin
e9a50f5f9f Another attempt at stabilizing qutescheme.feature 2017-10-11 08:46:53 +02:00
Michael Hoang
29f66dcd95 Merge :tab-detach with :tab-give 2017-10-11 17:18:12 +11:00
Michael Hoang
67437a0d5d Add :tab-give and :tab-take commands and tests 2017-10-11 16:27:35 +11:00
Florian Bruhin
211de6d664 Leave qute://settings after tests are done
Let's see whether this helps with the flakyness where the next test (for pyeval)
tries to set frame_flattening...
2017-10-10 21:45:57 +02:00
Florian Bruhin
1d1faf8d25 Merge remote-tracking branch 'origin/pr/2940' 2017-10-08 16:53:10 +02:00
Florian Bruhin
277daa334d Merge remote-tracking branch 'origin/pr/2891' 2017-10-08 15:23:01 +02:00
Michal Siedlaczek
00666feaf6 FAQ update for spellcheck & test fix 2017-10-07 15:54:22 -04:00
Bryan Gilbert
be3727a599 Improved zoom level management and enforcement 2017-10-06 20:30:06 -04:00
Florian Bruhin
acf3945efc Mark hints.auto_follow_timeout test as flaky
It fails on CI sometimes when the CI is too slow
2017-10-06 08:48:47 +02:00
Florian Bruhin
a7955505be Try stabilizing completion test 2017-10-05 20:03:35 +02:00
Michal Siedlaczek
fd9a5fa334 Style fixes 2017-10-05 09:56:13 -04:00
Florian Bruhin
d3d644d6a5 Try to stabilize :window-only test 2017-10-04 21:09:46 +02:00
Michał Siedlaczek
e20ad95666 Merge branch 'master' into spell 2017-10-04 09:47:42 -04:00
Michal Siedlaczek
6a486058c5 Review fixes 2017-10-04 09:22:35 -04:00
Florian Bruhin
f0c0fea281 Merge branch 'pr/3025' 2017-10-04 09:28:40 +02:00
Florian Bruhin
96ff0c61ef Try to stabilize :completion-item-del for :buffer test 2017-10-04 09:11:02 +02:00
Florian Bruhin
3b689166f8 Skip flaky :buffer test entirely 2017-10-04 09:10:48 +02:00
Michal Siedlaczek
932e7a9ab9 Review fixes 2017-10-03 20:07:06 -04:00
Florian Bruhin
feaccb3083 Rename :scroll-perc to :scroll-to-perc
Closes #2819
2017-10-03 22:59:32 +02:00
Florian Bruhin
22088d9f7b Remove --force for :bind and config.bind(...)
Turns out --force is just in the way for most people, and at least for default
bindings it's easy to reset them.

Also, it makes :config-source fail when config.py contains keybindings.

Closes #3049
2017-10-03 20:43:38 +02:00
Michael Hoang
c8c6199369 Add tests for :set-cmd-text --run-on-count 2017-10-04 03:57:26 +11:00
Florian Bruhin
9f10fa105c Merge adblock.feature into misc.feature 2017-10-03 13:42:04 +02:00
Michael Hoang
8ae0bd2797 Update :buffer tests for count support 2017-10-02 23:44:04 +11:00
Florian Bruhin
dba631102a Try to stabilize :window-only test 2017-09-26 08:41:07 +02:00
Florian Bruhin
c7c198b949 Stabilize hint test 2017-09-25 08:22:40 +02:00
Michal Siedlaczek
2150154350 Skip end2end spell tests if a dictionary is/isn't installed 2017-09-21 16:36:47 -04:00
Michal Siedlaczek
329cfa5756 End2end tests for spell checking 2017-09-21 09:56:33 -04:00
Florian Bruhin
192c063743 Mark another window.open test as flaky
See https://travis-ci.org/qutebrowser/qutebrowser/jobs/277846887
2017-09-21 08:58:56 +02:00
Florian Bruhin
ef1c83862b Use utils.is_* for platform checks everywhere 2017-09-20 11:10:24 +02:00
Florian Bruhin
55a4eb18f2 Get rid of httpbin
Fixes #2949
2017-09-19 10:35:54 +02:00
Florian Bruhin
3772dc5930 Drop legacy QtWebKit support
See #2742
2017-09-18 23:01:17 +02:00
Florian Bruhin
852baaa8c3 Drop support for Qt < 5.7.1
See #2742
2017-09-18 23:01:17 +02:00
Florian Bruhin
21a10fcb17 Break up long line 2017-09-17 16:33:37 +02:00
Florian Bruhin
f85f4630ff Turn off SQL history writing during end2end tests
This hopefully makes them a bit faster, and also should help with weird hangs we
had in tests.
2017-09-17 10:58:30 +02:00
Florian Bruhin
f6d878f33f Mark window.open test as flaky 2017-09-17 10:36:28 +02:00
Florian Bruhin
624c3a4c27 Merge branch 'new-config' 2017-09-16 16:12:21 +02:00
Florian Bruhin
0aa85f5967 Skip SSL download test if SSL is not supported
This makes the testsuite pass entirely with a PyPI PyQt and OpenSSL 1.1
2017-09-16 10:43:59 +02:00
Florian Bruhin
54214873f4 Resurrect :debug-cache-stats test 2017-09-15 14:16:42 +02:00
Florian Bruhin
0a3a1b756d Mark confirm_quit test to only run on Windows
See #2964
2017-09-14 16:14:01 +02:00
Florian Bruhin
6618c3a6e8 Don't use shlex for configtypes.ShellCommand
We accidentally did show the command as a list in to_str(). However, after
correcting that to use shlex.escape, we got ugly qutebrowser command lines
when tabbing to the default value, because of how shlex handles double-escaping:

>>> print(shlex.quote("gvim -f '{}'"))
'gvim -f '"'"'{}'"'"''

While in this case, outputting "gvim -f '{}'" would be much more appropriate, it
doesn't look like we can teach shlex.quote to do that.

Instead, we now only accept a list as input for ShellCommand, at the price that
the user needs to do
  :set editor.command '["gvim", "-f", "{}"]'
instead of
  :set editor.command 'gvim -f {}'

Fixes #2962.
2017-09-14 14:44:24 +02:00
Florian Bruhin
5cd14c941b Fix race condition is :jseval test 2017-09-14 09:33:58 +02:00
Florian Bruhin
cee51df4fb Refactor JS log handling and use a dict for javascript.log
Fixes #2828
2017-09-14 00:37:01 +02:00
Florian Bruhin
1fc9817cd4 Remove support for ambiguous keybindings 2017-09-14 00:37:01 +02:00
Florian Bruhin
08b5fc8e3b Stabilize qute://plainlog test
Looks like we actually get a loading event on Qt 5.9 just fine, and there was a
race condition here otherwise.
2017-09-13 21:32:36 +02:00
Florian Bruhin
8c4bc76de6 Stabilize hint test which failed on macOS 2017-09-13 17:26:56 +02:00
Florian Bruhin
56b673ca05 tests: Don't use <Ctrl+Backspace> to clear qute://settings fields
This won't work on macOS
2017-09-13 10:29:54 +02:00
Florian Bruhin
9bcd120dcc Only mark completion issue as flaky 2017-09-11 19:33:27 +02:00
Florian Bruhin
f6a0500bd3 Merge branch 'master' into new-config
This pulls the travis changes to drop the old Qt 5.2 environment.
2017-09-11 18:39:41 +02:00
Florian Bruhin
a65d70820a Add macOS xfail for session completion test
See #2956
2017-09-11 18:33:08 +02:00
Florian Bruhin
50d43b0678 Fix some macOS testsuite issues 2017-09-11 18:33:08 +02:00
Florian Bruhin
1491f20201 Remove geolocation tests
They just cause more trouble than they're worth.
2017-09-11 18:32:23 +02:00
Florian Bruhin
a283a1bb65 Merge branch 'master' into new-config 2017-09-09 10:52:02 +02:00
Ryan Roden-Corrent
a6d14ad7dc Fix two new-config/master merge resolutions.
Remove icon from jinja.render call (removed in master).
Add 'When the unwritable dir is unwritable' to download feature file.
2017-09-07 08:58:55 -04:00
Ryan Roden-Corrent
6a292f9d56 Merge quteurls.feature into qutescheme.feature. 2017-08-28 07:18:14 -04:00
Ryan Roden-Corrent
61a03a7808 Add quteurls.feature
Move Scenario: Open qute://version from misc.feature to quteurls.feature
See #2779.
2017-08-27 22:37:04 -04:00
Ryan Roden-Corrent
722137ab29 Fix 2 end2end tests for config/completion merge. 2017-08-20 21:15:25 -04:00
Ryan Roden-Corrent
0286e9ddf2 Fix completion tests after config merge. 2017-08-20 21:12:38 -04:00
Jay Kamat
7073c33dce
Test for saving a session with --only-active-window 2017-08-17 22:27:40 -04:00
Ryan Roden-Corrent
71b71dbc58 Merge remote-tracking branch 'upstream/master' into HEAD 2017-08-06 18:13:49 -04:00
Florian Bruhin
5ecda25fdb Fix renderer process test for older Qt versions 2017-07-25 17:35:42 +02:00
Florian Bruhin
792a01ba6d Try to stabilize renderer process test 2017-07-25 16:56:38 +02:00
Florian Bruhin
56b4989f44 Fix tests for QProcess changes 2017-07-23 22:10:50 +02:00
Florian Bruhin
fba25338be Merge pull request #2295 from rcorre/really_complete
Completion refactor V3
2017-07-21 15:05:43 +02:00
Florian Bruhin
cbf9da0b7e Set window.navigator.languages correctly 2017-07-13 21:24:17 +02:00
Florian Bruhin
84c2289aa5 Merge branch 'master' of https://github.com/iordanisg/qutebrowser 2017-07-09 12:56:52 +02:00
Florian Bruhin
915cd5f016 Fix long lines 2017-07-09 11:51:22 +02:00
Florian Bruhin
ad615941a2 Replace OS X with macOS 2017-07-08 11:12:43 +02:00
Iordanis Grigoriou
3bfafb5e50 Refactor suggested_fn_from_title, add unit tests 2017-07-06 17:41:54 +02:00
Iordanis Grigoriou
57e4d4978b Use page title only for whitelisted extensions 2017-07-06 11:59:02 +02:00
Ryan Roden-Corrent
dc4472470e Merge remote-tracking branch 'upstream/master' into really_complete 2017-07-05 08:45:57 -04:00
Florian Bruhin
45b1285402 Merge pull request #2765 from jgkamat/jay/tab-crashes
Refactor set_tab_pinned to take a tab widget.
2017-07-04 17:24:10 +02:00
Florian Bruhin
0cdd3ff82f Update some more references to old config options 2017-07-04 16:46:02 +02:00
Florian Bruhin
770c879410 Bring back searchengine BDD tests 2017-07-04 15:39:07 +02:00
Florian Bruhin
cff61fa0bc Fix pylint
This also reverts commit 8df0b063be.
2017-07-04 15:34:10 +02:00
Florian Bruhin
acf85eb96b Stabilize qute://settings test 2017-07-04 15:09:23 +02:00
Florian Bruhin
a36f5bafc1 Rename content.javascript.can_*_windows to _tabs 2017-07-04 15:08:04 +02:00
Florian Bruhin
5ada3606d8 Allow to not send the DNT header 2017-07-04 15:08:04 +02:00
Florian Bruhin
202b8445f6 Move content.accept_language under headers 2017-07-04 15:08:04 +02:00
Florian Bruhin
8712fc6fd3 Move new_instance_open_target out of url.
It doesn't really fit there really...
See 3cf028db23cbfe256e499d8881c3c2856f224d94
2017-07-04 15:08:04 +02:00
Florian Bruhin
07d0ea6a54 Unit tests and improvements for :bind/:unbind 2017-07-04 15:08:03 +02:00
Florian Bruhin
353c10aee7 Add a separate qutescheme BDD file 2017-07-04 15:08:03 +02:00
Florian Bruhin
3edebce833 Add tests for :set 2017-07-04 15:08:03 +02:00
Florian Bruhin
df1685905e Add content.headers and content.cache groups 2017-07-04 15:08:03 +02:00
Florian Bruhin
50602cbf26 Add an url. group to settings 2017-07-04 15:08:03 +02:00
Florian Bruhin
ac64ea287a Rename tabs.new_position/_explicit to .related/.unrelated 2017-07-04 15:08:03 +02:00
Florian Bruhin
c141c33b32 Clean up start_pages setting
The value is now of type FuzzyUrl, and the setting is renamed to start_pages.
2017-07-04 15:08:03 +02:00
Florian Bruhin
ad919fc972 Add a test for :bind with a wrong mode 2017-07-04 15:08:03 +02:00
Florian Bruhin
23d30d4fc0 Fix remaining :bind/:unbind issues 2017-07-04 15:08:03 +02:00
Florian Bruhin
ba1bc29a97 Initial :bind/:unbind implementation 2017-07-04 15:08:02 +02:00
Florian Bruhin
d9f1c4595e Make "the option ... should be set to ..." unambiguous
Otherwise, it'd collide with the cookie check.
2017-07-04 15:08:02 +02:00
Florian Bruhin
3c2d568a2e Add an ID for qute://settings inputs 2017-07-04 15:08:02 +02:00
Florian Bruhin
ceca99a99c Fix :help with new config 2017-07-04 15:08:02 +02:00
Florian Bruhin
0d062b28bf Comment out failing test 2017-07-04 15:08:02 +02:00
Florian Bruhin
bd9b45bb96 tests: Fix more issues with new config 2017-07-04 15:08:02 +02:00
Florian Bruhin
089e1ee91b Rewrite various references to old settings 2017-07-04 15:08:02 +02:00
Florian Bruhin
88fb5bbd82 tests: Fix various issues with new config 2017-07-04 15:08:02 +02:00
Florian Bruhin
ab1b80967f Disable tests which won't work yet
They are re-enabled in later commits.
2017-07-04 15:08:02 +02:00
Florian Bruhin
d0904a9f67 Adjust test settings 2017-07-04 15:08:02 +02:00
Florian Bruhin
0c1f480fc1 Remove TODO for qute://settings on webengine 2017-07-04 15:08:01 +02:00
Florian Bruhin
3b53ec1cb6 Skip tests with permission changes if they didn't work
This e.g. wouldn't work inside of a Docker container otherwise.
2017-07-03 10:07:40 +02:00
Jay Kamat
2fbadc46d2 Remove error when count is invalid to :tab-pin 2017-06-30 09:57:39 -07:00
Jay Kamat
596dee69d6
Clean up pin_tab
Also add a test case for :pin-tab with an invalid count
2017-06-29 20:04:02 -07:00
Florian Bruhin
d132b6ed71 Fix :scroll-page with --bottom-navigate on QtWebEngine
There were two issues here:

- The comparison was backwards, causing scroller.at_bottom() to always return
  true.
- When zoomed in, jsret['px']['y'] can be a float, which means we can be
  slightly off when checking the difference - math.ceil() fixes that.
2017-06-29 22:39:48 +02:00
Iordanis Grigoriou
0a09758be1 Add file path to download 2017-06-27 12:21:25 +02:00
Florian Bruhin
5ec94f96fd Allow a trailing % for :zoom 2017-06-26 21:51:35 +02:00
Iordanis Grigoriou
a24d7f6686 Use page title for filename with :download 2017-06-26 12:25:03 +02:00
Florian Bruhin
06d4a24bd1 Merge branch 'master' of https://github.com/iordanisg/qutebrowser 2017-06-20 12:45:21 +02:00
Iordanis Grigoriou
f0ff02fcb2 Avoid throwing exception when no last focused tab exists 2017-06-19 15:48:17 +02:00
Florian Bruhin
4296a61b9a tests: Clean up check_history 2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
c7a18a8b8d Fix tests for recent sql changes 2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
1fe1813431 Fix pylint errors. 2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
cf23f42b99 Use splitlines in test_history_bdd again.
Just using read() returns a single string, and iterating over that
iterates over each character.
2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
3a4ef09f58 More sql code review fixes 2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
6fc61d12fc Assorted small fixes for sql code review. 2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
42243d3d97 Add more performance logging to completion. 2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
b1b521e0c2 Fix two history tests added recently.
These were added on master and needed to be adjusted slightly for the
new history check (which doesn't rely on reading a history file
anymore).
2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
20000088de Add debug-dump-history and fix sql history tests.
Trying to read from the sql database from another process was flaky.
This adds a debug-dump-history command which is used by the history BDD
tests to validate the history contents.

It outputs history in the old pre-SQL text format, so it might be
useful for those who want to manipulate their history as text.
2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
eb61269068 Fix qute://history javascript for SQL.
Returning "next" was no longer possible as the SQL query does not fetch
more items than necessary. This is solved by using a start time, a
limit, and an offset. The offset is needed to prevent fetching duplicate
items if multiple entries have the same timestamp.

Two of the history tests that relied on qute://history were changed to
rely on qute://history/data instead to make them less failure-prone.
2017-06-19 07:44:11 -04:00
Ryan Roden-Corrent
a8ed9f1c2f Fix qute://version sql init bug.
Calling sql.init() in version.version() would replace the existing sql
connection and cause a crash when accessed by opening qute://version.

Now version relies on sql already being initted, and app.py inits sql early if
the --version arg is given.
2017-06-19 07:44:11 -04:00