Florian Bruhin
56bdb74ed9
bdd: Allow (port) replacement in "When I run ...".
2015-11-09 07:37:04 +01:00
Florian Bruhin
4c2e92c998
Make testprocess test more stable.
2015-11-06 07:17:15 +01:00
Florian Bruhin
25ecd9068c
tests: Don't wait for the same line twice.
...
We need to search for lines in the history because we could miss something
otherwise, but for subsequent wait_for calls, we really don't want to wait for
the same thing again.
This should make test_backforward.py more stable as it *actually* waits when
going back now. Before, it did produce failures such as this one on OS X:
____________________________ test_going_backforward ____________________________
[..]
@bdd.then(bdd.parsers.parse("The requests should be:\n{pages}"))
def list_of_loaded_pages(httpbin, pages):
requests = [httpbin.Request('GET', '/' + path.strip())
for path in pages.split('\n')]
> assert httpbin.get_requests() == requests
E assert [Request(verb...rward/1.txt')] == [Request(verb=...rward/2.txt')]
E At index 3 diff: Request(verb='GET', path='/data/backforward/1.txt') != Request(verb='GET', path='/data/backforward/2.txt')
E Full diff:
E [Request(verb='GET', path='/data/backforward/1.txt'),
E Request(verb='GET', path='/data/backforward/2.txt'),
E Request(verb='GET', path='/data/backforward/1.txt'),
E - Request(verb='GET', path='/data/backforward/1.txt')]
E ? ^
E + Request(verb='GET', path='/data/backforward/2.txt')]
E ? ^
tests/integration/features/conftest.py:85: AssertionError
2015-11-06 07:02:17 +01:00
Florian Bruhin
f5f74b7ddc
tests: Use a base class for testprocess lines.
2015-11-06 07:02:17 +01:00
Florian Bruhin
5541e3ed32
bdd: Wait until title is loaded in yankpaste.
2015-11-05 08:03:03 +01:00
Florian Bruhin
b0430ca3e7
bdd: Make it possible to wait for messages.
2015-11-05 08:02:55 +01:00
Florian Bruhin
547fc9f40e
Simplify testprocess tests.
2015-11-05 07:40:10 +01:00
Florian Bruhin
10e52c6e9f
Make testprocess test more robust.
2015-11-05 07:39:31 +01:00
Florian Bruhin
bf74fda5b2
Fix lint.
2015-11-05 07:33:32 +01:00
Florian Bruhin
76f5f4fefb
bdd: Remove now unnecessary sleep.
2015-11-05 07:07:43 +01:00
Florian Bruhin
beab639d7a
bdd: Wait for finished loads in backforward.
2015-11-05 07:07:43 +01:00
Florian Bruhin
924b0052c6
bdd: Match historic messages in wait_for.
...
Fixes #1083 .
2015-11-05 07:07:43 +01:00
Florian Bruhin
2c7b0d2fb4
Add some bdd tests for scrolling.
2015-11-03 22:42:25 +01:00
Florian Bruhin
49137150ad
tests: Print raw yaml in get_session() in QuteProc.
2015-11-03 22:41:56 +01:00
Florian Bruhin
2427bf5cb6
bdd: Make expect_error handle warnings.
2015-11-03 22:40:19 +01:00
Florian Bruhin
17396e1030
bdd tests: Add QuteProc.get_session().
2015-11-03 14:55:46 +01:00
Florian Bruhin
d992390cbe
bdd: Move yankpaste/test.html to yankpaste.html.
2015-11-03 14:40:30 +01:00
Florian Bruhin
e31240e6c9
tests: Increase wait_for default timeout again.
2015-11-03 07:54:24 +01:00
Florian Bruhin
c78bbd9fd0
tests: Show some information for WaitForTimeout.
2015-11-03 07:53:51 +01:00
Florian Bruhin
535bcab310
bdd tests: Restart qutebrowser once per module.
...
This should be a good compromise between reproducibility and speed.
2015-11-03 07:00:46 +01:00
Florian Bruhin
f5eb755ef3
tests: Ignore some Qt warnings during teardown.
2015-11-03 06:38:48 +01:00
Florian Bruhin
7e0e770d53
bdd: Increase timeouts.
2015-11-03 06:35:52 +01:00
Florian Bruhin
e13de98790
Fix lint.
2015-11-02 23:49:44 +01:00
Florian Bruhin
7da0d2b6d5
Add some bdd tests for zooming.
2015-11-02 23:41:48 +01:00
Florian Bruhin
3155e20999
tests: Add helpers to compare sessions.
2015-11-02 23:41:48 +01:00
Florian Bruhin
ce6ba605e4
Reorganize bdd tests.
2015-11-02 20:32:15 +01:00
Florian Bruhin
7431d7cf89
tests: Increase quteproc start timeout.
2015-11-02 08:08:36 +01:00
Florian Bruhin
8884de71d8
Fix checking for primary selection.
2015-11-02 08:07:25 +01:00
Florian Bruhin
672d11e25a
Add bdd test for :yank/:paste.
2015-11-02 07:43:37 +01:00
Florian Bruhin
56758c8cea
Ignore messages which are in qt_log_ignore.
2015-11-02 06:19:19 +01:00
Florian Bruhin
6dc3b5de36
Add some margin to wait_for stopwatch.
2015-11-02 06:11:35 +01:00
Florian Bruhin
8e09fd929b
Ignore QWaitCondition error.
2015-11-02 06:10:31 +01:00
Florian Bruhin
b79ccb5e79
bdd: Make message matching work.
2015-11-01 22:49:39 +01:00
Florian Bruhin
dac2898585
Parse log messages in LogLine.
2015-11-01 22:49:29 +01:00
Florian Bruhin
6431997a5a
Add some testprocess tests.
2015-11-01 22:48:44 +01:00
Florian Bruhin
239bc3bdea
Connect read_log before starting process.
2015-11-01 22:48:44 +01:00
Florian Bruhin
dfc1782bbf
Add testprocess.wait_for to react to messages.
2015-11-01 22:48:44 +01:00
Florian Bruhin
70decdc2c8
Fix lint.
2015-11-01 22:47:58 +01:00
Florian Bruhin
4b683cdd8f
Check invalid logs after exiting process.
2015-11-01 22:47:58 +01:00
Florian Bruhin
1c7fd7d80e
Rename testprocess cleanup to terminate.
2015-11-01 22:47:58 +01:00
Florian Bruhin
18ead66f04
Fix odd QuteProc crash.
2015-11-01 22:47:58 +01:00
Florian Bruhin
5ed419c7f5
Make reloading more reliable.
...
Before, we didn't wait until the reload is done, which could lead to a race
condition.
2015-11-01 22:47:58 +01:00
Florian Bruhin
2be5c4cd27
Fix lint.
2015-11-01 22:47:58 +01:00
Florian Bruhin
1a562594fa
Broken error message matching.
2015-11-01 22:40:11 +01:00
Florian Bruhin
3a948be490
Add test for unexpected error logging.
2015-11-01 22:40:11 +01:00
Florian Bruhin
ac148c11ec
Skip bdd tests when frozen for now.
...
See:
https://github.com/pytest-dev/pytest-bdd/issues/158
https://github.com/pytest-dev/pytest-bdd/issues/159
2015-11-01 22:40:11 +01:00
Florian Bruhin
b878b139dd
Ignore errors when decoding subprocess output.
...
This would otherwise fail on Windows because … get translated to an UTF-8 NEL
(U+0085)...
2015-11-01 22:40:11 +01:00
Florian Bruhin
be20001594
Adjust log regex to parse "Unknown module".
2015-11-01 22:40:11 +01:00
Florian Bruhin
ee8d538964
Run new qutebrowser instance for each test.
...
The possibilities how a test can affect another are just too high.
2015-11-01 22:40:11 +01:00
Florian Bruhin
8664e45558
Use httpbin.Request namedtuple for comparisons.
...
This makes it easier to look at the pytest diff when things go wrong.
2015-11-01 22:40:11 +01:00
Florian Bruhin
6e786ff9b7
Open in a new tab.
2015-11-01 22:40:11 +01:00
Florian Bruhin
4bf6359205
Rename Request.url to Request.path.
2015-11-01 22:40:11 +01:00
Florian Bruhin
c052c8a107
Don't show full debug log without --verbose.
2015-11-01 22:40:11 +01:00
Florian Bruhin
af000a8ac6
Wait longer for process to start.
2015-11-01 22:40:11 +01:00
Florian Bruhin
ffc465e863
First work-in-progress feature test.
2015-11-01 22:40:11 +01:00
Florian Bruhin
76fcec4e4c
tests: First steps towards end-to-end tests.
2015-11-01 22:40:11 +01:00
Florian Bruhin
e6ee0c08cf
testprocess: Restart process when it quits.
2015-10-14 21:52:11 +02:00
Florian Bruhin
f858af666f
testprocess: Get executable/args from subclasses.
2015-10-14 21:52:11 +02:00
Florian Bruhin
294eb19e61
Fix tests/integration/webserver.py when frozen.
2015-10-10 17:41:27 +02:00
Florian Bruhin
3e9088083f
Raise correct InvalidLine exception.
2015-10-10 17:29:23 +02:00
Florian Bruhin
2f075c382b
Move out test process handling to its own file.
2015-10-10 17:20:20 +02:00
Florian Bruhin
5ba7b5cf0f
Fix lint.
2015-09-19 22:03:56 +02:00
Florian Bruhin
7d6c39d64b
Run frozen smoke test via pytest.
2015-09-18 22:23:18 +02:00
Florian Bruhin
ae07e00038
Move httpbin stuff out of integration/conftest.py.
2015-09-18 20:20:06 +02:00
Florian Bruhin
a8a2fd2e7d
Rename webserver.py to webserver_sub.py.
2015-09-18 20:08:31 +02:00
Florian Bruhin
2cb1f9226a
Make httpbin tests run when frozen.
2015-09-17 21:51:09 +02:00
Florian Bruhin
7eeabb2467
Fix integration tests with CRLF.
2015-09-17 19:52:56 +02:00
Florian Bruhin
a6f113375c
Add missing integration test data dir.
2015-09-17 19:10:16 +02:00
Florian Bruhin
c195ee225d
Add missing docs and fix lint.
2015-09-17 19:02:03 +02:00
Florian Bruhin
c530312aca
httpbin: Improve request parsing/logging.
2015-09-17 19:02:03 +02:00
Florian Bruhin
fd264631c4
Move httpbin data to data/ instead of html/.
2015-09-17 19:02:03 +02:00
Florian Bruhin
2bfb7609ac
Show data in test_httpbin.
2015-09-17 19:02:03 +02:00
Florian Bruhin
48b599a774
Start work on httpbin integration tests.
2015-09-17 19:02:03 +02:00
Florian Bruhin
0b911d2e20
Split integration tests, run smoke via pytest.
2015-09-01 08:54:53 +02:00