Commit Graph

4174 Commits

Author SHA1 Message Date
Florian Bruhin
d8bfe23c0d Fix lint 2018-03-04 20:21:58 +01:00
Florian Bruhin
f85e69ec77 Refactor other keyinput tests 2018-03-04 20:21:58 +01:00
Florian Bruhin
2be7db29ed 100% coverage for keyinput.keyutils 2018-03-04 20:21:58 +01:00
Florian Bruhin
8da878c77c Make KeySequence.matchs() work correctly 2018-03-04 20:21:58 +01:00
Florian Bruhin
866c758660 Add more KeySequence tests 2018-03-04 20:21:58 +01:00
Florian Bruhin
fb7c75a090 Improve keyutils tests 2018-03-04 20:21:58 +01:00
Florian Bruhin
3c9e8ff9ab Test and fix keyutils._parse_keystring 2018-03-04 20:21:58 +01:00
Florian Bruhin
7f8508a367 Change the way Space keybindings are handled
Using it as " " in a keystring won't work anymore, but instead <Space> and
<Shift-Space> does.
2018-03-04 20:21:58 +01:00
Florian Bruhin
da60d11b24 Refactor keyutils tests 2018-03-04 20:21:58 +01:00
Florian Bruhin
b3834835ed Bring back keyutils.is_modifier() and modifier handling
Turns out when we press yY, we get three events:

Qt.Key_Y, Qt.NoModifier
Qt.Key_Shift, Qt.ShiftModifier
Qt.Key_Y, Qt.ShiftModifier

If we don't ignore the second one, our keychain will be interrupted by the Shift
keypress.
2018-03-04 20:21:58 +01:00
Florian Bruhin
e306e2dadb Improve and fix test_is_printable 2018-03-04 20:21:58 +01:00
Fritz Reichwald
d9a88e139c Test for modifiers and corner case 0xFF 2018-03-04 20:21:58 +01:00
Florian Bruhin
3a11a24be0 Fix modifier handling
We don't want to show <Shift-Shift>, but <Ctrl-Shift> should still work
correctly.
2018-03-04 20:21:58 +01:00
Florian Bruhin
7cb781cc92 Simplify handling of modifier-only keys
Now that we don't rely on str(KeyInfo) being empty anywhere, there's no reason
to return an empty string for only-modifier keypresses anymore.

While those keys can't be bound (QKeySequence('Shift') == Qt.Key_unknown)
there's also no reason to explicitly ignore them.
2018-03-04 20:21:57 +01:00
Florian Bruhin
693178c8ee Refactor KeyInfo.__str__
This removes the special handling for macOS, but this is hopefully not needed
anymore as we don't compare strings.
2018-03-04 20:21:57 +01:00
Florian Bruhin
af6e5b1838 Fix lint 2018-03-04 20:21:57 +01:00
Florian Bruhin
fac8d72d8c Capitalize Escape in TestFullscreenNotification 2018-03-04 20:21:57 +01:00
Florian Bruhin
a57fc5c746 Refactor keyutils tests involving all keys 2018-03-04 20:21:57 +01:00
Florian Bruhin
4223e2f85d Check all keys against QTest::keyToAscii 2018-03-04 20:21:57 +01:00
Fritz Reichwald
d28c323074 Add printable and ismodifier test 2018-03-04 20:21:57 +01:00
Florian Bruhin
934d586286 Fix handling of Shift-Tab aka. Backtab 2018-03-04 20:21:57 +01:00
Florian Bruhin
63e05e12ba Fix lint and tests 2018-03-04 20:21:57 +01:00
Florian Bruhin
2ca15d7667 Add tests for lower-/uppercase text 2018-03-04 20:20:31 +01:00
Florian Bruhin
8c87040cb6 Improve IDs for qt_key fixture 2018-03-04 20:20:31 +01:00
Florian Bruhin
0b6d2c2b0a Make all key names work 2018-03-04 20:20:30 +01:00
Florian Bruhin
601e56d2fa Make test_keyutils work 2018-03-04 20:20:30 +01:00
Florian Bruhin
8f479407a0 key_data: Update key names to reflect reality
Generated by:

import key_data
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QKeySequence

for key in key_data.KEYS:
    attr = key.attribute
    member = getattr(Qt, 'Key_' + attr, None)
    if member is None:
        continue
    name = QKeySequence(member).toString()
    if name != attr:
        try:
            print("    Key('{}', '{}')".format(attr, name))
        except UnicodeEncodeError:
            print("    Key('{}', '{}')  # FIXME".format(attr, name.encode('unicode-escape').decode('ascii')))
    else:
        print()
2018-03-04 20:20:30 +01:00
Florian Bruhin
f714be0ff7 Initial tests on all Qt keys 2018-03-04 20:20:30 +01:00
Florian Bruhin
19512e988b Expose less from keyutils publicly 2018-03-04 20:20:30 +01:00
Florian Bruhin
fdc2458657 Fix test_split_count after _handle_key merge 2018-03-04 20:20:30 +01:00
Florian Bruhin
c3485821c7 Adjust copyright 2018-03-04 20:20:30 +01:00
Jimmy
7dab8335e2 Greasemonkey: handle downloads that complete fast
When `@require`ing local files (with the `file://` scheme) the
greasemonkey manager was not catching the DownloadItem.finished signal
because it was being emitted before it had managed to connect.

I didn't see this happening while testing with files that should have
been in cache but I wouldn't be surprised.

I had to change the download mock to be able to give it the appearance
of asynchronicity. Now when using it one must set download.successful
appropriately before firing download.finished. I also added a list of
downloads to the stub so a test could enumerate them in case the
unit-under-test didn't have a reference to them.
2018-03-03 15:02:43 +13:00
Jimmy
919fe45813 Greasemonkey: Add test for @require support.
There's is a lot of asserts in that one test but it tests everything.
2018-03-03 15:02:42 +13:00
Jimmy
fa1ac8d93c Move download_stub to helpers/fixtures
I am adding support for downloading dependant assets in
browser/greasemonkey and want to mock the download manager for testing.
2018-03-03 15:02:42 +13:00
Jimmy
cba93954cd Allow download_stub test fixture to handle file targets. 2018-03-03 13:14:49 +13:00
Florian Bruhin
be7a21eb56 Make sure the backend is set in test_webenginesettings.py 2018-03-02 07:00:09 +01:00
Florian Bruhin
b0c25e1bed Add missing )
I shouldn't be allowed to push at 6:30 AM...
2018-03-02 06:58:37 +01:00
Florian Bruhin
9721881261 Adjust @issue3572 check for Qt 5.10.1 2018-03-02 06:37:01 +01:00
Florian Bruhin
067be7aaa2 Simplify mock checks 2018-03-02 06:33:56 +01:00
Florian Bruhin
fb7fa0cb49 Merge remote-tracking branch 'origin/pr/3652' 2018-03-02 06:31:00 +01:00
Ryan Roden-Corrent
d5e30fd728 Don't crash first completion update with min_chars.
When min_chars is nonzero, if the first command that opens the
completion has < min_chars on the word under the cursor, it triggers a
check for a condition where last_cursor_pos is None.

By setting last_cursor_pos=-1 we ensure that the completer always
updates the first time it is opened, and that there is never a check
against None.

This adds a test for the min_chars feature.

Resolves #3635.
2018-03-01 22:07:53 -05:00
Ryan Roden-Corrent
2965f954ba Resolve empty completion.timestamp_format crash.
Resolves #3628.
2018-03-01 07:54:20 -05:00
Florian Bruhin
7fd0b52360 Add missing newline
[ci skip]
2018-02-28 08:11:23 +01:00
Florian Bruhin
f3aaa1084a Migrate spell tests to unittests 2018-02-28 08:08:23 +01:00
Florian Bruhin
5eb340d481 Add missing tests for completions 2018-02-27 15:55:00 +01:00
Florian Bruhin
5a5873d4ee Rename KeyConfig._prepare to ._validate 2018-02-27 14:16:41 +01:00
Florian Bruhin
49d297f7bf Fix tests for parsing KeySequences 2018-02-27 14:10:55 +01:00
Florian Bruhin
244590f49d Handle unknown keys with :bind/:unbind 2018-02-27 13:09:48 +01:00
Florian Bruhin
88b5007457 Consolidate invalid :bind/:unbind tests 2018-02-27 13:02:32 +01:00
Florian Bruhin
8090d3e289 Handle invalid keys in config.py 2018-02-27 13:02:32 +01:00
Florian Bruhin
898f5c50c4 Add a test for utils.chunk 2018-02-27 13:02:32 +01:00
Florian Bruhin
ec3ad8a969 Get rid of _warn_on_keychains and _supports_chains 2018-02-27 13:02:32 +01:00
Florian Bruhin
ba012c6ba8 Get rid of BaseKeyparser.Type 2018-02-27 13:01:41 +01:00
Florian Bruhin
b906d92053 Remove now uneeded pylint ignore 2018-02-27 10:06:11 +01:00
Florian Bruhin
362f923f06 Fix lint 2018-02-27 09:34:55 +01:00
Florian Bruhin
1ba61bbcbe Fix test_modeparsers 2018-02-27 09:22:01 +01:00
Florian Bruhin
911b2daebf Fix test_keyutils 2018-02-27 09:07:20 +01:00
Florian Bruhin
5a03d31f6f More test_basekeyparser fixes 2018-02-27 08:53:28 +01:00
Florian Bruhin
9e27f2b3e7 Initial attempts at fixing test_basekeyparser 2018-02-27 08:48:16 +01:00
Florian Bruhin
1e8f72dfe6 Adjust test_configtypes 2018-02-27 08:10:54 +01:00
Florian Bruhin
f40f4082ba Validate configtypes.Key correctly 2018-02-27 07:56:34 +01:00
Florian Bruhin
612387633d Adjust test_configfiles 2018-02-27 07:53:29 +01:00
Florian Bruhin
214e750c69 Adjust test_configcommands.py 2018-02-27 07:51:07 +01:00
Florian Bruhin
49f8bc3d63 Use KeySequences correctly in test_config.py 2018-02-27 07:37:55 +01:00
Florian Bruhin
fa29a0b686 Expect capitalized bindings in test_models 2018-02-27 06:58:39 +01:00
Florian Bruhin
8416e97c6c Fix type which is stubbed in test_models 2018-02-27 06:50:57 +01:00
Florian Bruhin
53fb5af99c Paste version information privately 2018-02-26 23:09:55 +01:00
Florian Bruhin
d9ae3fd5aa Fix more hinting issues 2018-02-26 20:49:02 +01:00
Florian Bruhin
8bce2ba8e8 Fix expected message 2018-02-26 20:03:21 +01:00
Florian Bruhin
f1b20f6dc4 Fix forward_unbound_keys test 2018-02-26 20:02:43 +01:00
Florian Bruhin
1444634abb Fix :fake-key test 2018-02-26 14:26:12 +01:00
Florian Bruhin
6f9c62b24a Improve marker descriptions 2018-02-26 07:56:51 +01:00
Florian Bruhin
353753c03c Merge remote-tracking branch 'origin/pr/3620' 2018-02-26 07:26:24 +01:00
Florian Bruhin
de0aa32c11 Merge remote-tracking branch 'origin/pr/3626' 2018-02-26 07:20:34 +01:00
Jay Kamat
76bf35cbdd
Add qtbug60673 markers to relevant tests 2018-02-25 19:00:15 -05:00
Jay Kamat
7a8fa5f46e
Implement deduplication of searches on webkit 2018-02-25 18:40:16 -05:00
Florian Bruhin
321d5c5d20 Merge branch 'master' into keys 2018-02-25 21:25:12 +01:00
Florian Bruhin
54713f57e5 Merge remote-tracking branch 'origin/pr/3624' 2018-02-25 21:09:56 +01:00
Florian Bruhin
52b5492c6a Merge branch 'per-url' 2018-02-25 19:44:51 +01:00
Florian Bruhin
ba88fc43e0 Stabilize error page test 2018-02-25 19:40:38 +01:00
Florian Bruhin
abf4d10d5b Add a test for :set -p with a pattern 2018-02-25 19:33:27 +01:00
Florian Bruhin
4c147b77c1 Add a test for the error page workaround 2018-02-25 16:35:02 +01:00
Jay Kamat
4602afe770
Add a webengine duplicate search test 2018-02-23 18:13:20 -05:00
Jay Kamat
820ffed07f
Remove test blacklists for 5.10 2018-02-23 18:06:57 -05:00
Florian Bruhin
98b2b67b8b Add tests for per-URL JavaScript settings 2018-02-23 15:08:07 +01:00
Florian Bruhin
3956f81e73 Refactor websettings
This refactors the whole web(kit|engine|) settings mess a bit so there's a
Web(Kit|Engine)Settings object for (non-static) settings set on a
QWeb(Engine)Settings object in Qt. Everything else is set on module-level a bit
less declaratively.

The whole inheritance mess is gone, and we can now also construct a
Web(Kit|Engine)Settings object for a given tab.

Fixes #2701
2018-02-23 09:51:28 +01:00
Florian Bruhin
49ead32f13 Update urlmatch tests for Chromium changes
See:
0ab1294c92%5E%21/
https://bugs.chromium.org/p/chromium/issues/detail?id=812543
2018-02-23 06:31:49 +01:00
Jay Kamat
cb8d62866c
Blacklist qt versions 5.8.0 through 5.9.4 for caret tests 2018-02-22 18:34:15 -05:00
Jay Kamat
c16c625feb
Add basic tests for searching and caret mode 2018-02-22 10:28:35 -05:00
Florian Bruhin
ca26d97589 Merge remote-tracking branch 'origin/pr/3599' 2018-02-21 11:02:51 +01:00
Florian Bruhin
13bd4dd05d Clean up version.pastebin_url in pbclient fixture 2018-02-21 10:49:42 +01:00
Florian Bruhin
2fbc7b4e1d Merge remote-tracking branch 'origin/pr/3594' 2018-02-21 10:15:27 +01:00
Florian Bruhin
ecfd4a77a0 Merge remote-tracking branch 'origin/pr/3562' 2018-02-21 10:11:40 +01:00
Florian Bruhin
ea6a5de374 Update FIXMEs 2018-02-20 23:28:11 +01:00
Florian Bruhin
0d4e20c395 Whitelist config options which support URL patterns 2018-02-20 23:26:22 +01:00
Florian Bruhin
6c5876a494 Fix tests broken by urlmatch trailing slash change 2018-02-20 23:08:09 +01:00
Florian Bruhin
18848315f5 urlmatch: Make it possible to leave off trailing slash 2018-02-20 22:45:16 +01:00
Florian Bruhin
17b235b523 Add error handling for parsing patterns from YAML 2018-02-20 22:29:21 +01:00
Florian Bruhin
46aeb25e7e Fix lint 2018-02-20 20:55:42 +01:00
Florian Bruhin
439d51875f Add config.pattern() 2018-02-20 20:54:26 +01:00
Florian Bruhin
3ade923edb Add basic pattern support for config.py 2018-02-20 18:43:42 +01:00
Florian Bruhin
a3dfec20c1 Rename --url to --pattern 2018-02-20 17:56:47 +01:00
Florian Bruhin
9685445559 Fix issues with Python 3.5 2018-02-20 17:56:47 +01:00
Florian Bruhin
e482c76874 YamlConfig: Refuse to read a newer config version 2018-02-20 17:08:28 +01:00
Florian Bruhin
03114ccf51 Migrate YAML config files in old format 2018-02-20 16:14:06 +01:00
Florian Bruhin
ae73215724 Fix lint 2018-02-20 12:30:41 +01:00
Florian Bruhin
b9bb515b3b Add missing configfiles tests 2018-02-20 12:30:41 +01:00
Florian Bruhin
9c42d87e7d Add missing configutils test 2018-02-20 12:30:34 +01:00
Florian Bruhin
05017c83d6 Add more config tests 2018-02-20 12:30:34 +01:00
Florian Bruhin
36f3e54e1d Finish configutils tests 2018-02-20 12:30:34 +01:00
Florian Bruhin
63c77a4d76 urlmatch: Fix equality with non-UrlPattern types 2018-02-20 12:30:34 +01:00
Florian Bruhin
685e3ffcfe Fix and test UrlPattern/configutils.Values stringification 2018-02-20 12:30:34 +01:00
Florian Bruhin
145a21449b configutils: Add first tests 2018-02-20 12:30:34 +01:00
Florian Bruhin
5978b7b35f config: Improve tests for non-existent options 2018-02-19 22:09:54 +01:00
Florian Bruhin
463320b599 Make test_config.py work 2018-02-19 22:09:54 +01:00
Florian Bruhin
fecebd6ced Start getting test_config.py to run 2018-02-19 22:09:49 +01:00
Florian Bruhin
7d80825853 Fix test_configfiles.py 2018-02-19 22:09:46 +01:00
Florian Bruhin
5d63dfb24c Start fixing test_configfiles.py 2018-02-19 22:09:46 +01:00
Florian Bruhin
0f907b1a77 Fix getting YAML values in test_configcommands.py 2018-02-19 22:09:46 +01:00
Florian Bruhin
75181e16fa Fix test_models.py
The Config object got initialized via the config_stub fixture early, so we need
to force it to re-init its values after patching configdata.DATA.
2018-02-19 22:09:46 +01:00
Florian Bruhin
19f7b92abb Fix test_configinit.py 2018-02-19 22:09:43 +01:00
Florian Bruhin
5eeb223338 Use a different directory for file prompt tests
This way they aren't influenced by the config_tmpdir fixture.
2018-02-19 22:08:42 +01:00
Florian Bruhin
d3e8d46593 Use a real YamlConfig for tests 2018-02-19 22:08:42 +01:00
Florian Bruhin
7c1fb1d215 Refactor acceptNavigationRequest handling to use signals 2018-02-19 22:07:53 +01:00
Florian Bruhin
7033af816a urlmatch: Add equality testcases 2018-02-19 22:07:53 +01:00
Florian Bruhin
eda15c53ad urlmatch: Improve port error output 2018-02-19 22:07:53 +01:00
Florian Bruhin
d6ea9b1e47 urlmatch: Add test for invalid IPv6 URL 2018-02-19 22:07:53 +01:00
bttner
e169e2165d Refactor TabbedBrowser from inheritance to composition 2018-02-19 14:29:05 +01:00
Florian Bruhin
5f6c8435a4 urlmatch: Add initial benchmark/hypothesis test 2018-02-15 18:47:07 +01:00
Florian Bruhin
5627a63265 urlmatch: Fix lint 2018-02-15 18:47:07 +01:00
Florian Bruhin
e161458f91 urlmatch: Add test cases for oddballs 2018-02-15 18:47:07 +01:00
Florian Bruhin
33b7c4bdd0 urlmatch: Fix and test port handling 2018-02-15 18:47:07 +01:00
Florian Bruhin
45cc1aaeb0 urlmatch: Add tests for file:// 2018-02-15 18:47:07 +01:00
Florian Bruhin
0a10a4f751 urlmatch: Add more tests for special schemes 2018-02-15 18:47:07 +01:00
Florian Bruhin
28aadc4f96 urlmatch: Add tests for <all_urls> 2018-02-15 18:47:03 +01:00
Florian Bruhin
867f2a8e2b urlmatch: Use None for match-all path 2018-02-15 18:47:03 +01:00
Florian Bruhin
a8a9cdd81e urlmatch: Add more tests from Chromium 2018-02-15 18:47:03 +01:00
Florian Bruhin
978b90b5b1 urlmatch: Implement correct IP matching 2018-02-15 18:47:03 +01:00
Florian Bruhin
2d43a1d2e7 urlmatch: Use None as default for host 2018-02-15 18:47:03 +01:00
Florian Bruhin
5419d1caa1 urlmatch: Add glob escaping tests 2018-02-15 18:47:03 +01:00
Florian Bruhin
faeca30dfa urlmatch: Add more tests 2018-02-15 18:47:03 +01:00
Florian Bruhin
b7c3c10b87 urlmatch: Use class in test 2018-02-15 18:47:03 +01:00
Florian Bruhin
2b274f8e0b urlmatch: Implement initial matching 2018-02-15 18:47:02 +01:00
Florian Bruhin
3d6cbcf396 urlmatch: Improve matching error for TLD wildcards 2018-02-15 18:47:02 +01:00
Florian Bruhin
fa329c698e urlmatch: Finish port parsing 2018-02-15 18:47:02 +01:00
Florian Bruhin
a2a95f5fee urlmatch: Improve port handling 2018-02-15 18:47:02 +01:00
Florian Bruhin
d266190518 urlmatch: Improve port tests 2018-02-15 18:47:02 +01:00
Florian Bruhin
c728d78bea urlmatch: Host/port parsing 2018-02-15 18:47:02 +01:00
Florian Bruhin
32abb67d1f urlmatch: Use dedicated ParseError exception 2018-02-15 18:47:02 +01:00
Florian Bruhin
3c17bb97c0 urlmatch: Start with port parsing 2018-02-15 18:47:02 +01:00
Florian Bruhin
1b8dfb6c36 urlmatch: Disallow NUL byte
See https://bugs.chromium.org/p/chromium/issues/detail?id=390624
With Qt, we might run into the same issue as well at some point, and it sure
can't hurt to disallow it.
2018-02-15 18:46:58 +01:00
Florian Bruhin
76efba296f urlmatch: Store path/port 2018-02-15 18:46:55 +01:00
Florian Bruhin
b93c0dad5a urlmatch: Start UrlPattern 2018-02-15 18:46:51 +01:00
George Edward Bulmer
1893a33708 Monkeypatch qapp.launch_time too 2018-02-13 20:51:18 +00:00
George Edward Bulmer
29ff4259d6 Add test for _uptime() 2018-02-13 20:09:19 +00:00
Jonathan Berglind
681bb058fa Use HTTPStatus enum instead of http.client in webserver fixture 2018-02-13 20:57:05 +01:00
Jonathan Berglind
3d5bba9cff Use HTTPStatus in flask test server 2018-02-13 20:57:05 +01:00
Jonathan Berglind
81acba4700 Use HTTPStatus for existing tests, add more ones
Add tests for endpoints being refactored
2018-02-13 20:56:59 +01:00
George Edward Bulmer
ca8d935cf4 Update tests as per code review 2018-02-13 18:38:27 +00:00
George Edward Bulmer
cfa779ecb7 Add trivial test for _uptime 2018-02-13 16:02:20 +00:00
George Edward Bulmer
b959e885fc Pylint fix 2018-02-13 15:25:40 +00:00
George Edward Bulmer
e349af7524 Fix testing with error pastebin_version() 2018-02-13 14:49:15 +00:00
George Edward Bulmer
942dca3444 Add test for pastebin_version() 2018-02-13 13:31:27 +00:00
Florian Bruhin
9bf5ff1583 Merge remote-tracking branch 'origin/pr/3584' 2018-02-13 09:43:44 +01:00
Ryan Roden-Corrent
22d7490126 Remove unused import and TODO from urlmarks test. 2018-02-12 19:25:24 -05:00
Florian Bruhin
47451aa495 Open qute://tabs with :buffer 2018-02-12 23:00:26 +01:00
George Edward Bulmer
561e5d17b9 Remove extraneous space 2018-02-12 14:22:25 +00:00
George Edward Bulmer
5b718446b6 Add test for sourcing config with invalid source 2018-02-12 14:19:18 +00:00
George Edward Bulmer
b59a7cdcc0 Report syntax errors as unhandled exceptions
Update tests accordingly
2018-02-12 14:07:05 +00:00
George Edward Bulmer
ce8b457bac Only display exception type if no traceback
Update test to match
2018-02-12 13:43:22 +00:00
Ryan Roden-Corrent
d0ca54a0cf Add unit tests for urlmarks. 2018-02-11 16:40:20 -05:00
Florian Bruhin
3170e35b31 Simplify QtWebKit scheme handlers 2018-02-11 17:14:41 +01:00
Florian Bruhin
c112290664 Make QtNetwork download manager great^H^H^H^Hlobal again
We originally made it per-window in b502280c06 for
issue #228, but that was back when we still needed window IDs for stuff like
message.info.

Nowadays, there's no reason for it to be per-window anymore. The rest of the
download code can deal with one global download manager (because QtWebEngine has
one), and apart from QNAM code which wasn't used here anyways (as tab_id=None)
there was nothing using the window ID anymore.

Also see #3456 which was the original motivation for this change.
2018-02-11 16:15:29 +01:00
George Edward Bulmer
2f4910f1f2 Add test for escaping {{url}} 2018-02-11 14:17:28 +00:00
Florian Bruhin
f28ab5285c Merge remote-tracking branch 'origin/pr/3582' 2018-02-11 09:37:49 +01:00
Florian Bruhin
219b75524b Fix TestCreatingDir on non-Linux 2018-02-10 23:08:47 +01:00
Jay Kamat
11e04c79f4
Add add/remove tests to benchmarks 2018-02-10 15:10:33 -05:00
Florian Bruhin
52d7ff79fc Skip another scroll test with Qt 5.10 and Travis 2018-02-10 20:15:17 +01:00
Florian Bruhin
5f62c016cc Fix test_standarddir.TestCreatingDir
What we actually want to test here is that the given type directory is created
and has the correct permission, we don't care much about the basedir itself.

Also, the download dir is not created automatically.

This test failed on Python 3.7 because intermediate directories now aren't
created with the given mode anymore:

https://bugs.python.org/issue19930
https://docs.python.org/3.7/whatsnew/3.7.html#changes-in-the-python-api
2018-02-10 20:07:27 +01:00
Florian Bruhin
cd1bd7d52a Skip ASCII locale tests with Python 3.7 2018-02-10 19:58:30 +01:00
Florian Bruhin
5b22209eef Run test_init_benchmark on CI again
See #2777
2018-02-10 19:50:20 +01:00
Florian Bruhin
aa5da1b312 Don't set up YAML constructors/resolvers for default loaders
After reading https://pyyaml.org/wiki/PyYAMLDocumentation again, turns out
Loader.add_constructor and .add_implicit_resolver are actually *class* methods.

In other words, we've been adding dozens of constructors/resolvers to the
default YAML loader object, causing it to slow down massively in other tests
which call configdata.init().

Instead, create our own loader class and only add them once there.

I'm still not sure why this caused the duration to increase with every YAML load
though - that might still be some kind of bug in PyYAML.

Fixes #2777
2018-02-10 19:35:03 +01:00
Florian Bruhin
6d750aff8b Merge remote-tracking branch 'origin/pr/3430' 2018-02-10 16:27:41 +01:00
6f9be72c5b
Update tests for statusbar changes 2018-02-10 13:15:12 +01:00
Florian Bruhin
c7133a662c Merge remote-tracking branch 'origin/pr/3577' 2018-02-10 11:40:49 +01:00
Marc Jauvin
504e29c004 fix configfiles tests
- fix test_renamed_key()
- fix test_deleted_key()
- combine both test_merge_persist tests using @pytest.mark.parametrize
- fix _handle_migrations(): mark data dirty for renamed and deleted
2018-02-09 21:25:11 -05:00
Florian Bruhin
0b5ba828db Add missing test 2018-02-09 22:23:07 +01:00
Marc Jauvin
57fe674dc4 shorten lines 2018-02-09 15:22:56 -05:00
Marc Jauvin
9b7db8ee8a Need to mark config as dirty in _handle_migrations()
Add tests for tabs.persist_mode_on_change migration
2018-02-09 14:41:33 -05:00
Florian Bruhin
589605fe92 Fix lint 2018-02-09 10:39:16 +01:00
Florian Bruhin
1a81f7231b Make sure multiple wrong keys are reported 2018-02-08 22:02:22 +01:00
Florian Bruhin
1a88b64c67 Add a test for keyconfig.get_command(..., default=True) 2018-02-08 21:53:41 +01:00
Florian Bruhin
298dcb4c90 Validate config separately from migrations
It makes for cleaner code, and it makes sure the target of renamed options
actually exists.
2018-02-08 21:49:41 +01:00
Florian Bruhin
e0dd7970d8 Skip fragment test
Looks like this now XPASSes with Qt 5.10 on Windows
2018-02-08 20:23:34 +01:00
Florian Bruhin
ea80ded8d5 Try to stabilize editor end2end test
Let's also wait until we're sure the mtime changed here.
2018-02-08 20:21:25 +01:00
Florian Bruhin
15fecc962d Fix lint 2018-02-08 11:41:58 +01:00
Florian Bruhin
53e7d13c2d Skip failing scrolling tests on Qt 5.10 on Travis
See #3572
2018-02-08 10:42:55 +01:00
Florian Bruhin
c520130389 Add tests for a failing watch/unwatch 2018-02-08 10:29:23 +01:00
Florian Bruhin
3306247ae5 Merge branch 'editor-watch' 2018-02-07 22:31:49 +01:00
Florian Bruhin
01ccbc679d Fix lint 2018-02-07 22:26:32 +01:00