Bruno Oliveira
af37778b0d
All classes now subclass object for better py3 compatibility
...
Fix #2147
2018-01-24 18:23:42 -02:00
Ronny Pfannschmidt
afc607cfd8
move node base classes from main to nodes
2017-12-18 11:08:20 +01:00
Bruno Oliveira
c3f63ac143
Fix memory leak caused by fixture values never been garbage collected
...
The leak was caused by the (unused) `FixtureRequest._fixture_values`
cache.
This was introduced because the `partial` object (created to call
FixtureDef.finish() bound with the Request) is kept alive
through the entire session when a function-scoped fixture depends
on a session-scoped (or higher) fixture because of the nested
`addfinalizer` calls.
FixtureDef.finish() started receiving a request object in order to
obtain the proper hook proxy object (#2127 ), but this does not seem
useful at all in practice because `pytest_fixture_post_finalizer`
will be called with the `request` object of the moment the fixture value
was *created*, not the request object active when the fixture value
is being destroyed. We should probably deprecate/remove the request
parameter from `pytest_fixture_post_finalizer`.
Fix #2981
2017-12-13 19:49:06 -02:00
Bruno Oliveira
70f1e3b4b0
Improve getscopeitem assertion message
...
Fix #2979
2017-11-30 07:53:43 -02:00
Bruno Oliveira
a6f2d2d2c9
Rename FixtureDef.finalizer to FixtureDef.finalizers
2017-11-12 11:35:46 -02:00
Bruno Oliveira
6d3fe0b826
Explicitly clear finalizers list in finalize to ensure cleanup
2017-11-12 11:28:57 -02:00
Bruno Oliveira
bdad345f99
Fix passing request to finish() in FixtureDef
2017-11-12 11:28:26 -02:00
Bruno Oliveira
f074fd9ac6
Merge remote-tracking branch 'upstream/features' into malinoff/fix-2124
2017-11-12 11:16:08 -02:00
Bruno Oliveira
6550b9911b
pytest_fixture_post_finalizer now receives a request argument
2017-11-12 11:14:55 -02:00
Bruno Oliveira
258031afe5
Merge remote-tracking branch 'upstream/master' into malinoff/fix-2124
2017-11-12 10:34:47 -02:00
Ronny Pfannschmidt
d1af369800
Merge pull request #2913 from nicoddemus/merge-master-into-features
...
Merge master into features
2017-11-11 10:09:49 +01:00
Ronny Pfannschmidt
b671c5a8bf
Merge pull request #2914 from nicoddemus/addfinalizer-refactor
...
Make SubRequest.addfinalizer an explicit method
2017-11-11 09:26:24 +01:00
Bruno Oliveira
f320686fe0
Make SubRequest.addfinalizer an explicit method
...
This implicit definition really tripped me while debugging #2127 ,
unfortunately hidden as it was in the middle of all the variable
declarations.
I think the explicit definition is much easier for the eyes and IDEs
to find.
2017-11-11 03:07:34 -02:00
Bruno Oliveira
983a09a2d4
Merge remote-tracking branch 'upstream/master' into merge-master-into-features
2017-11-10 18:33:02 -02:00
Ronny Pfannschmidt
c47dcaa713
switch a special case in scope node lookup to a general one
2017-11-10 17:35:42 +01:00
Bruno Oliveira
b11640c1eb
Fix linting E722: do not use bare except
2017-11-04 13:59:10 -02:00
Bruno Oliveira
03829fde8a
Fix linting E741: ambiguous variable name
2017-11-04 13:59:10 -02:00
Ronny Pfannschmidt
07b2b18a01
introduce attrs as dependency and use it
...
for FixtureFunctionMarker and marks
2017-10-30 17:04:42 +01:00
Bruno Oliveira
6821d36ca5
Merge remote-tracking branch 'upstream/master' into merge-master-into-features
2017-10-24 19:57:14 -02:00
Tom Dalton
14e3a5fcb9
Move the generic separator to a constant
2017-10-24 10:42:16 +01:00
Tom Dalton
655ab0bf8b
Address more review comments, fix massive bug I reintroduced in the node-splitting code :-/
2017-10-23 17:49:49 +01:00
Tom Dalton
a7199fa8ab
Docstring typo
2017-10-23 16:59:56 +01:00
Tom Dalton
d714c196a5
Shorter code, longer docstring
2017-10-23 16:55:35 +01:00
Tom Dalton
ee7e1c94d2
Remove redundant if, tidy if-body
2017-10-23 16:12:07 +01:00
Tom Dalton
1e6dc6f8e5
Working (I think) fix for #2836
2017-10-23 13:26:42 +01:00
Ceridwen
3da28067f3
Replace introspection in compat.getfuncargnames() with inspect/funcsigs.signature
2017-10-19 16:01:26 -07:00
hugovk
ef732fc51d
Remove code for unsupported Python versions
2017-10-10 08:54:56 +03:00
Leonard Lausen
e89abe6a40
Defensive fallback in case of kwargs not being present
2017-10-09 00:37:27 +09:00
Leonard Lausen
c24ffa3b4c
Fix pytest.parametrize when argnames are specified as kwarg
2017-10-08 12:23:26 +09:00
Bruno Oliveira
a993add783
Allow tests declared as @staticmethod to use fixtures
...
Fix #2699
2017-08-17 20:44:19 -03:00
Andreas Pelme
39331856ed
Use the correct stacklevel for getfuncargvalue() deprecation warning.
...
Fixed #2681 .
2017-08-13 14:59:33 +02:00
Bruno Oliveira
e1aed8cb17
Merge pull request #2490 from RonnyPfannschmidt/fix-580
...
Test Outcomes as BaseException - fix #580
2017-07-30 17:38:42 -03:00
Ronny Pfannschmidt
06a49338b2
make Test Outcomes inherit from BaseException instead of exception
...
fixes #580
2017-07-28 15:28:51 +02:00
Lawrence Mitchell
a546a612bd
Fix nondeterminism in fixture collection order
...
fixtures.reorder_items is non-deterministic because it reorders based
on iteration over an (unordered) set. Change the code to use an
OrderedDict instead so that we get deterministic behaviour, fixes #920 .
2017-07-26 14:41:10 +01:00
Andras Tim
15610289ac
Fixed E712 flake8 errors
...
comparison to True should be ‘if cond is True:’ or ‘if cond:’
2017-07-17 01:44:23 +02:00
Andras Tim
7248b759e8
Fixed E303 flake8 errors
...
too many blank lines (3)
2017-07-17 01:44:23 +02:00
Andras Tim
b840622819
Fixed E302 flake8 errors
...
expected 2 blank lines, found 0
2017-07-17 01:44:23 +02:00
Andras Tim
17a21d540b
Fixed E301 flake8 errors
...
expected 1 blank line, found 0
2017-07-17 01:44:23 +02:00
Andras Tim
8f3eb6dfc7
Fixed E261 flake8 errors
...
at least two spaces before inline comment
2017-07-17 01:44:22 +02:00
Andras Tim
617e510b6e
Fixed E231 flake8 errors
...
missing whitespace after ‘,’, ‘;’, or ‘:’
2017-07-17 01:44:22 +02:00
Andras Tim
4b22f270a3
Fixed E226 flake8 errors
...
missing whitespace around arithmetic operator
2017-07-17 01:44:22 +02:00
Andras Tim
2e8caefcab
Fixed E225 flake8 errors
...
missing whitespace around operator
2017-07-17 01:44:22 +02:00
Andras Tim
3fabc4d219
Fixed E222 flake8 errors
...
multiple spaces after operator
2017-07-17 01:44:22 +02:00
Andras Tim
f640e0cb04
Fixed E221 flake8 errors
...
multiple spaces before operator
2017-07-17 01:44:22 +02:00
Andras Tim
cf97159009
Fixed E128 flake8 errors
...
continuation line under-indented for visual indent
2017-07-17 01:28:16 +02:00
Andras Tim
e855a79dd4
Fixed E126 flake8 errors
...
continuation line over-indented for hanging indent
2017-07-17 01:28:16 +02:00
Andras Tim
92e2cd9c68
Fixed E125 flake8 errors
...
continuation line with same indent as next logical line
2017-07-17 01:28:16 +02:00
Andras Tim
0be97624b7
Fixed E121 flake8 errors
...
continuation line under-indented for hanging indent
2017-07-17 01:28:16 +02:00
Andras Tim
6af2abdb53
Fixed flake8 warnings
...
W191 indentation contains tabs
W292 no newline at end of file
W293 blank line contains whitespace
W391 blank line at end of file
2017-07-17 01:28:16 +02:00
Bruno Oliveira
4e4ebbef5a
Improve test to ensure the expected function is re-raised
2017-06-13 20:16:48 -03:00