holger krekel
51644a116c
remove unused code
2012-10-17 11:50:32 +02:00
holger krekel
98513b995a
simplify/integrate fixturemapper into FixtureManager
...
also fix jstests test failures
2012-10-17 11:20:45 +02:00
holger krekel
dc4e205876
typographic fixes, little simplification
2012-10-17 09:21:04 +02:00
holger krekel
2855a2f6cb
remove outdated IMPL.txt and move up-to-date doc bits to FixtureMapper class.
2012-10-16 16:27:51 +02:00
holger krekel
cc2337af3a
refine parsefactories interface, fix two_classes test originally reported by Alex Okrushko, also add a few more tests to make sure autouse-fixtures are properly distinguished
2012-10-16 16:13:12 +02:00
holger krekel
ab4183d400
strike another use of getfuncargnames() and rename FixtureDef.fixturenames to "argnames" because it's really just the fixture function arguments
2012-10-16 14:19:38 +02:00
holger krekel
37965657d0
make factorydeflist immutable by using an index
2012-10-16 13:59:12 +02:00
holger krekel
ccaa1af534
use FixtureInfo from FixtureRequest
2012-10-16 13:48:00 +02:00
holger krekel
2f3bbdafda
use fixturemapper/fixtureinfo from Function objects
2012-10-16 13:48:00 +02:00
holger krekel
021c087701
implement fixture information stored on the parentnode of functions
...
to be reused by metafunc mechanics and Function setup
2012-10-16 13:47:59 +02:00
holger krekel
4541456a96
add plan for better fixture implementation, an xfailing test
...
and a slight refactoring of Metafunc tests/creation
2012-10-16 13:47:59 +02:00
holger krekel
f5d796b093
improve docs further, refine unittest docs, rename ``autoactive`` to ``autouse``
...
to better match ``@pytest.mark.usefixtures`` naming.
2012-10-12 14:52:36 +02:00
holger krekel
0594265adc
fix output of --fixtures for @pytest.fixture defined functions.
2012-10-09 16:49:04 +02:00
holger krekel
fb3af07ef4
try to move docs to a more releasable state, also refine
...
release announce and a few coding bits
2012-10-09 14:35:17 +02:00
holger krekel
df643f65f0
remove support for @pytest.fixture on classes, to be reserved for future use:
...
Fixture-classes could offer setup/teardown/addoption/configure methods
and provide higher level support. Preliminary allowing it to work on classes
may make introducing it harder.
2012-10-08 11:22:31 +02:00
holger krekel
d630d02c5b
remove pytest.setup usage
2012-10-08 08:34:21 +02:00
holger krekel
30b10a6950
- fix doc references, refactor fixtures docs to more quickly start
...
with examples instead of big text blobgs
- also silence -q and -qq reporting some more
2012-10-07 13:06:17 +02:00
holger krekel
cda84fb566
- allow to use fixtures directly, i.e. without ()
...
- also allow scope to be determined by a dynamic function
2012-10-06 21:03:55 +02:00
holger krekel
d3893dd5d1
allow metafunc.parametrize(scope=...) calls to override the scope of a Fixture function definition. This is useful for cases where you want to dynamically
...
set scope and parametrization for a fixture instead of statically declaring
it on the fixture function.
2012-10-06 21:01:13 +02:00
holger krekel
55a8bfd174
fix issue197 - in case a function is parametrized with zero arguments,
...
skip it during setup
2012-10-06 11:34:06 +02:00
holger krekel
d8c365ef2c
implement pytest.mark.usefixtures and ini-file usefixtures setting
...
and also refine fixture docs a bit - fixtures.txt should now mostly
reflect the current state of the implementation
2012-10-05 19:20:40 +02:00
holger krekel
d1a3f5c3a6
make the default non-error pass simpler and faster, refine error reporting by presenting "fixture" tracebacks
2012-10-05 14:24:45 +02:00
holger krekel
bb07ba7807
rename a number of internal and externally visible variables to use the fixture name
...
rather than funcargs. Introduce .funcargnames compatibility attribute for backward compat.
2012-10-05 14:24:44 +02:00
holger krekel
8282efbb40
internally unify setup and fixture code, making setup a shortcut to fixture(autoactive=True)
2012-10-05 10:21:35 +02:00
holger krekel
9251e747af
rename pytest.factory usages into pytest.fixture ones
2012-10-05 10:21:35 +02:00
holger krekel
5173647b4d
fixes to against python3.3
2012-10-01 10:14:54 +02:00
holger krekel
57a832812b
remove unneccessary internal __request__ funcarg.
2012-10-01 09:23:39 +02:00
Ronny Pfannschmidt
bee7543716
move Item.applymarker to Node, and defer to it from Funcargrequest.applymarker
2012-09-30 22:17:33 +02:00
holger krekel
dbe66f468a
ensure proper calling of finalizers in case of parametrization on classes
2012-09-26 12:24:04 +02:00
holger krekel
a18fd61a20
back out accidental changes introduced by last patch
2012-09-25 15:13:58 +02:00
holger krekel
a1c3d60747
add an xfail-ed test for a potential future "enabled" parameter to setup functions
2012-09-25 15:04:30 +02:00
holger krekel
cd1ead4f7b
- make request.funcargnames carry the closure of all used funcargs
...
- make metafunc.funcargnames carry the closure of used funcargs
2012-09-24 17:04:34 +02:00
Ronny Pfannschmidt
9568ff3b23
backout, the _memoizedcall change worked only due to a local effect
2012-09-24 11:36:24 +02:00
Ronny Pfannschmidt
6e5f491a42
get rid of _memoizedcall - we dont really need it anymore
2012-09-24 11:26:38 +02:00
holger krekel
7768972ec5
make sure setups are called ahead of the funcarg factories of the test function
2012-09-24 10:36:22 +02:00
holger krekel
738f14a48a
improve the parametrization scenario example to sort by id, rather than by file-order, see also: http://stackoverflow.com/questions/12521924/pytest-running-scenarios-in-the-correct-order-in-the-class
2012-09-21 09:39:54 +02:00
holger krekel
6cb3281ddd
allow factory/setup-markers on classes, using their respective __init__ methods which can use the funcarg mechanism
2012-09-18 14:00:47 +02:00
holger krekel
a5e7e441d3
fix bug introduced with last checkin
2012-09-18 13:46:24 +02:00
holger krekel
a7c6688bd6
implement full @pytest.setup function unittest.TestCase interaction
2012-09-18 10:54:12 +02:00
holger krekel
d9c24552fc
remove distinction of new versus old funcarg factories
2012-09-18 10:53:42 +02:00
holger krekel
631d311e89
- add request.node which maps to the collection node as specified by the scope.
...
- remove request.markers which is now available via request.node.markers
2012-09-17 20:43:37 +02:00
holger krekel
a94bb0a8bb
introduce a new "markers" attribute to nodes and the request object. It is
...
a dynamic class making holdin
2012-09-17 17:32:23 +02:00
holger krekel
646c2c6001
drops special testcontext object in favour of "old" request object, simplifying communication and code for the 2.2-2.3 transition. also modify docs and examples.
2012-09-17 16:36:10 +02:00
holger krekel
084c617b67
modify detection of factories located in plugins, allowing pytest's own test functions to access plugin defined funcargs even if they use internal machinery instead of a full test run
2012-09-12 12:51:45 +02:00
Benjamin Peterson
7f36649763
remove usage of exception module, which is gone in py3.3
2012-08-28 16:35:06 -04:00
Ronny Pfannschmidt
e876ad9abd
fix issue 179 - propperly show the dependency chain of factories on setup failure
2012-08-22 21:43:42 +02:00
Ronny Pfannschmidt
45693c2847
exchange the rawcode factory marker check with a more robust and specific instance check as advised by holger
2012-08-19 14:57:07 +02:00
Ronny Pfannschmidt
0e8cd9297a
fix issue 176: raises(AssertionError) now catches builtin AssertionError as well
2012-08-19 13:45:26 +02:00
Ronny Pfannschmidt
0cca20bef9
ignore magic callables with no sane code in factory/setup discovery
2012-08-19 12:36:49 +02:00
holger krekel
627e068516
fix issue172 so that @pytest.setup marked setup_module/function... functions
...
are not called twice. Also fix ordering to that broader scoped setup
functions are executed first.
2012-08-13 13:37:14 +02:00