Florian Bruhin
e47bf7a137
Remove duplicate test
2018-09-15 15:49:48 +02:00
Florian Bruhin
f14b37a3c4
Use os.pardir
2018-09-15 15:48:40 +02:00
Florian Bruhin
9edbcfb828
Share setup between webkit_tab and webengine_tab
2018-09-14 23:42:20 +02:00
Florian Bruhin
d74daf9294
Fix lint
2018-09-14 22:52:40 +02:00
Florian Bruhin
5ea8e766f5
Run all :follow-selected tests with/without JS
2018-09-14 22:49:18 +02:00
Florian Bruhin
b5af448196
Fix test_follow_selected_without_a_selection on QtWebKit
2018-09-14 22:46:31 +02:00
Florian Bruhin
4ae78d9bb2
Revert "Revert "Make sure we wait until follow_selected is done""
...
This reverts commit 200c11625f
.
2018-09-14 22:40:47 +02:00
Florian Bruhin
200c11625f
Revert "Make sure we wait until follow_selected is done"
...
This reverts commit bc45aa33e0
.
2018-09-14 21:58:42 +02:00
Florian Bruhin
8d066690e6
Fix :follow-selected tests
2018-09-14 21:57:37 +02:00
Florian Bruhin
bc45aa33e0
Make sure we wait until follow_selected is done
2018-09-14 20:18:33 +02:00
Florian Bruhin
afe16d3a7c
Avoid using qapp with autouse=True
2018-09-13 22:49:25 +02:00
Florian Bruhin
68af23b76e
Try getting selection multiple times
2018-09-13 22:41:30 +02:00
Florian Bruhin
62458c7a84
Register a qute://testdata/ scheme for unit tests
...
This is more lightweight than running a webserver (probably about the same as
file://), but allows us to use relative links in files.
2018-09-13 22:32:00 +02:00
Florian Bruhin
f9327731b8
Handle UTF-8 byte order marks in Greasemonkey scripts
...
See e.g. https://github.com/jerone/UserScripts/issues/135
2018-09-12 23:54:32 +02:00
Florian Bruhin
91b8002dd5
Clean up workaround for sqlite opening errors
...
Now that we know the real cause, we can be a bit stricter with our workaround.
2018-09-12 16:06:57 +02:00
Florian Bruhin
c2a072f9fe
Fix handling of sqlite out of memory errors
...
The "error_code == -1" check never passed, as error_code (confusingly) is a
string of a number.
2018-09-12 01:36:50 +02:00
Florian Bruhin
d80d9eb26c
Allow downloading from PDF.js
...
When we click the download button in PDF.js, it downloads a blob://qute:...
URL. We can detect that and force a download rather than opening it in PDF.js
again.
Note that what actually happens depends on the Qt version and backend:
QtWebKit (any Qt version):
Downloads always work properly (regardless of Qt version).
QtWebEngine, Qt 5.7.1:
Downloads work.
QtWebEngine, Qt 5.9 - 5.11:
Downloads won't work as we need to tell PDF.js to not use blob: URLs:
https://bugreports.qt.io/browse/QTBUG-70420 - in theory, PDF.js could fall back
to downloading the existing qute:// URL, but it has a whitelist of schemes
which does not include qute://... Since it's not in that whitelist, it just
ends up doing nothing at all.
QtWebEngine, Qt 5.12:
Downloads should hopefully work properly again, as we can register the qute://
scheme with Chromium, which allows us to use blob:// URLs.
2018-09-10 13:15:39 +02:00
Florian Bruhin
02641b86fc
Don't tell PDF.js to disable createObjectURL on Qt 5.7.1
...
Looks like things actually work fine there...
2018-09-10 13:01:01 +02:00
Florian Bruhin
bb96f8d297
Fix PDF.js test when no PDF.js is installed
2018-09-10 09:36:29 +02:00
Florian Bruhin
9b04c4b8e0
Add missing tests for qute://pdfjs
2018-09-09 19:22:39 +02:00
Florian Bruhin
b4077a8543
Fix lint
2018-09-09 18:39:22 +02:00
Florian Bruhin
b96898db37
Simplify and lock down PDF.js filename handling
2018-09-09 18:35:09 +02:00
Florian Bruhin
8cfa46f539
100% test coverage for browser.pdfjs
2018-09-09 18:35:09 +02:00
Florian Bruhin
3e25262437
Remove old backend patching
2018-09-09 18:35:09 +02:00
Florian Bruhin
490fe5e1a3
Add utils.guess_mimetype
2018-09-09 18:35:09 +02:00
Florian Bruhin
24148c649e
Fix lint and tests
2018-09-09 18:35:09 +02:00
Florian Bruhin
3ad7ae2a2c
Remove fix_urls which isn't needed anymore
...
With qute://pdfjs/web/viewer.html we can use relative URLs
2018-09-09 18:35:09 +02:00
Florian Bruhin
bbcb87e434
Get PDF.js to work
...
We need to use the /web/viewer.html path so relative references are correct.
2018-09-09 18:35:09 +02:00
Florian Bruhin
7206dde19c
Revert "Simplify getting pdfjs main page"
...
This reverts commit 9c731bde85627308fdde4730b0181a014096cb47.
We need to set some PDF.js options, so we can't just use the default viewer
with ?file=...
2018-09-09 18:35:09 +02:00
Florian Bruhin
8f19820a7a
Remove pdfjs.fix_urls
...
Now that we use qute://pdfjs to show the viewer, we don't need to rewrite any
URLs.
2018-09-09 18:35:09 +02:00
Florian Bruhin
24fb3b0d1b
Simplify getting pdfjs main page
2018-09-09 18:35:09 +02:00
Florian Bruhin
dc82ac3eb2
Move qute_pdfjs to qutescheme.py
2018-09-09 18:35:09 +02:00
Florian Bruhin
1647c28632
Allow lists for javascript.convert_js_arg
2018-09-08 16:20:38 +02:00
Florian Bruhin
b8ab378083
Show web_engine_tab container
...
This is needed for caret tests on Qt < 5.11
2018-09-08 16:04:29 +02:00
Florian Bruhin
20da259de6
Rewrite some :follow-selected tests as unit tests
2018-09-08 16:01:38 +02:00
Florian Bruhin
45eece372f
Don't access caretElement if it's gone
2018-09-08 15:51:42 +02:00
Florian Bruhin
8c0366f0a7
Configure JS logging for test tab objects
2018-09-08 15:34:28 +02:00
Florian Bruhin
bb5fee4adc
Also add a container for webengine_tab
...
Seems to be needed with Qt < 5.11 for things to work.
2018-09-08 14:52:57 +02:00
Florian Bruhin
9c67239847
Fix lint
2018-09-08 14:52:47 +02:00
Florian Bruhin
7cb32dca07
Add a container around webkit_tab
...
This makes the selection appear properly in caret tests - otherwise, --no-xvfb
would be needed.
2018-09-08 13:36:02 +02:00
Florian Bruhin
5978605873
Make caret unittests run with QtWebKit
2018-09-08 13:22:17 +02:00
Florian Bruhin
db6935b42e
Fix TestSearch caret tests
...
For some reason, they need the window to be shown on a screen to work...
2018-09-08 12:26:00 +02:00
Florian Bruhin
64e321d47c
Rewrite most caret tests as unit tests
2018-09-08 12:15:32 +02:00
Florian Bruhin
a58abf8f4c
Set __tracebackhide__ for CallbackChecker.check
2018-09-08 12:15:14 +02:00
Florian Bruhin
8ac3162425
Call modeman.init() in mode_manager fixture
2018-09-08 12:14:55 +02:00
cauimsouza
71781b3f43
Update fake object instantiation
2018-09-07 21:44:17 +02:00
Florian Bruhin
4ca8fc0cb7
Use a shared web_history fixture
2018-09-06 20:08:32 +02:00
Florian Bruhin
ab6c8dde9a
Decrease minimum QProgressDialog duration
...
We already have a threshold before we use a QProgressDialog at all, so let's
show it quite quickly and not after 4 seconds.
2018-09-06 17:26:28 +02:00
Florian Bruhin
935d93d10e
Add tests for HistoryProgress
2018-09-06 17:26:28 +02:00
Florian Bruhin
d4f16f88b6
Remove support for importing pre-v1.0.0 history
2018-09-06 17:26:28 +02:00
Florian Bruhin
ec774379bd
Add tests for history progress
2018-09-06 17:13:46 +02:00
Florian Bruhin
e4b7786bcc
Factor out GUI stuff to a HistoryProgress object
2018-09-06 17:04:26 +02:00
Florian Bruhin
c8be2d4f7e
Fix pylint issues with config cache
2018-09-06 16:43:10 +02:00
Florian Bruhin
108cc65bc6
Merge remote-tracking branch 'origin/pr/4185'
2018-09-06 16:15:16 +02:00
Jay Kamat
8e82adc306
Refactor configcache to cache
...
Also fix and improve configcache tests
2018-09-05 22:26:12 -07:00
Florian Bruhin
6293bc5178
Fix lint and test
2018-09-04 23:46:34 +02:00
Florian Bruhin
58793d95d7
Further clean up error handling
2018-09-04 23:05:59 +02:00
Florian Bruhin
92fcc523c5
WIP: Properly signal scheme errors
2018-09-04 23:03:10 +02:00
Florian Bruhin
2fcdc5a0c9
Merge branch 'blacklist-history'
2018-09-04 22:19:52 +02:00
Jay Kamat
d4cf5045ab
Fix tests for configcache
2018-09-02 18:03:36 -07:00
Jay Kamat
067d76616b
Implement config cache system
2018-09-02 14:23:00 -07:00
Florian Bruhin
5b0c10d430
Fix docstrings
2018-09-02 15:46:57 +02:00
Florian Bruhin
8a42256cff
Merge remote-tracking branch 'origin/pr/4178'
2018-09-02 15:45:48 +02:00
Florian Bruhin
b0185e3c8a
Use config_stub.val instead of config_stub.set_obj in tests
2018-09-02 14:42:47 +02:00
Florian Bruhin
dbdeb6a9c7
Rename history.exclude to completion.web_history.exclude
...
If the blacklist is only valid for the completion, the setting should also be
under completion.
This also un-renames history.gap_interval and renames
completion.web_history_max_items.
2018-09-02 14:42:47 +02:00
Florian Bruhin
4f56355fbe
Don't affect qute://history with history.exclude
2018-09-02 14:42:47 +02:00
Florian Bruhin
67b4b7d490
Handle :// as URL pattern
2018-09-02 11:58:34 +02:00
Florian Bruhin
37396d68f3
Define names for sqlite error codes
2018-09-01 22:25:22 +02:00
Florian Bruhin
f5c92ded41
Merge Sql{Environment,Bug}Error with Sqlite{Environment,Bug}Error
2018-09-01 22:25:22 +02:00
Florian Bruhin
50ae2bf2f9
Redesign SQL error handling
...
Instead of having an environmental attribute on exceptions, we now have two
different exception classes.
Fixes #3341
See #3073
2018-09-01 22:25:22 +02:00
Florian Bruhin
71a2dad570
Add a history.exclude setting
...
This allows to exclude URL patterns from being displayed in the completion or
in qute://history.
2018-09-01 22:25:22 +02:00
Florian Bruhin
7fb2224640
Add a UrlPattern config type
...
For some settings it makes sense to have a list of URL patterns in the config,
rather than having a per-domain boolean setting.
2018-09-01 18:25:58 +02:00
Florian Bruhin
3f2a468750
Also detect missing bound values for sql.Query.run_batch
2018-09-01 18:25:58 +02:00
Florian Bruhin
fa1fe63a93
Add some more sql.Query tests
2018-09-01 18:25:58 +02:00
Florian Bruhin
0e284944e7
Use composition instead of inheritance for sql.Query
...
This means we're more loosely coupled to Qt's QSqlQuery, and also can move some
logic for handling batch queries from the table to there.
2018-09-01 18:25:58 +02:00
Florian Bruhin
6b719fb218
Make sure queries don't have any missing bindings
2018-09-01 18:25:58 +02:00
Florian Bruhin
1d6282fd6c
Add some tests for sql.Query
2018-09-01 18:25:58 +02:00
Florian Bruhin
806d65be8e
Add test for no-sql-history flag
2018-09-01 18:25:58 +02:00
Florian Bruhin
c2f8b6531d
Reorganize test_history
2018-09-01 18:25:58 +02:00
Florian Bruhin
9fb794656b
Make it possible to force a history rebuild
...
This adds a new CompletionMetaInfo table which is a simple key/value store.
Thanks to Python/sqlite duck typing, we can use that to store values of any
type, even new ones in the future.
Currently, the only allowed key is force_rebuild, which forces a rebuild of the
CompletionHistory table. This will be needed for a future change.
2018-09-01 18:25:58 +02:00
Vasilij Schneidermann
3fa6d94893
Display value when calling :set without a value
...
This change brings Qutebrowser closer to Vim's behavior of `:set
foo?` *and* `:set foo` displaying the current value of `foo`.
2018-08-31 21:34:42 +02:00
Florian Bruhin
1815070dab
Make sure the host blocker doesn't block 0.0.0.0
2018-08-31 16:48:45 +02:00
Florian Bruhin
d337ed885a
Re-add :stop test in misc.feature
...
For some reason I don't comprehend right now, disabling it breaks
test_focusing_download_widget_via_tab. I'm having exams tomorrow and the day
after that, so meh, let's just re-enable that test for now as a stopgap
solution.
2018-08-28 22:56:50 +02:00
Florian Bruhin
8459afb76e
Recognize "Command"/"Cmd" in keybindings
2018-08-28 18:57:47 +02:00
Florian Bruhin
3fa01ae84d
Handle more flaky tests
2018-08-28 09:21:03 +02:00
Florian Bruhin
1a7efd92d7
Merge remote-tracking branch 'origin/pr/4140'
2018-08-27 10:06:04 +02:00
Florian Bruhin
a370a00194
Remove more useless-return suppressions
2018-08-19 10:53:01 +02:00
Jimmy
b192164f2e
Don't alphabetically sort tab completion.
...
`ListCategory` sorts its completion by default, we are already building
the categories in the right order so don't need that.
The test tests the case of where you have 11 tabs and if the model was
sorted the tabs with index 10 and 11 would be sorted before the one with
index 2.
The `random.sample` bit for the tab url and title is to also make sure
the model isn't being sorted on those columns, whithout haveng to write
and all ten lines.
2018-08-19 16:42:36 +12:00
Jay Kamat
b962c5c4d9
Merge pull request #4118 from DerJesko/master
...
Tests for ipv6 support in urlmatch
2018-08-13 14:33:53 -07:00
wishfort36
0e3e41a5e8
Handle nitpicks
2018-08-13 07:50:54 +02:00
wishfort36
b05738dd6c
Keep $QUTE_COUNT unset if a count is not given
2018-08-12 22:39:32 +02:00
wishfort36
a9725ddb4a
Add tests for $QUTE_COUNT
2018-08-12 22:31:12 +02:00
Florian Bruhin
58dffafb1e
Merge remote-tracking branch 'origin/pr/4126'
2018-08-12 20:24:56 +02:00
Florian Bruhin
bddc021295
Mark more :follow-selected tests as flaky
2018-08-12 20:24:31 +02:00
farlusiva
8e2307c546
Docstring things, change test
...
- Update the docstring for repeat
- Remove the blank line after the docstring
- Update the docstring with scripts/dev/src2asciidoc.py
- Simplify the test
2018-08-11 19:32:41 +02:00
wishfort36
adb371f305
Add test
2018-08-11 19:04:18 +02:00
Jesko
a676cca6c5
changing the texts of the errors
2018-08-10 20:49:20 +02:00
Jesko
0b51437346
fixing indentation
2018-08-10 19:05:15 +02:00
Florian Bruhin
57d3ed95f2
Mark another test as flaky
2018-08-10 08:40:24 +02:00
Jesko
972b3ae960
changing suggested flaws
2018-08-08 18:30:12 +02:00