Ryan Roden-Corrent
490250f5be
Initialize SQL for two failing tests.
...
test_selectors and test_get_all_objects were running fine on my machine, but
for some reason is failing with "Driver not loaded" on Travis. Let's try
initializing SQL and see what happens.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
be07107b1c
Fix end2end completion tests for SQL backend.
...
Change the logging to report the completion function name and have the end2end
tests check for this.
Remove the tests for realtime completion, as it was decided this is not an
important feature and the code is much simpler without it.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
ffd044b52b
Fix pylint and flake8 for SQL work.
...
Vanity commit. This also touches up a few comments.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
ea9217a61f
Fix qutescheme for new SQL backend.
...
The qute://history and qute://bookmarks handlers were added during my work, and
had to be adapted to the SQL-based history backend.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
0e650ad719
Return namedtuples from SqlTable.
...
Instead of returning a regular tuple and trying to remember which index maps to
which field, return named tuples that allow accessing the fields by name.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
d89898ef7d
Implement delete_cur_item for sql completion.
...
This re-enables bookmark/quickmark deletion for url completions via the new SQL
interface.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
fe80878788
Implement custom where clause in SQL.
...
Allow categories to specify a WHERE clause that applies in addition to the
pattern filter. This allows the url completion model to filter out redirect
entries.
This also fixed the usage of ESCAPE so it applies to all the LIKE statements.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
9f27a9a5d7
Implement column selectors for sql completion.
...
A SQL completion category can now provide a customized column expression for
the select statement. This enables the url model to format timestamps, as well
as rearrange the name and url in the quickmark section.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
3f6f03e325
Respect web-history-max-items with SQL.
...
Use a LIMIT with the sql competion model to limit history entries as the old
completion implementation did.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
df995c02a3
Get rid of varargs in sql.run_query.
...
Things are clearer when just passing a list.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
b70d5ba901
Use QSqlQueryModel instead of QSqlTableModel.
...
This allows setting the query as a QSqlQuery instead of a string, which allows:
- Escaping quotes
- Using LIMIT (needed for history-max-items)
- Using ORDER BY (needed for sorting history)
- SELECTing columns (needed for quickmark completion)
- Creating a custom select (needed for history timestamp formatting)
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
52d7d1df0c
Use SQL completer for quickmarks/bookmarks.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
839d49a8ac
Fix up pylint/flake8 for completion revamp.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
b381148e06
Unittest CompletionView.completion_item_del.
...
There were no unit tests for this and the various ways it can fail, and I'm
about to screw with it a bit.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
a774647c26
Get test_models mostly working again.
...
- Adjust _check_completions to work for CompletionModel and SqlCompletionModel
- Move sql initialization into a reusable fixture
- Remove the bookmark/quickmark/history stubs, as they're now handled by sql
- Disable quickmark/bookmark model tests until their completion is ported to
sql.
- Disable urlmodel tests for features that have to be implemented in SQL:
- LIMIT (for history-max-items)
- Configurable column order (for quickmarks)
- Configurable formatting (for timestamp-format
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
3005374ada
Simplify sorting logic in sortfilter.
...
For URL completion, time-based sorting is handled by the SQL model.
All the other models use simple alphabetical sorting. This allowed cleaning up
some logic in the sortfilter, removing DUMB_SORT, and removing the
completion.Role.sort.
This also removes the userdata completion field as it was only used in url
completion and is no longer necessary with the SQL model.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
acea0d3c67
Use SQL completion for the open command.
...
Now that history, bookmark, and quickmark storage are SQL-backed, use
a sql completion model to serve url completions.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
6e1ea89ca1
Implement SQL completion model.
...
This model wraps one or more SQL tables and exposes data in a tiered
manner that can be consumed by the tree view used for completion.
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
9477a2eeb2
Use SQL for history storage.
...
The browser-wide in-memory web history is now stored in an in-memory sql
database instead of a python dict. Long-term storage is not affected, it
is still persisted in a text file of the same format.
This will set the stage for SQL-based history completion.
See #1765 .
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
f43f78c40f
Implement SQL interface.
...
When qutebrowser starts, it creates an in-memory sqlite database. One
can instantiate a SqlTable to create a new table in the database. The
object provides an interface to query and modify the table.
This intended to serve as the base class for the quickmark, bookmark,
and history manager objects in objreg. Instead of reading their data
into an in-memory dict, they will read into an in-memory sql table.
Eventually the completion models for history, bookmarks, and quickmarks
can be replaced with SqlQuery models for faster creation and filtering.
See #1765 .
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
3b30b42211
Remove completion.instances, usertypes.Completion.
...
The new completion API no longer needs either of these. Instead of
referencing an enum member, cmdutils.argument.completion now points to
a function that returnsthe desired completion model.
This vastly simplifies the addition of new completion types. Previously
it was necessary to define the new model as well as editing usertypes
and completion.models.instances. Now it is only necessary to define a
single function under completion.models.
This is the next step of Completion Model/View Revamping (#74 ).
2017-06-19 07:42:12 -04:00
Ryan Roden-Corrent
08bb3f4f19
Implement completion models as functions.
...
First step of Completion Model/View revamping (#74 ). Rewrite the
completion models as functions that each return an instance of a
CompletionModel class.
Caching is removed from all models except the UrlModel. Models other
than the UrlModel can be generated very quickly so caching just adds
needless complexity and can lead to incorrect results if one forgets to
wire up a signal.
2017-06-19 07:42:12 -04:00
Florian Bruhin
4ae8e247d0
Show 'legacy QtWebKit' in version output
2017-06-19 10:24:33 +02:00
Florian Bruhin
df6c4c6e73
Fix earlyinit.qt_version issues
2017-06-19 09:42:49 +02:00
Florian Bruhin
9b5227b987
Improve test_version output
2017-06-19 09:06:18 +02:00
Florian Bruhin
fdba676933
Move version.qt_version() to earlyinit
...
Importing version in earlyinit is a bad idea, as it already pulls in a lot of
stuff we don't want.
2017-06-19 08:57:29 +02:00
Florian Bruhin
9cc688ea2b
Fix initial tab sizing with vertical tabbar
2017-06-16 23:00:16 +02:00
Iordanis Grigoriou
e14477375b
Fix typo in test
2017-06-16 12:41:30 +02:00
Iordanis Grigoriou
f28d523225
Select the last focused tab when running ':tab-focus <current tab number>'
2017-06-16 12:28:56 +02:00
Florian Bruhin
54154e2434
Mark :stop test as flaky
...
Looks like the requests sometimes aren't updated, but I have no idea why.
2017-06-12 18:15:05 +02:00
Florian Bruhin
38d54cb112
Stabilize history tests
...
Get current URL right away in :view-source, and wait until source is shown in
the test.
2017-06-12 18:13:17 +02:00
Florian Bruhin
57fbfbd606
Set an initial window size for background tabs
...
When we open a background tab, it gets a hardcoded size (800x600 or so) because
it doesn't get resized by the layout yet.
By resizing it to the size it'll actually have later, we make sure scrolling to
an anchor in an background tab works, and JS also gets the correct size for
background tabs.
Fixes #1190
Fixes #2495
See #1417
2017-06-11 17:48:01 +02:00
Florian Bruhin
ad260366ef
Remove ":messages without messages" test
...
We can never know for sure there aren't any messages - for example, on Travis we get a message about XDG_RUNTIME_DIR being unset on Qt 5.9.
2017-06-09 11:04:21 +02:00
Florian Bruhin
250da212cd
Adjust tests for new QtWebKit-NG
2017-06-09 10:28:41 +02:00
Florian Bruhin
ddf4521305
Fix :messages tests
2017-06-08 14:16:30 +02:00
Florian Bruhin
8df0b063be
Get rid of utils.unused because it's unused
2017-06-06 17:04:21 +02:00
Florian Bruhin
a5af98b063
Add a few tests for qutebrowser.is_ignored_chromium_message
2017-06-06 16:26:01 +02:00
Florian Bruhin
cb03fb7d80
Make process/thread ID optional for Chromium messages
...
Looks like at least on Travis they're not always there.
2017-06-06 16:18:53 +02:00
Florian Bruhin
6d175fbb4b
Get rid of configtypes.WebKitBytes
2017-06-06 16:17:44 +02:00
Florian Bruhin
998f93dfd3
tests: Properly parse Chromium logging messages
...
Closes #2519
2017-06-06 10:01:45 +02:00
Florian Bruhin
73249d8abe
Adjust ignored Chromium messages for Qt 5.9 debug builds
2017-06-05 21:57:53 +02:00
Florian Bruhin
27ea9a6954
Fix test_debug_trace
2017-06-05 20:17:39 +02:00
Florian Bruhin
eac284d880
Skip test_opengl_vendor without QtOpenGL
...
The test fails on Ubuntu Xenial because QtOpenGL is not installed.
This isn't a problem with real-life usage though, as we only call it with
QtWebEngine, and that ensures that QtOpenGL is available.
2017-05-31 10:29:46 +02:00
Florian Bruhin
912cea6e7d
Improve version.opengl_vendor()
...
On Windows with OpenGL ES we can't use versionFunctions, so we just return None
early.
Also, this fixes some lint and adds a smoke test.
2017-05-30 19:23:27 +02:00
Florian Bruhin
eb9a0c01ba
Set backend-warning-shown in test_invocations
2017-05-30 16:49:39 +02:00
Florian Bruhin
4cb82af11e
Add QUTE_FAKE_OS_RELEASE envvar
2017-05-30 07:37:10 +02:00
Florian Bruhin
7186dcb98f
Send crash reports to private pastebin
...
Fixes #481
2017-05-29 09:20:10 +02:00
Florian Bruhin
b32223acc7
Only inherit private mode when window is set
...
Otherwise, everything calling _open in a private window (like :quickmark-load)
will open a new window.
2017-05-29 06:37:28 +02:00
Florian Bruhin
8bd6974042
Open a window with an empty session
...
With general -> save-session on and only private windows open, we can easily get
a session file with "windows: []" in it. If we loaded such a file, we got no
windows at all when qutebrowser started.
Fixes #2664
2017-05-28 11:15:51 +02:00
Florian Bruhin
0f3a17ae88
Fix raw string prefix
2017-05-23 10:09:06 +02:00
Florian Bruhin
ea2fbc427a
tests: Use match= for pytest.raises
2017-05-23 09:36:00 +02:00
Florian Bruhin
af7923de4d
tests: Use pytest.param
2017-05-23 08:08:46 +02:00
Florian Bruhin
c32c01ffc0
Merge commit '419793c0b9ff4f293babea7623dcaf4787bbaa35'
2017-05-22 07:55:44 +02:00
Jay Kamat
00f001729b
Fix undo with pinned tabs
...
Add tests for undo with a pinned tab
Add tests for clone with a pinned tab
2017-05-21 21:03:33 -07:00
Florian Bruhin
aa8e6c8d17
Add parsed distribution to version info
...
Fixes #2369
2017-05-20 23:26:00 +02:00
Florian Bruhin
fe145b66c1
Add a version.distribution()
...
See #2369
2017-05-20 23:26:00 +02:00
Florian Bruhin
964b06bf7e
Fix shadowed import
2017-05-19 09:26:48 +02:00
Florian Bruhin
f66c1a0e44
Merge commit '3d9729839d6d9b5ee5d38afdf6ddf410dfca2027' into abbradar/pac-fix
2017-05-19 08:36:39 +02:00
Florian Bruhin
c4fb2bc609
Fix URL/renderer crash tests with Qt 5.9
...
The behavior in Qt changed there (in a good way), so we need to adjust the tests
accordingly.
Fixes #2514
2017-05-19 08:10:17 +02:00
Nikolay Amiantov
3d9729839d
Fix crash on PAC evaluation error
2017-05-18 16:54:49 +03:00
Florian Bruhin
e3f5e8ca9a
Disable local storage test for now
...
It also seems to run unstable on Windows (AppVeyor), so we probably need to wait
for qutewm to run it.
2017-05-17 20:38:30 +02:00
Florian Bruhin
00a7a0cee6
Reorganize pylint config
...
This removes various stuff we don't need anymoe, and also re-enables and fixes
the import order check.
2017-05-17 20:20:12 +02:00
Florian Bruhin
12520bf4ba
Install PyQt from PyPI for pylint
...
This means we can be sure to have QtWebEngine available and won't have QtWebKit.
2017-05-17 19:08:59 +02:00
Florian Bruhin
dd15b4b953
Fix local storage test
...
Looks like it needs a window manager to run properly...
2017-05-17 13:38:21 +02:00
Florian Bruhin
e0ff2d98fe
Test for private browsing differently
...
In a48ea597d0
we fixed settings in private
QtWebEngine windows.
However, this means we also enable local storage for private windows, which was
disabled in QtWebEngine by default:
4ef5831a39 (diff-44ac7d27348388501944f6a8e2e67d8dR207)
It should be safe to enable it, as we get the same behavior as in Chromium, i.e.
a working local storage which entirely lives in RAM.
This also makes those tests work on QtWebKit-NG, presumably because private
browsing for cookies is implemented there.
It also adds a test to at least check whether local storage is isolated from
non-private tabs. I tried writing a test which ensures nothing lands on the hard
disk, but due to QTBUG-52121 this might not happen at all:
https://bugreports.qt.io/browse/QTBUG-52121
2017-05-17 09:42:28 +02:00
Florian Bruhin
a48ea597d0
Set websettings on each profile's setting object
...
Turns out QWebEngineSettings.globalSettings() only sets things on the default
profile. We now get everything from the default profile settings, but set it on
both the default and the private profile.
Fixes #2638
(cherry picked from commit b11a4388cd10b6ff2fd917fca689ebdc50d581ae)
2017-05-17 06:31:51 +02:00
Jay Kamat
5e3c68530a
Regenerate documentation
2017-05-16 21:03:33 -07:00
Jay Kamat
1142a19de9
Add (pinned) keyword to 'following tabs open' tests
2017-05-16 20:16:43 -07:00
Florian Bruhin
407537dbe6
tests: Wait until window is closed after :close
...
If we don't wait here, we might end up running the subsequent commands (like
:command-history-prev) on the old window while it's still closing, causing an
exception at least on AppVeyor:
Traceback (most recent call last):
File "C:\projects\qutebrowser\qutebrowser\app.py", line 110, in <lambda>
target_arg=target_arg))
File "C:\projects\qutebrowser\qutebrowser\app.py", line 265, in process_pos_args
win_id = mainwindow.get_window(via_ipc, force_tab=True)
File "C:\projects\qutebrowser\qutebrowser\mainwindow\mainwindow.py", line 89, in get_window
window.setWindowState(window.windowState() & ~Qt.WindowMinimized)
RuntimeError: wrapped C/C++ object of type MainWindow has been deleted
2017-05-16 15:46:20 +02:00
Florian Bruhin
9408babef5
Also remove test for removed assertion
2017-05-16 12:56:25 +02:00
Florian Bruhin
d0dd1644af
Set user agent correctly on QtWebEngine
2017-05-16 06:46:45 +02:00
Florian Bruhin
086139110d
Merge branch 'new-private-browsing'
2017-05-16 06:32:15 +02:00
Florian Bruhin
c4307c9f03
Fix lint
2017-05-15 11:07:43 +02:00
Florian Bruhin
3f8b9fb1a5
tests: Improve matching of exceptions to show verbose output
...
In some situations we can get a TypeError without a stack
2017-05-15 11:07:43 +02:00
Florian Bruhin
3c3f695af4
Fix things pointed out in reviews
2017-05-15 11:07:43 +02:00
Florian Bruhin
8993667479
Remove unused imports
2017-05-15 11:02:29 +02:00
Florian Bruhin
c3ac3ccdee
Add tests for new private browsing
2017-05-15 11:02:29 +02:00
Florian Bruhin
9805b43c85
Handle private browsing in sessions
2017-05-15 11:02:29 +02:00
Florian Bruhin
157a0af908
Hopefully fix failing history test on old Qt
2017-05-15 10:29:13 +02:00
Florian Bruhin
5b1d35bef9
Don't add data: URLs to history
2017-05-15 09:04:16 +02:00
Jay Kamat
17169812be
Misc cleanup and fixes
2017-05-14 00:21:51 -07:00
Jay Kamat
a5eb3e27f8
Fix some bugs in session saving test case
2017-05-12 17:48:38 -07:00
Jay Kamat
2ae1bfc033
Keep pinned tabs in place rather than moving them.
2017-05-12 13:09:22 -07:00
Jay Kamat
3e3f4b4164
Add :tab-only tests for --force
2017-05-12 11:06:17 -07:00
Jay Kamat
66dfb1b1c9
Fix a bug with titles not being refreshed when pinning tabs
2017-05-12 09:53:25 -07:00
Florian Bruhin
65952ca290
Fix webkitelem tests
2017-05-12 13:57:33 +02:00
Florian Bruhin
9e2aa65c02
Remove webelem.Group.prevnext
...
Apart from checking for buttons with an href attribute (which made no sense at
all and should never return any element) this was identical to
webelem.Group.links.
2017-05-12 09:41:12 +02:00
Florian Bruhin
203a5dff74
Get rid of webelem.FILTERS
...
There's actually no good reason to filter javascript links as we might want to
click them (or copy their URL) just like any other link - this fixes #2404 .
With that being gone, we don't need FILTERS at all anymore, as we can check for
existence of the href attribute in the CSS selector instead.
2017-05-12 09:41:12 +02:00
Jay Kamat
4c28487fd0
Warn user if pinned tab is closed via tab-only
2017-05-11 14:30:45 -07:00
Jay Kamat
cb654225fd
Add a test case for loading/saving pinned tabs in sessions
2017-05-11 14:05:25 -07:00
Jay Kamat
3317834b36
Fix a bug where pinned tabs were occasionally miscounted
...
Example case: :tab-only. This should cover other cases, but currently those
cases (such as :tab-only) do NOT have a warning message when popping up.
2017-05-11 13:28:26 -07:00
Jay Kamat
725bafea54
Merge branch 'master' into jay/pintab
2017-05-10 23:51:33 -07:00
Florian Bruhin
c6e31391de
Fix most tests/lint
2017-05-10 09:19:24 +02:00
Florian Bruhin
1c50377c0a
Initial work on new private browsing
2017-05-10 07:00:21 +02:00
Florian Bruhin
822623f2ed
Finally update copyrights...
2017-05-09 21:37:03 +02:00
Jay Kamat
a3d41c0467
Refactor search method of AbstractBrowserTab into a field
2017-05-09 00:24:13 -07:00
Jay Kamat
02f79c2990
Add tests for manual selection
2017-05-09 00:11:25 -07:00
Jay Kamat
5ba81e3611
Add tests for follow_selected
2017-05-08 22:32:53 -07:00
Florian Bruhin
8052249b1b
Make check_coverage.py work with coverage 4.4
...
With coverage 4.4, the source name (qutebrowser/) is not added to the filename
anymore. To adjust for that, we remove qutebrowser/ from all paths, and also
make sure to remove it from what coverage returns (in case someone is running an
older version).
2017-05-09 06:13:35 +02:00
Florian Bruhin
789aebd742
Merge commit '120379dd217d8daaa6b48cb21c8cb3de7679bbec' into rcorre/benchmark_history
2017-05-03 23:15:36 +02:00
Florian Bruhin
90b0af97ce
Improve serialization crash check
...
It now works correctly with view-source URLs and is disabled on Qt 5.9.
Fixes #2289
See #2458
2017-05-03 23:15:17 +02:00
Florian Bruhin
ea2d5e97e2
Disable serialization crash check on Qt 5.9
2017-05-03 21:31:09 +02:00
Ryan Roden-Corrent
120379dd21
Benchmark url completion.
...
This benchmark simulates what I expect to be the most common use-case for url
completion: opening completion and entering several letters.
2017-05-03 07:43:02 -04:00
Florian Bruhin
7c6981e512
Remove unused imports
2017-05-02 10:41:51 +02:00
Florian Bruhin
d5c5d09b18
Hopefully stabilize test_version
...
When using QuteProcess here, we fight with it over who can read the output.
Just use a raw QProcess instead.
2017-05-02 09:12:06 +02:00
Florian Bruhin
7b4ab901e9
tests: Fix Chromium message matching
2017-05-02 08:24:57 +02:00
Florian Bruhin
bffdea6719
Read qWebKitVersion in qtutils.is_webkit_ng.
...
This means we need to try and import qWebKitVersion in qtutils, but better there
than at every place which calls it.
2017-04-28 21:36:02 +02:00
Florian Bruhin
8101fe99a8
Fix starting with Python 2
...
Fixes #2567
2017-04-28 20:51:38 +02:00
Florian Bruhin
421aa0d319
Also try harder to get text content
2017-04-28 19:11:02 +02:00
Florian Bruhin
c8090b5388
Don't wait for click message in webelem tests
...
Looks like we get this sometimes:
----> Waiting for 'Clicked non-editable element!' in the log
14:02:14.976 DEBUG webview webkittab:find_at_pos:618 Hit test result element is null!
14:02:14.976 DEBUG mouse mouse:_mousepress_insertmode_cb:149 Got None element, scheduling check on mouse release
14:02:14.977 DEBUG mouse webview:mousePressEvent:299 Normal click, setting normal target
14:02:14.978 DEBUG mouse mouse:mouserelease_insertmode_cb:173 Element vanished!
2017-04-28 17:29:19 +02:00
Florian Bruhin
20da495376
Add missing file
2017-04-28 15:22:29 +02:00
Florian Bruhin
a2c8e093f4
Move webelement checks to javascript.feature
2017-04-28 15:16:36 +02:00
Florian Bruhin
6458c692cb
Improve JS value type checks
2017-04-28 15:15:32 +02:00
Florian Bruhin
0c653c4703
Handle elem.className in webelem.js
2017-04-28 14:48:30 +02:00
Florian Bruhin
513f83d446
Try harder to get tag name from element
...
This could happen for any of the attributes, but for tagName this actually
happens in the wild... Since elem.tagName is equal to elem.nodeName we just try
to use this.
Fixes #2569
2017-04-28 14:48:30 +02:00
Florian Bruhin
d8bfa6d6b7
Merge commit '6549fd84ce461d3098c13818219df4e4bfd6b444'
2017-04-27 21:15:09 +02:00
Florian Bruhin
d62ebdb926
Make most of search BDD tests work with QtWebEngine
2017-04-27 21:02:26 +02:00
Florian Bruhin
4cd977cab6
Fix zero handling in qflags_key
2017-04-27 20:14:51 +02:00
Niklas Haas
6549fd84ce
Add tabs->favicon-scale setting
...
This allows users to change the size of the favicon independently from
the size of the font/tab, in order to adjust the balance between
favicons and text. The drawing code is also adjusted to place the icon
relative to the text center, rather than the text top.
Works as expected even for values of 0.0 (which is equivalent to hiding
the favicon completely).
Closes #2549 .
2017-04-27 08:53:51 +02:00
Florian Bruhin
046401c489
Clean up search.feature
2017-04-27 08:20:55 +02:00
Florian Bruhin
11c026bf4c
Reenable QtWebKit cache with Qt 5.9.
...
This was fixed here:
https://codereview.qt-project.org/#/c/190818/
See #2427
2017-04-24 12:27:00 +02:00
Florian Bruhin
1539301d64
Fix test coverage for statusbar.url
2017-04-24 08:41:29 +02:00
Florian Bruhin
52f31ed15c
Rename urlutils.safe_display_url to safe_display_string
2017-04-24 07:49:12 +02:00
Florian Bruhin
b632fe3285
Fix invalid URL handling in statusbar
2017-04-24 07:47:58 +02:00
Florian Bruhin
195d0ea207
Show Punycode URL for IDN pages in addition to decoded one
...
This helps when Unicode homographs are used for phishing purposes.
Fixes #2547
2017-04-24 06:58:41 +02:00
Florian Bruhin
a1de313aa3
Add qapp to test_proxy_from_url_pac
2017-04-23 23:10:29 +02:00
Ryan Roden-Corrent
6151b43c47
Fix qute_history benchmark.
...
This benchmark was running very quickly due to an improper setup.
The current history implementation expects that a newly inserted entry must
be more recent than any existing entries and sorts according to this
assumption.
The benchmark test inserts increasingly older entries, breaking this invariant.
When run in the benchmark, the qute://history/data implementation would
see an entry older than the oldest time in the time window and would
immediately return with a single "next" entry.
This patch inserts data in an order that mantains history's invariant and adds
a sanity-check at the end of the test. It does not check for the exact length
as not all entries will be within the time window. The length will be some
values <= 100000, the check just ensures that there is at least something more
than a "next" entry.
Before:
---------------------------------------------- benchmark: 1 tests ----------------------------------------------
Name (time in us) Min Max Mean StdDev Median IQR Outliers(*) Rounds Iterations
----------------------------------------------------------------------------------------------------------------
test_qute_history_benchmark 9.3050 21.9250 9.6143 0.2454 9.5880 0.1070 230;360 9930 1
----------------------------------------------------------------------------------------------------------------
After:
-------------------------------------------------- benchmark: 1 tests -------------------------------------------------
Name (time in ms) Min Max Mean StdDev Median IQR Outliers(*) Rounds Iterations
-----------------------------------------------------------------------------------------------------------------------
test_qute_history_benchmark 220.7040 223.1900 221.7536 1.1070 221.1939 1.8803 1;0 5 1
-----------------------------------------------------------------------------------------------------------------------
2017-04-17 12:15:49 -04:00
Florian Bruhin
db8b6d3e68
Add test for QNetworkReply.abort
2017-04-17 16:02:57 +02:00
Florian Bruhin
ad9e82b91e
Adjust bookmark tests
2017-04-16 21:13:01 +02:00
Florian Bruhin
1d0f187fab
Adjustments for new pylint version
2017-04-13 18:22:16 +02:00
Florian Bruhin
4a480e6f5f
Ignore Chromium NETLINK message
2017-04-12 13:24:10 +02:00
Fritz Reichwald
68c655bd9c
Add period at end of docstring to make flake happy
2017-04-12 10:21:03 +02:00
Fritz Reichwald
b00c1dc906
Add docstring
2017-04-12 09:23:29 +02:00
Fritz Reichwald
ff767dd965
Add neccessary metadata to py script
2017-04-12 08:47:39 +02:00
Fritz Reichwald
c38dc95c23
Add posix to stdin test beacause the py script fails on windows
2017-04-12 07:59:40 +02:00
Fritz Reichwald
b784ddeddd
Also test stdin close for detached start
2017-04-12 07:40:11 +02:00
Fritz Reichwald
590a9b4f78
Indent with spaces and minor changes
2017-04-12 07:32:40 +02:00
Fritz Reichwald
424d0aec5a
change test_stdinclose.py to stdinclose.py
2017-04-12 07:31:24 +02:00
Fritz Reichwald
75f8d2a1d1
Test if stdin gets closed when starting QProcess
2017-04-12 06:54:39 +02:00
Florian Bruhin
fc37223d1b
Regenerate docs properly for qute:help test
2017-04-09 11:36:13 +02:00
Florian Bruhin
778832a813
Set path when redirecting qute:* URLs
...
Fixes #2513
2017-04-08 23:04:10 +02:00
Florian Bruhin
28e6158a04
Stabilize some tests with Qt 5.9 QtWebEngine
2017-04-08 20:38:23 +02:00
Florian Bruhin
6051f93c02
Avoid checking for scroll position in macro tests
...
This makes them simpler and more stable.
2017-04-08 19:54:30 +02:00
Florian Bruhin
e23318fe91
Mark failing test as flaky on QtWebEngine
...
It consistently fails on Qt 5.9 now while waiting the page to be scrolled to
0/20, but I can't figure out why that is happening.
See #2514 , #2410
2017-04-08 19:29:46 +02:00
Florian Bruhin
a081d4184d
tests: Adjust percent-encoding tests for Qt 5.9 changes
...
See #2514
2017-04-08 19:25:55 +02:00
Florian Bruhin
c23e4b1c5f
tests: Allow @qt<... marker for BDD tests
2017-04-08 19:20:53 +02:00
Florian Bruhin
4ec5700cbf
Redirect qute:foo to qute://foo
...
Before, we just returned the same data for both, but then we'll run into
same-origin restrictions as qute:history and qute:history/data are not the same
host.
2017-04-06 21:18:58 +02:00
Florian Bruhin
760dca475e
Merge commit 'be254be13a61171d4109224450db9e67d1076080' into imransobir/fix-webkit-history
2017-04-06 20:34:49 +02:00
Martin Tournoij
e7755f5d9f
Add :debug-log-filter none
...
This allows us to clear any filters. Useful for users, and needed for
the tests.
2017-04-04 20:51:14 +01:00
Martin Tournoij
200e439a30
Fix crash of :debug-log-filter when --filter wasn't given
...
There was no `LogFilter`. The fix is to always initialize a
`LogFilter()` with `None`. as the "filter".
Fixes #2303 .
2017-04-04 17:45:23 +01:00
Florian Bruhin
0de3b5460e
Only disable the cache on Qt 5.7.1
...
I ended up bisecting it, and https://codereview.qt-project.org/#/c/153977/
causes this, which is not in 5.7.0.
2017-04-04 08:24:50 +02:00
Florian Bruhin
2eb365b146
Also disable cache on Qt 5.7
2017-04-03 20:22:54 +02:00
Florian Bruhin
b6642e66fa
Fix cache tests on Qt 5.8
2017-04-03 19:41:37 +02:00
Florian Bruhin
2c3fcda18e
Remove qtutils.ensure_not_null
...
It's not used anymore.
2017-04-03 09:32:13 +02:00
Martin Tournoij
7f13c9a3c3
Relax commandline parsing a bit
...
Problem 1: Entering a command of `:::save` gives an error.
Problem 2: Entering a command of `:save\n` gives an error.
Both scenarios may seem a bit silly at first, but I encountered both by
copy/pasting a command:
1. Enter `:` in qutebrowser.
2. Copy a full line from a terminal starting with `:`.
3. You will now have both of the above problems.
Solution: Trim all whitespace and `:` of a command. This is also what
Vim does, by the way.
2017-03-31 17:14:11 +01:00
Florian Bruhin
05059b4a5e
Merge commit '8af5cfb4ac9e6d928cfeb0522fa729ba616df70a'
2017-03-31 17:47:34 +02:00
Martin Tournoij
8af5cfb4ac
Add a modeline to all the *.feature files
...
This really tripped me up yesterday, My "Vim default" is to use tabs.
This (where `!···` is a tab) does not work as you'll hope it works:
Scenario: Retrying a failed download when the directory didn't exist (issue 2445)
When I download http://localhost:(port)/data/downloads/download.bin to <path>
And I wait for the error "Download error: No such file or directory: *"
And I make the directory <mkdir>
And I run :download-retry
!···!···And I wait until the download is finished
Then the downloaded file <expected> should exist
Examples:
| path | mkdir | expected |
| asd/zxc/ | asd/zxc | asd/zxc/download.bin |
Unfortunately, pytest-bdd uses the "Python 2 behaviour" of "expand all
tabs to 8 spaces", and doesn't give any errors on strange/inconsistent
whitespace. It can cause very confusing errors.
2017-03-31 16:16:31 +01:00
Florian Bruhin
189c1721af
Don't wait for download.bin in windows downloads
2017-03-31 14:46:29 +02:00
Florian Bruhin
6c3abadb32
Stabilize :repeat-command test
2017-03-31 13:05:34 +02:00
Florian Bruhin
004eb742f6
Stabilize test_guiprocess
2017-03-31 13:05:34 +02:00
Florian Bruhin
43155b0cc8
Stabilize history.replaceState tests
2017-03-31 13:05:34 +02:00
Florian Bruhin
eb202d761c
Stabilize dumping bookmarks test
...
For some reason, with QtWebEngine on Windows, sometimes the :debug-dump-page
callback does not get called if we try to dump the same page again...
2017-03-31 13:05:34 +02:00
Florian Bruhin
1eda2b0ea4
Fallback to clipboard when primary selection is unsupported
2017-03-31 13:05:34 +02:00
Florian Bruhin
2884277dbd
Fix Shift-Insert without it being supported
2017-03-31 13:05:34 +02:00
Florian Bruhin
dc405ec3a8
Skip QtWebEngine SSL tests on Windows
2017-03-31 13:05:34 +02:00
Florian Bruhin
a4619d07db
tests: Wait until about:blank is loaded
2017-03-31 13:03:40 +02:00
Florian Bruhin
bf66bb221f
Ignore getrlimit error during tests
2017-03-31 13:03:40 +02:00
Florian Bruhin
708b46d6c0
Fix text with empty primary selection
2017-03-31 13:03:40 +02:00
Florian Bruhin
4d49d9da09
Skip renderer process crash test on Windows
2017-03-31 13:03:40 +02:00
Florian Bruhin
c551c62c27
Stabilize JS tests
2017-03-31 13:03:40 +02:00
Florian Bruhin
dc0a782839
Run python in hints tests
2017-03-31 13:03:40 +02:00
Florian Bruhin
2c4e549d80
Close temporary download file for QtWebEngine
...
Otherwise, Chromium won't be able to write on it on Windows - and we only
need the name anyways.
2017-03-31 13:03:18 +02:00
Florian Bruhin
edb197b028
Make waiting for download prompt more robust
2017-03-31 13:03:18 +02:00
Florian Bruhin
e28eabe5eb
Add marker for #2478
2017-03-31 13:03:17 +02:00
Florian Bruhin
5a16133685
Fix prompt with SSL error test
2017-03-31 13:03:17 +02:00
Florian Bruhin
a55d1b1ee8
Save old socket for IPC
...
At least on Windows with Qt 5.8, we get readyRead notifications *after*
disconnect...
2017-03-31 13:03:17 +02:00
Florian Bruhin
3b351d9066
Run more invocation tests with QtWebEngine
2017-03-31 06:18:43 +02:00
Florian Bruhin
6939f81de7
Merge commit '563a5431e35831cb0a8c418835c54d0264d92c78' into Kingdread/windows-drive-cwd
2017-03-30 10:48:39 +02:00
Florian Bruhin
6a144ef7bd
Merge branch 'Kingdread/windows-drive-cwd'
2017-03-30 10:41:58 +02:00
Daniel Schadt
186eab8eb1
use message.error instead of a tooltip
2017-03-29 17:07:53 +02:00
Florian Bruhin
93a12797aa
Fix quteprocess tests with Python 3.6 on Windows
...
Values smaller than 86400 would result in a negative unsupported timestamp and
thus throw ValueError in Python 3.6
2017-03-28 20:53:11 +02:00
Florian Bruhin
fe81f153cf
tests: Ignore "Unable to locate theme engine" messages
2017-03-28 20:41:23 +02:00
Imran Sobir
4a4c7b96d1
Add nojs history page.
2017-03-28 18:34:47 +05:00
Florian Bruhin
5a4d11be68
Fix lint
2017-03-27 07:16:10 +02:00
Florian Bruhin
a8bc531eee
Add a test for :open with -s
2017-03-27 07:09:55 +02:00
Florian Bruhin
37d22a7cfd
Merge commit '9dccd00ebb2483fd0bb6c6447f57c76a4b40d335' into Kingdread/windows-drive-cwd
2017-03-26 22:14:47 +02:00
Florian Bruhin
39b09f7822
Improve messageview hide code
2017-03-26 15:03:44 +02:00
Florian Bruhin
2181e1ddc4
Merge commit '13677d3563dbd01ae188a2b1a79c7dd840a5dc5e' into pkill-nine/upstream-master-close_message_on_click
2017-03-26 14:59:08 +02:00
pkill9
13677d3563
Add mouse back button to click test.
2017-03-25 21:16:51 +00:00
pkill9
bf2493c1c4
Add test.
2017-03-25 20:06:58 +00:00
Daniel Schadt
a011034ff7
fix tests
2017-03-24 13:21:09 +01:00
Daniel Schadt
df83f7aa99
also add path transformations to :download
2017-03-24 12:30:29 +01:00
Daniel Schadt
07b3a7db7c
add integration tests for reserved filenames
2017-03-24 11:57:05 +01:00
Daniel Schadt
3da21a32d2
treat E: and E:\ the same when downloading
...
Fixes #2305
2017-03-23 18:16:15 +01:00
Ryan Roden-Corrent
a68f997d95
Make keyhint delay configurable.
...
ui.keyhint-delay controls the time from starting a keychain to showing the
keyhint dialog. Resolves #2462 .
2017-03-22 21:50:26 -04:00
Daniel Schadt
6319363614
add a test for downloading a 500 inline attachment
2017-03-22 13:38:03 +01:00
Florian Bruhin
3fbb9a14e0
Fix continuing a search after clearing it
...
Fixes #2438
2017-03-20 21:34:33 +01:00
Florian Bruhin
4b6b9c2d21
Add missing file
2017-03-20 11:28:01 +01:00
Florian Bruhin
3e2ba32240
Fix retrying downloads with QtWebEngine
...
Fixes #2298
2017-03-20 09:35:53 +01:00
Florian Bruhin
7652b6ae03
Merge commit '724e6b29c38a55f722f17997379f1ebe190fa6db'
2017-03-20 09:11:47 +01:00
thuck
20d058741e
Merge branch 'pintab' of https://github.com/thuck/qutebrowser into pintab
2017-03-19 14:43:36 +01:00
thuck
650b1de3b6
Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into pintab
2017-03-19 14:26:48 +01:00
Florian Bruhin
069f908a61
Get rid of run_pytest.py
...
Fixes #2452
2017-03-18 21:03:52 +01:00
Imran Sobir
fb97c6dffc
Send history item atime in milliseconds.
2017-03-16 12:03:40 +05:00
Florian Bruhin
ecec836111
Fix adblock UTF-8 test on Windows
2017-03-13 07:01:13 +01:00
Imran Sobir
a1bec12b2e
Ensure qute:javascript throws QuteSchemeOSError on 404.
2017-03-09 22:07:55 +05:00
Imran Sobir
50bca33618
Use OSError instead of IOError.
2017-03-09 21:47:12 +05:00
Florian Bruhin
0b5838f9fd
Fix BDD version check operators
2017-03-08 20:56:30 +01:00
Florian Bruhin
4278cd5e3e
Remove unused operator imports
2017-03-08 19:10:29 +01:00
Florian Bruhin
7d7f5350c5
Add test for utils.get_clipboard with empty clipboard
2017-03-08 09:33:36 +01:00
Florian Bruhin
7ba01e6764
Get rid of utils.actute_warning
...
Only Ubuntu Trusty still uses Qt < 5.3, and the issue seems to be fixed there by
now.
2017-03-08 09:25:46 +01:00
Florian Bruhin
f86f9cd92a
Refactor qtutils.version_check API
...
Fixes #2423
2017-03-08 08:41:18 +01:00
Florian Bruhin
dfb4374ae1
Release v0.10.1
2017-03-08 06:26:22 +01:00
Florian Bruhin
7c9d004bbc
Fix compiled version check
...
Fixes #2412
2017-03-07 22:05:17 +01:00
Florian Bruhin
ace4006179
Stringify py.path.local in adblock tests
2017-03-07 20:36:50 +01:00
Florian Bruhin
c45019f0a0
Handle invalid UTF8 data in hostblock lists
...
Fixes #2301
2017-03-07 20:25:13 +01:00
Florian Bruhin
d42dff67f2
Reorder initialization
...
marcos.init() really belongs into _init_modules, and we need to do _process_args
after everything has been initialized.
Fixes #2408 .
2017-03-07 06:46:35 +01:00
Florian Bruhin
5fb6d26465
Stabilize some tests
2017-03-06 06:28:26 +01:00
Florian Bruhin
fa89fff668
Stabilize session tests
2017-03-05 15:15:12 +01:00
Florian Bruhin
199a2ffe27
Remove unneeded deleted attribute for FakeSocket
2017-03-05 15:15:12 +01:00
Florian Bruhin
5ccafd62d4
Fix initial keyboard focus with QtWebEngine
...
Fixes #2321 .
2017-03-04 18:11:34 +01:00
Florian Bruhin
75bc400e74
Add Chromium version to version output
...
This also restructures things a bit to show the backend version together with
the backend.
Fixes #2380
2017-03-02 20:22:17 +01:00
Imran Sobir
907d94591d
Make a now fixture to hold time of test.
2017-03-02 23:55:59 +05:00
Imran Sobir
895620b536
Don't assume 'next' appears last.
2017-03-02 22:40:24 +05:00
Florian Bruhin
65a701a180
Stabilize existing text test
2017-03-02 08:38:07 +01:00
Florian Bruhin
d6f47bd3fb
Fix lint
2017-03-02 08:29:43 +01:00
Florian Bruhin
81a36ffd7d
Strip QtWebEngine download suffixes properly
...
Fixes #2386
2017-03-01 23:43:04 +01:00
Florian Bruhin
88904864c9
Skip failing tests on Qt < 5.8
2017-03-01 20:24:34 +01:00
Florian Bruhin
1f12b4c1c1
Relax validation of QssColor values
...
Fixes #2370
2017-03-01 18:11:53 +01:00
Florian Bruhin
65f407e926
Remove webelem.style_property()
...
It's not used anymore, and not possible to support with QtWebEngine without a
massive performance hit when serializing elements.
2017-03-01 17:54:27 +01:00
Florian Bruhin
b4af966167
Make stubbed methods fail tests again
...
Only some caret browsing stuff and a few webelement methods are stubbed out now.
Make them fail tests so we notice when we use a stub.
2017-03-01 17:43:33 +01:00
Florian Bruhin
bc0a9cd94d
Move cursor to end with input elements on QtWebEngine
2017-03-01 17:30:48 +01:00
Florian Bruhin
1e1ba34b60
Fix selecting text fields with QtWebKit
...
Using focus() in JS there means that existing text in the field gets selected.
Move the cursor to the end after focusing it to prevent that.
Fixes #2359
2017-03-01 17:13:02 +01:00
Florian Bruhin
deb59fc66e
Don't strip info when loading PAC from a file
2017-03-01 14:19:23 +01:00
Florian Bruhin
9bb5c9fdab
Remove UserInfo and path/query for PAC URLs
2017-03-01 14:19:13 +01:00
Florian Bruhin
5d0c9440f6
Fix monkeypatch
2017-03-01 12:12:40 +01:00
Florian Bruhin
ca4f249c30
Use three-argument form of monkeypatch.*attr
2017-03-01 11:33:41 +01:00
Florian Bruhin
1e42fd1319
Fix lint
2017-03-01 11:12:28 +01:00
Florian Bruhin
47a9c8e17c
Also check compiled Qt version in version checks
2017-02-28 21:01:47 +01:00
Florian Bruhin
67dfbc7e5f
Don't create QWebEngine profile at import time
...
Fixes #2378
2017-02-28 17:24:48 +01:00
Imran Sobir
cb6c6b814e
Fix pylint errors.
2017-02-28 20:11:51 +05:00
Florian Bruhin
4f90fd952d
Skip test_qt_arg on Qt 5.2
2017-02-28 08:22:06 +01:00
Imran Sobir
3b3846c9dc
Add qute:javascript to serve JS files.
2017-02-27 22:37:24 +05:00
Imran Sobir
783769d302
Load new history items from next item's time.
2017-02-27 21:44:23 +05:00
Imran Sobir
c223f6c69d
Style/misc fixes.
2017-02-27 21:39:51 +05:00
Florian Bruhin
8d22991d03
Fix test_qt_args
2017-02-27 15:12:38 +01:00
Florian Bruhin
07a20bd1ad
Add an end2end test for --qt-arg
2017-02-27 14:02:13 +01:00
Florian Bruhin
2bb4c2fb6e
Fix --qt-arg tests
2017-02-27 13:49:13 +01:00
Imran Sobir
845f21b275
New qute:history page.
2017-02-26 17:07:30 +05:00
Florian Bruhin
9b58a4523d
Add v0.10.0 default config
2017-02-25 21:32:19 +01:00
Florian Bruhin
fc2250b3b2
Merge branch 'session-save-only-active-window' of https://github.com/danfis/qutebrowser into danfis-session-save-only-active-window
2017-02-25 17:55:42 +01:00
Florian Bruhin
9656449545
Merge branch 'master' of https://github.com/kiryl/qutebrowser into kiryl-master
2017-02-25 17:53:05 +01:00
Florian Bruhin
1eab108323
Merge branch 'upstream-master-jseval-file' of https://github.com/pkill-nine/qutebrowser into pkill-nine-upstream-master-jseval-file
2017-02-25 17:26:12 +01:00
Florian Bruhin
3cc32e0b6a
Fix lint
2017-02-25 17:24:27 +01:00
pkill9
6cb48ba2b6
Adds a --file flag to :jseval
2017-02-25 13:11:53 +00:00
Florian Bruhin
02c913238b
Fix test_webkitelem
2017-02-24 13:51:45 +01:00
Florian Bruhin
3feb4211fe
Don't show hints for opacity: 0 elements
...
Fixes #2347
2017-02-24 09:13:25 +01:00
Florian Bruhin
06c4a100cc
Fix QtWebKit-NG private-browsing tests
2017-02-23 08:15:18 +01:00
Florian Bruhin
ce3c0a0f55
Mark more private-browsing tests as xfail with QtWebKit-NG
2017-02-23 08:13:40 +01:00
Florian Bruhin
6004bfa72f
Don't lose warnings shown in early init phases
2017-02-23 06:48:58 +01:00
Daniel Fiser
81a24bdbef
Fixed test of :session-save --only-active-window
2017-02-22 17:04:57 +01:00
Daniel Fiser
76bb11c6aa
Added test for :session-save --only-active-window
2017-02-22 14:16:46 +01:00
Florian Bruhin
5379138c17
Merge branch 'pac+file' of https://github.com/kiryl/qutebrowser into kiryl-pac+file
2017-02-22 07:35:06 +01:00
Florian Bruhin
77f475991d
tests: Ignore CreatePlatformSocket() errors
2017-02-21 20:52:46 +01:00
Florian Bruhin
71f7b01ea7
Bring back PyQt (but not Qt) 5.7.0 support with QtWebEngine
...
This was originally removed in a86170f45
, however Debian testing (Stretch) comes
with Qt 5.7.1, but PyQt 5.7.
2017-02-21 19:25:18 +01:00
Kirill A. Shutemov
de088c18b9
Allow pac+file proxy scheme to load PAC file from local filesystem
...
Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
2017-02-21 12:57:18 +03:00
Kirill A. Shutemov
13213724b0
PAC: fix isPlainHostName()
...
Fix isPlainHostName() implementation and add test-case for it.
Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
2017-02-21 12:16:46 +03:00
Florian Bruhin
389501deb9
Merge branch 'navigate-fix' of https://github.com/EliteTK/qutebrowser into EliteTK-navigate-fix
2017-02-19 20:22:27 +01:00
Florian Bruhin
5b4b226186
Add Qt library/data paths to version info
2017-02-19 14:02:40 +01:00
Tomasz Kramkowski
1fcba72958
tests navigate: Add tests for rel attributes with nofollow
...
Add two extra tests for checking navigation on pages with rel "next" and
"prev" links which are also rel "nofollow" to test for the correct
functionality of navigating pages with rel "next" and "prev" links with
multiple rel attributes.
2017-02-19 12:32:19 +00:00
Florian Bruhin
01db59ff36
Handle all uerscript errors when hinting with userscript-target
2017-02-19 13:15:15 +01:00
Florian Bruhin
399b02a367
Fix subtle issue in hint bdd tests
...
- We need to clean open tabs to avoid reusing target=_blank child tabs
- We don't check the active tab with target=_blank anymore
- Remove some weird :tab-close
2017-02-17 22:07:59 +01:00
Florian Bruhin
ac9b0e5c59
bdd: Allow checking open tabs without (active)
2017-02-17 22:07:23 +01:00
Florian Bruhin
6ac7e61e0e
Add testcase for #2311
2017-02-17 21:32:40 +01:00
Florian Bruhin
0deb422cfd
Remove unused imports
2017-02-17 15:44:25 +01:00
Florian Bruhin
006378923e
Skip geolocation tests on Qt 5.8
...
https://bugreports.qt.io/browse/QTBUG-58985
2017-02-17 14:45:36 +01:00
Florian Bruhin
a86170f45d
Drop PyQt < 5.7.1 support for QtWebEngine
2017-02-17 14:42:57 +01:00
Florian Bruhin
f718b66c48
Disable mhtml tests for Qt 5.6
2017-02-17 14:32:38 +01:00
Florian Bruhin
ba21fb3784
webengine: Use _click_href for hinting target=_blank links
...
Fixes #2311
2017-02-17 06:57:31 +01:00
Florian Bruhin
a4f04db848
Cap scroll count to 5000
...
Fixes #1694
2017-02-11 22:26:37 +01:00
Florian Bruhin
bd8ead2279
Detect rel-attributes on <a> elements for :navigate
2017-02-11 20:48:48 +01:00
Florian Bruhin
c3153273f5
Merge branch 'master' of https://github.com/imransobir/qutebrowser into imransobir-master
2017-02-11 17:05:57 +01:00
Imran Sobir
37c3b79b9b
Add :history command.
2017-02-10 17:47:20 +05:00
Florian Bruhin
f063d4be6f
Add a benchmark for qute:history
2017-02-10 11:39:07 +05:00
Florian Bruhin
46c02bf5ae
Refactor qute:history unittests
2017-02-10 11:39:07 +05:00
Imran Sobir
100f90d9b3
Fix pylint errors.
2017-02-09 18:28:10 +05:00
Florian Bruhin
97982df1cb
Adjust history unittest
2017-02-09 13:40:44 +01:00
Florian Bruhin
85d8d45e19
Ask for confirmation with :history-clear
2017-02-09 13:20:00 +01:00
Imran Sobir
a15aa9eade
Hide next links to future.
2017-02-09 17:18:57 +05:00
Imran Sobir
920fb81377
Use pytest's tmpdir fixture.
2017-02-09 16:39:21 +05:00
Imran Sobir
49271b7ce1
Generate and cleanup fake web-history in own fixture.
2017-02-09 16:32:59 +05:00
Imran Sobir
4eccfd5396
Style fixes.
2017-02-09 15:51:00 +05:00
Imran Sobir
828b0c00b5
Rename test_qutehistory.py to test_qutescheme.py.
2017-02-09 15:39:50 +05:00
Florian Bruhin
601110761d
Fix test_history.test_init without QtWebKIt
2017-02-09 00:50:38 +01:00
Florian Bruhin
16ecc043f7
Run unittests with QUTE_BDD_WEBENGINE
2017-02-09 00:50:38 +01:00
Florian Bruhin
708c96f3ce
Fix handling of @qt>= BDD tags
2017-02-09 00:50:37 +01:00
Florian Bruhin
0d271eba87
Mark tests using special URLs as Qt >= 5.8
2017-02-09 00:50:37 +01:00
Florian Bruhin
a3caba53d5
Allow single-dot version tags in BDD tests
2017-02-09 00:50:37 +01:00
Florian Bruhin
00c743b3e8
Relax complex mhtml check for QtWebEngine
...
Turns out the output differs between QtWebEngine versions, probably because it
dumps its parsed files. Let's just do a sanity check for the complex file
instead.
2017-02-09 00:50:37 +01:00
Florian Bruhin
8779a1367e
Fix test collection without QtWebKit
2017-02-09 00:50:37 +01:00
Florian Bruhin
038a517c5a
Add test for QtWebKit-NG in test_version
2017-02-08 23:46:37 +01:00
Florian Bruhin
ac2fd4a36f
Skip special URL tests with QtWebKit
2017-02-08 13:04:38 +01:00
Imran Sobir
0ab7fd4581
Restore original save-manager, web-history at end of test.
2017-02-08 16:18:33 +05:00
Florian Bruhin
7c08444c37
Refuse to serialize chrome:// and view-source:// tabs
...
Fixes #2289
2017-02-08 11:40:00 +01:00
Florian Bruhin
580648da32
Allow to open chrome:// URLs in BDD tests
2017-02-08 11:32:14 +01:00
Florian Bruhin
1af951fd62
Work around crashes when opening URL after renderer crash
...
Fixes #2290
2017-02-08 10:56:44 +01:00
Florian Bruhin
2227c037f0
Log ignored lines in end2end tests
2017-02-08 09:45:12 +01:00
Florian Bruhin
208ee04bdc
Add simple tests for QtWebEngine renderer crash/kill
2017-02-08 09:41:55 +01:00
Imran Sobir
ec0e95969e
Add unit tests for qute://history.
2017-02-08 13:28:04 +05:00
Florian Bruhin
7bb8c854bf
tests: Make user-agent download hinting more reliable
2017-02-07 23:33:37 +01:00
Florian Bruhin
4b79280ade
tests: Use number hint mode to select download
...
Other screen sizes will give us other letter hints.
2017-02-07 23:23:59 +01:00
Florian Bruhin
bdcd980572
Fix bdd "Then" collision
2017-02-07 22:27:32 +01:00
Florian Bruhin
3f1433dcf7
Merge branch 'webengine-mhtml'
2017-02-07 22:24:25 +01:00
Florian Bruhin
5981bdbedb
Skip test failing on Travis
...
See #2288
2017-02-07 22:23:55 +01:00
Florian Bruhin
eb7064d083
Fix lint
2017-02-07 22:13:33 +01:00
Florian Bruhin
7aa0e900d7
Add mhtml support for QtWebEngine
2017-02-07 22:13:33 +01:00
Florian Bruhin
bae1f41599
Set user-agent for QtWebKit downloads
...
See #513
2017-02-07 22:00:03 +01:00
Imran Sobir
216cef8d9f
Add basic end-to-end test for qute:history.
2017-02-07 16:18:00 +05:00
Florian Bruhin
29ffa3d134
Add a fullscreen notification overlay
...
From the spec:
User agents should ensure, e.g. by means of an overlay, that the end user is
aware something is displayed fullscreen. User agents should provide a means of
exiting fullscreen that always works and advertise this to the user. This is
to prevent a site from spoofing the end user by recreating the user agent or
even operating system environment when fullscreen.
https://fullscreen.spec.whatwg.org/#security-and-privacy-considerations
2017-02-06 16:22:58 +01:00
Florian Bruhin
98e6ccf548
Add fullscreen support for QtWebEngine
2017-02-06 16:22:58 +01:00
Florian Bruhin
69d8b23923
Fix test_unused
2017-02-06 12:47:27 +01:00
Florian Bruhin
b1894ed7e0
Add a utils.unused()
2017-02-06 10:45:36 +01:00
Florian Bruhin
91bdc00410
Make tests work with QtWebKit-NG
...
Fixes #1571
2017-02-06 08:48:08 +01:00
Florian Bruhin
99d1636878
Properly implement session support for QtWebKit-NG
...
See #1571
2017-02-06 08:48:08 +01:00
Florian Bruhin
348a50ad69
Fix inserting text with QtWebEngine
...
The insertText event doesn't seem to be available with newer Chromium releases,
which means this broke (probably with Qt 5.7.1).
Fixes #2183
Fixes #2217
2017-02-06 08:06:58 +01:00
Florian Bruhin
5e58764326
Fix lint
2017-02-05 19:52:59 +01:00
Florian Bruhin
2193551035
Simplify test_insert_mode
...
We already check whether insert mode was entered by listening for "contents: *",
and the copying part is unstable with QtWebEngine.
2017-02-05 18:44:39 +01:00
Florian Bruhin
f3b39c55a0
Fix lint
2017-02-05 18:42:34 +01:00
Florian Bruhin
2de0904b07
Fix lint
2017-02-05 17:21:33 +01:00
Florian Bruhin
bcfa84e9f1
Remove QtWebEngine auth test
...
This now acts differently depending on whether we have sip.assign or not, so
let's just drop this for simplicity.
2017-02-05 17:20:24 +01:00
Florian Bruhin
a5c68babc1
Add backend to version output
2017-02-05 17:16:47 +01:00
Florian Bruhin
b1a95a3930
Add automatic backend selection in earlyinit
2017-02-05 17:09:04 +01:00
Florian Bruhin
a62062af27
Relax font validation in the config
...
Fixes #2256
2017-02-05 12:51:49 +01:00
Florian Bruhin
288c484cdf
Fix mhtml file
2017-02-05 00:29:54 +01:00
Florian Bruhin
4cf974796e
Replace remaining mentions of The-Compiler/qutebrowser
2017-02-05 00:14:50 +01:00
Florian Bruhin
de50f30b9b
Replace all GitHub links
2017-02-05 00:13:11 +01:00
Florian Bruhin
021b3645cc
Don't stack zoom level messages
...
Fixes #1980
2017-02-04 23:42:55 +01:00
Florian Bruhin
2c46f8ecdb
Fix zoom handling with QtWebKit
2017-02-04 23:30:12 +01:00
Florian Bruhin
385969e05f
Fix editor.feature with QtWebEngine
2017-02-04 22:16:22 +01:00
Florian Bruhin
e8bbc1adf8
QtWebEngine: Fix insert mode checks with zoom
...
Fixes #2169
2017-02-04 22:12:41 +01:00
Florian Bruhin
6f0c8245e0
Fix test_insert_mode with QtWebEngine
...
We can't pretend to enter caret mode now
2017-02-04 22:06:35 +01:00
Florian Bruhin
b6e31d4172
Fix parametrizing
2017-02-04 19:03:59 +01:00
Florian Bruhin
7b0f4e0812
Use mock for open_file tests
2017-02-04 18:41:22 +01:00
Florian Bruhin
e01ac4c41f
Merge branch 'issue-2204' of https://github.com/Kingdread/qutebrowser into Kingdread-issue-2204
2017-02-04 18:34:51 +01:00
Florian Bruhin
460389c30d
Simplify some utilcmds tests
2017-02-04 18:26:12 +01:00
Florian Bruhin
0cc7f845e6
Simplify test
2017-02-04 18:10:34 +01:00
Florian Bruhin
4c14b2983b
Merge branch 'more-pac' of https://github.com/abbradar/qutebrowser into abbradar-more-pac
2017-02-04 18:07:45 +01:00
Florian Bruhin
007065b63c
Merge branch 'ignore-invalid-register-keys' of https://github.com/blyxxyz/qutebrowser into blyxxyz-ignore-invalid-register-keys
2017-02-04 17:55:07 +01:00
Florian Bruhin
8cdf2f61c7
Merge branch 'enter-mode-blacklist' of https://github.com/blyxxyz/qutebrowser into blyxxyz-enter-mode-blacklist
2017-02-04 17:52:16 +01:00
Florian Bruhin
c1f2f0ac06
Merge branch 'strip-mailto' of https://github.com/blyxxyz/qutebrowser into blyxxyz-strip-mailto
2017-02-04 17:48:53 +01:00