Commit Graph

16895 Commits

Author SHA1 Message Date
Jesko
02f485cbc8 making import of QtWebEngine in corresponding tests conditional 2018-09-09 20:51:19 +12:00
Jesko
f22fb30ef3 fixing non controversial changes 2018-09-09 20:51:19 +12:00
Jimmy
7a73c0f264 Add tests for greasemonkey worldid in webenginetab.
Adds a new file for tests relating to WebEngineTab, it looks a little
sparse right now but I'm sure there will be more soon.

Tests that scripts with invalid world IDs are rejected appropriately and
the ones with valid world IDs aren't rejected.

The `FakeWidget` thing is so `sip.isdeleted` didn't complain about being
passed the wrong type.
2018-09-09 20:51:19 +12:00
Jimmy
5252541fe3 greasemonkey: better handle scripts without metadata
Previously calling `script.code()` would fail if the script didn't have
a `name`. This wasn't being hit in practice because the only place that
constructs GreasemonkeyScripts was checking for that condition and add
the filename there as a fallback.

This change make the `name` attribute more explicitly mandatory by
failing with a `ValueError` if it is not provided and make it still
possible to use the filename fallback in that case by adding a
`filename` keyward argument to `__init__()`.

Additionally where `script_meta` is used in `script.code()` a fallback
to and emptry string was added so it doesn't fail for raw javascript
files without greasemonkey metadata.
2018-09-09 20:51:19 +12:00
Jimmy
32268ae66a Split _inject_greasemonkey_scripts to separate requirements.
Because flake8 was complaining about cyclomatic complexity.
2018-09-09 20:45:21 +12:00
Jesko
abea603119 moving MAX_WORLD_ID to qtutils, changing test names, fixing linter errors, changing error type to WebTabError 2018-09-09 20:45:21 +12:00
Jesko
8ef3d90b1a removing unwanted space 2018-09-09 20:45:21 +12:00
Jesko
ee9b1f4950 adding tests and improving error messages 2018-09-09 20:45:21 +12:00
Jesko
0c38cbcbdd putting in current borders 2018-09-09 20:45:21 +12:00
Jesko
8aa682e769 catching greasemonkey errors aswell 2018-09-09 20:45:21 +12:00
Jesko
583c7e4198 catch the exception 2018-09-09 20:45:21 +12:00
Jay Kamat
e295e8054c
Add support for triggering change handlers when using :open-editor 2018-09-08 20:39:38 -07:00
Ben Gartner
f5a07ba3cf Use outsuffix for relative links in asciidoc files 2018-09-08 12:34:13 -05:00
Florian Bruhin
88cbc9bb12 caret: Also enable end-of-doc-workaround on Windows 2018-09-08 16:32:28 +02:00
Florian Bruhin
3738a8c8a9 Apply caret mode workarounds correctly 2018-09-08 16:20:58 +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
03dea493de Make sure we only update the caret selection once
Otherwise, stuff goes haywire when trying to use the caret mode very fast (like
in a unit test), because new stuff runs before we've managed to update the selection.
2018-09-08 13:18:09 +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
4a8d8688cb Improve configuration description 2018-09-07 21:46:03 +02:00
cauimsouza
71781b3f43 Update fake object instantiation 2018-09-07 21:44:17 +02:00
Florian Bruhin
93eb05598e Fix request logging 2018-09-07 16:12:40 +02:00
Florian Bruhin
0b27779c9d Allow null initiator for qute:// URLs on Qt 5.11
Before Qt 5.11.2, for unique origins, we always got QUrl() and thus passed it
through.

With Qt 5.11.2, only missing origins (browser-initiated requests) get an empty
initiator, while unique origins get QUrl("null"):
https://codereview.qt-project.org/#/c/234849/
https://bugreports.qt.io/browse/QTBUG-69372

In theory, those should be locked down (as an unique origin is e.g. a sandboxed
iframe) and never have access to any other content.

However, thanks to a Qt bug, XHR on qute:// pages has QUrl("null") as origin as
long as the URL scheme is not registered. We can only do the registering once
Qt 5.12 is out.

Since unique origins were effectively already allowed on Qt 5.11.0/.1, we pass
them through here as well until Qt 5.12.

See #4198
2018-09-07 12:25:07 +02:00
Florian Bruhin
15c547b3f5 Move QuteSchemeHandler._check_initiator to its own method 2018-09-07 12:24:54 +02:00
Florian Bruhin
5ca911bcdb Fix lint 2018-09-06 20:09:57 +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
9a6c8fe1b9 Update changelog 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
2109b2276e Initial progress dialog for history rebuild 2018-09-06 16:52:14 +02:00
Florian Bruhin
c8be2d4f7e Fix pylint issues with config cache 2018-09-06 16:43:10 +02:00
Florian Bruhin
9a9aefeabf Update changelog 2018-09-06 16:18:26 +02:00
Florian Bruhin
cd8fd8ab3c Use config cache for completion.web_history.exclude
On my machine, this speeds up regenerating from ~6min to ~25s.
2018-09-06 16:17:23 +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
67f1d8abdd Revert "Add exam comments to contributing docs"
This reverts commit ae32b79d54.
2018-09-05 20:39:41 +02:00
Florian Bruhin
e2b14caa5c Update changelog 2018-09-05 14:48:31 +02:00