Commit Graph

438 Commits

Author SHA1 Message Date
Florian Bruhin
fb1cffd158 Merge branch 'feature/directory-browser' of git://github.com/antoyo/qutebrowser into dirbrowser 2015-08-16 18:27:05 +02:00
Florian Bruhin
402f9be7e9 Fix lint. 2015-08-16 15:40:26 +02:00
Florian Bruhin
9eca7ae556 appveyor: Fix Python path in registry.
This makes PyQt pick up C:\Python34 correctly so we can use the newer AppVeyor
image again.

See https://github.com/appveyor/ci/issues/363.
2015-08-16 11:14:40 +02:00
Florian Bruhin
952893d984 appveyor: Update to PyQt 5.5 and self-host it. 2015-08-16 11:13:05 +02:00
Florian Bruhin
f2c8ff8aa5 Remove .exe. 2015-08-15 19:19:03 +02:00
Florian Bruhin
36a9b816a7 *Really* fix path in ci_install.py 2015-08-15 19:08:22 +02:00
Florian Bruhin
5d0ffcd14d Whoops. 2015-08-14 07:56:51 +02:00
Florian Bruhin
2405bf1984 ci_install: Fix path. 2015-08-14 07:42:51 +02:00
Florian Bruhin
fb48059ae9 ci_install: Don't use os.system. 2015-08-14 07:17:53 +02:00
Florian Bruhin
515c9611c4 ci_install: Hopefully fix checking setup. 2015-08-14 07:14:13 +02:00
Florian Bruhin
3bfcfaba4c Fix lint. 2015-08-14 06:59:36 +02:00
Florian Bruhin
4dee427f0e ci_install: Check setup after installing. 2015-08-14 06:55:31 +02:00
Florian Bruhin
bbb581eaf8 100% coverage for browser.network.filescheme. 2015-08-13 21:56:22 +02:00
Florian Bruhin
5a1663c584 100% coverage for mainwindow.statusbar.textbase. 2015-08-12 07:40:45 +02:00
Florian Bruhin
927cf84e14 100% test coverage for config.textwrapper. 2015-08-12 07:01:21 +02:00
Florian Bruhin
a6d09b8cc9 100% coverage for browser.network.schemehandler. 2015-08-12 06:53:32 +02:00
Florian Bruhin
da9cb88c81 pylint: Disable protected-access for tests. 2015-08-12 06:44:33 +02:00
Florian Bruhin
83a4451f93 Skip coverage checks when tests are filtered. 2015-08-12 06:42:05 +02:00
Florian Bruhin
cf45d97046 100% test coverage for utils.jinja. 2015-08-12 06:25:05 +02:00
Florian Bruhin
2d8aaecd65 100% coverage for utils.debug. 2015-08-11 17:11:00 +02:00
Florian Bruhin
c8679d6544 100% coverage for browser.webelem. 2015-08-10 19:37:16 +02:00
Florian Bruhin
a28b0c3386 Remove .coverage.ini in check_coverage.py. 2015-08-08 22:55:37 +02:00
Florian Bruhin
3179455e69 Reorganize tox.ini.
- The environment to run unittests is now called py34 as that's the common
  thing used, and will also allow us to run the tests with Python 3.5.
- The default tests now also run coverage.py and do a coverage check (on
  Linux).
- The smoke tests are now part of the default environment.
2015-08-08 22:33:29 +02:00
Florian Bruhin
d23096f898 Also check opposite condition in check_coverage.py. 2015-08-02 22:16:03 +02:00
Florian Bruhin
7d284fa575 pylint: Disable missing-docstring for tests. 2015-08-02 20:38:13 +02:00
Florian Bruhin
e5056e1c43 100% coverage for mainwindow.statusbar.tabindex. 2015-08-02 20:34:37 +02:00
Florian Bruhin
6c0f523c89 100% coverage for browser.http and browser.rfc6266. 2015-08-02 19:52:43 +02:00
Florian Bruhin
1d4bb8d8da 100% coverage for misc.split. 2015-08-02 13:42:01 +02:00
Florian Bruhin
d5888fea89 100% coverage for mainwindow.statusbar.progress. 2015-08-02 01:49:33 +02:00
Florian Bruhin
f21cffd9b8 100% coverage for mainwindow.statusbar.percentage. 2015-08-02 01:45:19 +02:00
Florian Bruhin
e59f533f9d Add statusbar.keystring to 100% coverage modules. 2015-08-02 01:34:40 +02:00
Florian Bruhin
9db0e03f05 Add some tests for config.configexc. 2015-08-02 01:31:43 +02:00
Florian Bruhin
e94e90baec Add some tests for config.configdata. 2015-08-02 00:59:13 +02:00
Florian Bruhin
26f6bb7d0d Rewrite browser.test_tabhistory.py for pytest. 2015-08-02 00:34:04 +02:00
Florian Bruhin
907a4b0e5e Add path assertion to check_coverage.py.
https://bitbucket.org/ned/coveragepy/issues/235 confuses me - maybe the XML
format will change in the future to not contain the full filename? To make
sure I'll add this assertion, then I'll notice.
2015-07-29 17:31:26 +02:00
Florian Bruhin
b03fea26c2 Add hypothesis to frozen tests. 2015-07-24 18:43:08 +02:00
Florian Bruhin
fd5a89dccd scripts: Use runcall in run_profile.py. 2015-07-24 15:01:18 +02:00
Florian Bruhin
d805e2d71e Don't use lxml for check_coverage.py.
See #792.
2015-07-24 14:42:18 +02:00
Florian Bruhin
7f2abd1a46 tests: Enforce 100% coverage for perfect modules.
Fixes #792.
2015-07-24 14:04:40 +02:00
Florian Bruhin
60b6652006 Better output on errors. 2015-07-14 16:18:34 +02:00
Florian Bruhin
03383c48eb Use imported file paths in link_pyqt.py.
See #804.
2015-07-14 16:18:34 +02:00
Florian Bruhin
c310156dde Fix lint. 2015-07-13 18:11:35 +02:00
Florian Bruhin
a3776e361b minimal_webkit_testbrowser: Add WebEngine support. 2015-07-13 17:39:09 +02:00
Florian Bruhin
3a95cd470a minimal_webkit_testbrowser: Add switch for plugins. 2015-07-10 21:36:53 +02:00
Florian Bruhin
55cf470436 minimal_webkit_testbrowser: Add some output. 2015-07-10 21:34:33 +02:00
Florian Bruhin
0be2192eab minimal_webkit_testbrowser: Use QUrl.fromUserInput. 2015-07-10 21:32:36 +02:00
Florian Bruhin
0bdcf2910a minimal_webkit_testbrowser: Use argparse. 2015-07-10 21:32:00 +02:00
Florian Bruhin
d232437105 Update to beautifulsoup 4.4.0.
Upstream changelog:

Especially important changes:

* Added a warning when you instantiate a BeautifulSoup object without
  explicitly naming a parser. [bug=1398866]

* __repr__ now returns an ASCII bytestring in Python 2, and a Unicode
  string in Python 3, instead of a UTF8-encoded bytestring in both
  versions. In Python 3, __str__ now returns a Unicode string instead
  of a bytestring. [bug=1420131]

* The `text` argument to the find_* methods is now called `string`,
  which is more accurate. `text` still works, but `string` is the
  argument described in the documentation. `text` may eventually
  change its meaning, but not for a very long time. [bug=1366856]

* Changed the way soup objects work under copy.copy(). Copying a
  NavigableString or a Tag will give you a new NavigableString that's
  equal to the old one but not connected to the parse tree. Patch by
  Martijn Peters. [bug=1307490]

* Started using a standard MIT license. [bug=1294662]

* Added a Chinese translation of the documentation by Delong .w.

New features:

* Introduced the select_one() method, which uses a CSS selector but
  only returns the first match, instead of a list of
  matches. [bug=1349367]

* You can now create a Tag object without specifying a
  TreeBuilder. Patch by Martijn Pieters. [bug=1307471]

* You can now create a NavigableString or a subclass just by invoking
  the constructor. [bug=1294315]

* Added an `exclude_encodings` argument to UnicodeDammit and to the
  Beautiful Soup constructor, which lets you prohibit the detection of
  an encoding that you know is wrong. [bug=1469408]

* The select() method now supports selector grouping. Patch by
  Francisco Canas [bug=1191917]

Bug fixes:

* Fixed yet another problem that caused the html5lib tree builder to
  create a disconnected parse tree. [bug=1237763]

* Force object_was_parsed() to keep the tree intact even when an element
  from later in the document is moved into place. [bug=1430633]

* Fixed yet another bug that caused a disconnected tree when html5lib
  copied an element from one part of the tree to another. [bug=1270611]

* Fixed a bug where Element.extract() could create an infinite loop in
  the remaining tree.

* The select() method can now find tags whose names contain
  dashes. Patch by Francisco Canas. [bug=1276211]

* The select() method can now find tags with attributes whose names
  contain dashes. Patch by Marek Kapolka. [bug=1304007]

* Improved the lxml tree builder's handling of processing
  instructions. [bug=1294645]

* Restored the helpful syntax error that happens when you try to
  import the Python 2 edition of Beautiful Soup under Python
  3. [bug=1213387]

* In Python 3.4 and above, set the new convert_charrefs argument to
  the html.parser constructor to avoid a warning and future
  failures. Patch by Stefano Revera. [bug=1375721]

* The warning when you pass in a filename or URL as markup will now be
  displayed correctly even if the filename or URL is a Unicode
  string. [bug=1268888]

* If the initial <html> tag contains a CDATA list attribute such as
  'class', the html5lib tree builder will now turn its value into a
  list, as it would with any other tag. [bug=1296481]

* Fixed an import error in Python 3.5 caused by the removal of the
  HTMLParseError class. [bug=1420063]

* Improved docstring for encode_contents() and
  decode_contents(). [bug=1441543]

* Fixed a crash in Unicode, Dammit's encoding detector when the name
  of the encoding itself contained invalid bytes. [bug=1360913]

* Improved the exception raised when you call .unwrap() or
  .replace_with() on an element that's not attached to a tree.

* Raise a NotImplementedError whenever an unsupported CSS pseudoclass
  is used in select(). Previously some cases did not result in a
  NotImplementedError.

* It's now possible to pickle a BeautifulSoup object no matter which
  tree builder was used to create it. However, the only tree builder
  that survives the pickling process is the HTMLParserTreeBuilder
  ('html.parser'). If you unpickle a BeautifulSoup object created with
  some other tree builder, soup.builder will be None. [bug=1231545]
2015-07-06 10:49:59 +02:00
Florian Bruhin
7b8490b6c0 Fix 'an user' spelling. 2015-06-29 17:49:19 +02:00
Florian Bruhin
db06eeded5 Fix spelling. 2015-06-29 17:45:56 +02:00