holger krekel
37a2898f18
reintroduce --junit - i think it is actually useful
...
--HG--
branch : trunk
2010-07-07 14:43:31 +02:00
holger krekel
320835d43f
split out pytest-xdist related reporting to the plugin
...
--HG--
branch : trunk
2010-07-07 12:41:15 +02:00
holger krekel
2664230fad
fix test for python2.7
...
--HG--
branch : trunk
2010-07-06 13:29:32 +02:00
holger krekel
b28c439494
some minor compatibility issues wrt to the just released python2.7
...
--HG--
branch : trunk
2010-07-04 22:13:12 +02:00
holger krekel
f9c5b00ffa
refine and extend custom error reporting particularly for collection-related errors
...
--HG--
branch : trunk
2010-07-04 17:06:50 +02:00
holger krekel
4a489af0ff
remove the --junitxmlprefix feature - it's kind of YAGNI i guess -
...
i introduced it after 1.3.1 but don't need it anymore and thus
it's not going to be there for 1.3.2.
--HG--
branch : trunk
2010-07-03 14:44:47 +02:00
holger krekel
5f9876d54e
apply patch from Jakub wrt fixing resultlog/xdist combo
...
--HG--
branch : trunk
2010-07-02 13:01:21 +02:00
holger krekel
f554fa03ae
make initial conftest finding ignore "--" arguments
...
--HG--
branch : trunk
2010-07-01 19:27:40 +02:00
holger krekel
b8db15a94f
refine bestrelpath to return "." for X.bestrelpath(X) and refine its docstring
...
--HG--
branch : trunk
2010-06-28 16:32:43 +02:00
holger krekel
f856db29dc
refine py.process.cmdexec handling wrt unicode on all python versions
...
--HG--
branch : trunk
2010-06-25 10:30:15 +02:00
Benjamin Peterson
4d75c703a0
correct expected message
...
--HG--
branch : trunk
2010-06-18 22:55:06 -05:00
holger krekel
149f9e1042
refine reporting with --pdb some more
...
--HG--
branch : trunk
2010-06-17 12:53:29 +02:00
holger krekel
3f1efe1b57
fix --pdb to not drop interactive on xfailed tests
...
--HG--
branch : trunk
2010-06-16 12:35:08 +02:00
Benjamin Peterson
2995d65720
fix assertion interpretation when the operator is **
...
--HG--
branch : trunk
2010-06-10 13:50:07 -05:00
Benjamin Peterson
610cde6f85
Interpret assignments while examining asserts corrects
...
fixes #105
--HG--
branch : trunk
2010-06-09 14:53:11 -05:00
holger krekel
bc6ead1a3c
introduce a new --junitprefix option to influence xml reporting.
...
also internally avoid some redundant code.
--HG--
branch : trunk
2010-06-09 16:18:47 +02:00
holger krekel
0c04577f9f
fix issue104 properly xml-escape names in junitxml files
...
--HG--
branch : trunk
2010-06-09 15:27:45 +02:00
holger krekel
523704f890
make py.test.raises as-VAR be an ExceptionInfo object
...
but only initialize it after the block is finished.
--HG--
branch : trunk
2010-06-09 14:45:41 +02:00
holger krekel
6951da7da0
merge Ronny's changes, add some documentation and changelog entries
...
--HG--
branch : trunk
2010-06-09 14:26:08 +02:00
Ronny Pfannschmidt
d1c8209875
support using py.test.raises in context manager style
...
--HG--
branch : trunk
2010-06-09 10:50:00 +02:00
holger krekel
64388832d9
introduce a new request.applymarker() function and refactor
...
internally to allow for dynamically adding keywords to test
items.
--HG--
branch : trunk
2010-06-08 02:34:51 +02:00
holger krekel
804dcd3521
some adjustments to make py.test --basetemp=XYZ work where
...
XYZ is a subdir the checkout which contains a conftest.py
--HG--
branch : trunk
2010-06-07 21:02:26 +02:00
holger krekel
c1d0fc9aaf
add ignore_errors to local.remove()
...
--HG--
branch : trunk
2010-06-07 20:48:36 +02:00
holger krekel
10b8de060a
fix py.code.compile to generate unique filenames
...
--HG--
branch : trunk
2010-06-06 19:08:22 +02:00
holger krekel
10baa7f8af
fix python3 failure by making a relative import work
...
--HG--
branch : trunk
2010-06-05 16:10:17 +02:00
holger krekel
c56f4f9444
don't depend on (and don't actually use anymore) testing/__init__.py
...
--HG--
branch : trunk
2010-06-04 00:39:58 +02:00
Ronny Pfannschmidt
f8404be1b2
add a rootdir param to py.path.local.mkdtemp
...
--HG--
branch : trunk
2010-06-03 11:14:32 +02:00
Ronny Pfannschmidt
a07e494554
add kwarg support to py.errpr.checked_call
...
--HG--
branch : trunk
2010-06-03 10:21:48 +02:00
holger krekel
75d80ca183
fix pyimport() bug on directories
...
--HG--
branch : trunk
2010-05-31 17:06:46 +02:00
holger krekel
b66b5e2715
fix issue 57 - make --looponfail work with xpassing tests
...
--HG--
branch : trunk
2010-05-26 18:55:50 +02:00
holger krekel
c953c7d313
fix issue102 by introducing a --maxfailures=NUM option
...
also print an informative line about "stopped/interrupted" test runs
near the end.
--HG--
branch : trunk
2010-05-25 16:52:09 +02:00
holger krekel
fa074da5a9
when --runxfail is supplied also show tracebacks when running a test that
...
calls py.test.xfail
--HG--
branch : trunk
2010-05-22 17:08:49 +02:00
holger krekel
29a5b7452e
* improve and test --tb=short reporting
...
* show --tb=short tracebacks for importing test modules
--HG--
branch : trunk
2010-05-22 16:18:24 +02:00
holger krekel
93712a3ce6
terser reporting header
...
--HG--
branch : trunk
2010-05-22 13:59:01 +02:00
holger krekel
4f7ef0b63f
fix issue89 - allow py.test.mark decorators to be used with classes
...
(if you are using >=python2.6)
also allow to have multiple markers applied at class level
and test and fix a bug with chained skip/xfail decorators:
if any of the conditions is true a test will be skipped/xfailed
with a explanation which condition evaluated to true.
--HG--
branch : trunk
2010-05-21 18:11:47 +02:00
holger krekel
578cba20d4
fix issue94 make reporting more robust against bogus source code
...
(and internally be more careful when presenting unexpected byte sequences)
also make py.code.Source accept a list of lines directly.
--HG--
branch : trunk
2010-05-21 16:42:46 +02:00
holger krekel
93f91c9607
unify handling of reportcharacters across resultlog/junitxml plugins
...
--HG--
branch : trunk
2010-05-20 14:35:13 +02:00
holger krekel
925f75088d
fix issue91 introduce new py.test.xfail(reason) helper
...
to imperatively mark a test as expected to fail. Can
be used from within setup and test functions. This is
useful especially for parametrized tests when certain
configurations are expected-to-fail. In this case the
declarative approach with the @py.test.mark.xfail cannot
be used as it would mark all configurations as xfail.
--HG--
branch : trunk
2010-05-20 13:29:51 +02:00
holger krekel
eac0345689
fix wrong test invocation
...
--HG--
branch : trunk
2010-05-19 17:05:13 +02:00
holger krekel
20424a9c76
fix and test "-rP" option to show xpass-test ids
...
--HG--
branch : trunk
2010-05-19 16:52:03 +02:00
holger krekel
2229d2d947
revert 1735 - fix issue95 differently: just shift the offending zlib
...
import (and others) to happen when they are actually needed
--HG--
branch : trunk
2010-05-19 16:42:22 +02:00
holger krekel
c3bd29b490
fix issue95 - treat a failing pytest_genscript import
...
as non-critical, give a hint.
--HG--
branch : trunk
2010-05-19 16:22:23 +02:00
holger krekel
cf255cd643
some special handling of stdin capturing, unification, un-xfail the win32 test
...
--HG--
branch : trunk
2010-05-18 12:12:34 -07:00
holger krekel
10296faff1
for now don't test close(0) on windows - it hangs there
...
--HG--
branch : trunk
2010-05-18 11:43:22 -07:00
holger krekel
9f5e6f9761
simplify and unify FDCapture API and usage:
...
* FDCapture now takes care through the 'patchsys' option to
also set sys.stdin/out/err - setfiles/unsetfiles methods removed -
i doubt anybody uses this outside of py.test's own old usage.
* stdin also goes through FDCapture now.
--HG--
branch : trunk
2010-05-18 20:03:44 +02:00
holger krekel
da097c9d67
deal gracefully with invalid file descriptors - don't capture the particular stream
...
--HG--
branch : trunk
2010-05-18 16:52:56 +02:00
holger krekel
4f5d7948f7
- try to fix the nightly failures by refining internal capturing mechanism
...
and adding tests, including a "lsof" test for making sure the number of
open file descriptors does not increase.
- also move a py.io related logging test to testing/io
--HG--
branch : trunk
2010-05-18 16:01:58 +02:00
holger krekel
1a97c59439
fix test to account for earlier capfd skipping (on jython)
...
--HG--
branch : trunk
2010-05-18 09:54:04 +02:00
holger krekel
e71685736e
fix issue96 - make capturing more resilient against KeyboardInterrupt
...
--HG--
branch : trunk
2010-05-17 19:00:39 +02:00
holger krekel
f97e082543
fix test to work on jython and cpy
...
--HG--
branch : trunk
2010-05-14 15:25:24 +02:00
holger krekel
91880ffc19
adding three x-failing tests for issue88, issue93 and related issues
...
--HG--
branch : trunk
2010-05-14 12:02:43 +02:00
holger krekel
169d8d1e54
fix test to account for jython python file ending
...
--HG--
branch : trunk
2010-05-12 14:12:07 +02:00
holger krekel
379390a8aa
remove code.new() function and store lines directly into linecache.cache instead.
...
This avoids the need for custom code objects, improving compatibility for jython
and pypy-c.
--HG--
branch : trunk
2010-05-11 22:54:04 +02:00
holger krekel
8ba2a98e11
allow to run py.test.cmdline.main() multiple times.
...
--HG--
branch : trunk
2010-05-11 19:56:22 +02:00
holger krekel
ee036223ce
deprecate --report option in favour of a new shorter and easier to remember -r option: this takes a string argument consisting of any combination of 'xsfX'
...
Those letters basically correspond to the letters you see during terminal reporting.
--HG--
branch : trunk
2010-05-05 19:50:59 +02:00
holger krekel
c933ada7fb
new --runxfail option to ignore xfail markers on functions
...
--HG--
branch : trunk
2010-05-04 13:02:27 +02:00
holger krekel
28150c7486
add unit-tests for xfail and refine xfail handling and reporting
...
--HG--
branch : trunk
2010-05-04 12:37:56 +02:00
holger krekel
dd7fd97810
add a terminalreporter.testid method
...
--HG--
branch : trunk
2010-05-04 12:37:52 +02:00
holger krekel
1a8b2838fa
add new parameters:
...
xfail(run=False) will not run expected-to-fail tests
xfail(reason=True) will report the specified reason
--HG--
branch : trunk
2010-05-02 22:13:16 +02:00
holger krekel
82d4aae571
some internal fixes regarding the new required hook-finding prefix
...
--HG--
branch : trunk
2010-05-02 17:10:38 +02:00
holger krekel
fd473d4002
refine and test new hook registration, now it is called "pytest_addhooks"
...
similar to pytest_addoption and raises on bogus input.
--HG--
branch : trunk
2010-05-02 16:36:53 +02:00
holger krekel
45e10f4c48
rename pytest_ignore_collect_path to pytest_ignore_collect before release
...
--HG--
branch : trunk
2010-05-02 15:24:02 +02:00
Ronny Pfannschmidt
b3ce06bbf9
add close method to DontReadFromInput so multiprocessing can close it
...
--HG--
branch : trunk
2010-04-29 19:46:43 +02:00
holger krekel
962d0fe2be
introduce new pytest_pycollect_makemodule(path, parent) hook for
...
allowing customization of the Module collection object for a matching test module.
--HG--
branch : trunk
2010-04-29 16:53:29 +02:00
holger krekel
811408959f
introduce a new pytest_ignore_collect_path(path, config) hook -
...
returning a true value will prevent considering the path for collection
The hook is called for both files and directory paths.
--HG--
branch : trunk
2010-04-29 16:20:55 +02:00
holger krekel
5ece3858e4
introduce new py.io.saferepr for printing the 'repr' of an object safely
...
and without consuming too much space
--HG--
branch : trunk
2010-04-29 14:17:07 +02:00
holger krekel
1c1623885f
fix a py3k related skip - py.io.TextIO on py3k should probably
...
not allow to write bytes to it.
--HG--
branch : trunk
2010-04-29 10:50:20 +02:00
holger krekel
5dc66bb4ca
make py.io.ansi_print and py.io.get_terminal_width() directly available.
...
--HG--
branch : trunk
2010-04-29 10:49:50 +02:00
holger krekel
030548bc73
expose py.code._reinterpret functions so that pypy and internal
...
uses don't need to go through internal implementation imports
--HG--
branch : trunk
2010-04-29 01:20:56 +02:00
Benjamin Peterson
d93016d85f
remove the unused return value of fnmatch_lines
...
--HG--
branch : trunk
2010-04-28 17:12:38 -05:00
holger krekel
22a50a5b88
* various jython related fixes.
...
* more care for print-errors including unicode-encoding related errors.
--HG--
branch : trunk
2010-04-28 15:24:38 +02:00
holger krekel
78d33a2f28
* rather expose internal exceptions under py.test.ACTION.Exception
...
with ACTION being skip, fail, exit, raises.
* move and refine test_outcome.py tests into runner tests
--HG--
branch : trunk
2010-04-28 08:42:56 +02:00
holger krekel
d5e463605e
* properly expose and document runtest-protocol related Exceptions
...
and move all definitions to the runner plugin for now.
* also move EXIT codes to session.py, obsoleting outcome.py alltogether.
--HG--
branch : trunk
2010-04-27 21:13:09 +02:00
holger krekel
ed7a2d2da3
refine/fix isimportable-logic and ensure that 'tmpdir' has a python-importable name
...
--HG--
branch : trunk
2010-04-27 16:10:25 +02:00
holger krekel
8131f5bdc0
(fixes issue83) don't try to import conftest from an invalid package path, refine path.pyimport() logic
...
--HG--
branch : trunk
2010-04-27 15:49:13 +02:00
holger krekel
c8d78177b9
(fixes issue85) correctly write non-ascii test output to junitxml files, refine some internal methods for it
...
--HG--
branch : trunk
2010-04-27 15:15:43 +02:00
holger krekel
f6a04b92d2
fix unicode issues (port of pypy/py repo changeset r72526 by Armin)
...
--HG--
branch : trunk
2010-04-27 12:23:13 +02:00
Benjamin Peterson
7629b8fda7
make test source syntax valid
...
--HG--
branch : trunk
2010-04-23 20:49:00 -05:00
Benjamin Peterson
d1b45ef3d4
add a helper to get a function's code
...
--HG--
branch : trunk
2010-04-23 20:39:40 -05:00
Benjamin Peterson
f16d54f9a8
merge main
...
--HG--
branch : trunk
2010-04-23 20:28:32 -05:00
Benjamin Peterson
d909aead4e
provide encoding to dupfile() for py3
...
--HG--
branch : trunk
2010-04-23 20:27:34 -05:00
holger krekel
0b24a70279
this should test and fix the same issue that was committed in
...
the pypy svn-repo as r72534
--HG--
branch : trunk
2010-04-23 19:28:41 +02:00
holger krekel
b3a05b545e
another couple of checks on jython, still some problems
...
--HG--
branch : trunk
2010-04-23 19:05:22 +02:00
holger krekel
221ac3e466
a couple of more mostly jython-related fixes
...
--HG--
branch : trunk
2010-04-23 13:29:28 +02:00
hpk@tannit.openend.se
4337702a6a
fixes for testrun on jython
...
--HG--
branch : trunk
2010-04-23 12:05:29 +02:00
holger krekel
85d35f7418
introduce an experimental approach for allowing dynamic addition of hooks from plugin. Plugins may register new hooks by implementing the new
...
pytest_registerhooks(pluginmanager)
and call
pluginmanager.registerhooks(module)
with the referenced 'module' object containing the hooks.
The new pytest_registerhooks is called after pytest_addoption
and before pytest_configure.
--HG--
branch : trunk
2010-04-22 11:57:57 +02:00
holger krekel
cbb4c0dadc
use taskkill cmdline for jython/win32 but skip test on jython because it does not return a subprocess PID
...
--HG--
branch : trunk
2010-04-21 06:23:19 -07:00
holger krekel
c10f0c2c36
merge in fixes
...
--HG--
branch : trunk
2010-04-21 14:49:38 +02:00
holger krekel
061f4c1515
robustify check
...
--HG--
branch : trunk
2010-04-21 14:46:41 +02:00
holger krekel
fe34a8a15a
a couple of more fixes/refinements for getting py.test to run better on jython/win32
...
--HG--
branch : trunk
2010-04-21 03:50:03 -07:00
holger krekel
5715bbd6f5
refining the win32 checks some further
...
--HG--
branch : trunk
2010-04-20 20:08:52 +02:00
holger krekel
536252cb2e
refine win32 checks to also work on top of jython/win32
...
--HG--
branch : trunk
2010-04-20 10:45:41 -07:00
holger krekel
c7326f1949
fix a pdb problem when dropping to a "raises" related failure
...
--HG--
branch : trunk
2010-02-08 14:17:01 +01:00
holger krekel
d163d92b33
actually look into all non-dot subdirs for conftest.py files - recursive walk would be too heavy for large source trees but first-level subdirs are fine IMO. Note that prior to py.test 1.0 doing this "look-ahead" was not easily doable because it was hard to avoid global state in conftest.py, this is not true anymore - so i feel ok telling people to cleanup their conftest files if they get problems (you can imagine people doing all kinds of things at global conftest.py module scope, can't you?)
...
--HG--
branch : trunk
2010-02-06 22:37:04 +01:00
holger krekel
105ed6dcaa
fix this test
...
--HG--
branch : trunk
2010-02-05 22:57:46 +01:00
holger krekel
a3d15b2c60
refined usage and options for "py.cleanup":
...
py.cleanup # remove "*.pyc" and "*$py.class" (jython) files
py.cleanup -e .swp -e .cache # also remove files with these extensions
py.cleanup -s # remove "build" and "dist" directory next to setup.py files
py.cleanup -d # also remove empty directories
py.cleanup -a # synonym for "-s -d -e 'pip-log.txt'"
py.cleanup -n # dry run, only show what would be removed
--HG--
branch : trunk
2010-02-05 22:50:41 +01:00
holger krekel
3234e6e978
add a --funcargs option showing available funcargs
...
--HG--
branch : trunk
2010-02-04 23:45:07 +01:00
holger krekel
02c129df7a
fix a test
...
--HG--
branch : trunk
2010-02-04 16:13:30 +01:00
holger krekel
f95877a09b
show a short and nice traceback for funcarg lookup errors
...
--HG--
branch : trunk
2010-02-04 16:01:02 +01:00
holger krekel
7bd60b5abb
check and load test*/conftest.py early from anchors -
...
this makes it a bit more convenient to have command line options
available from a root directory of a project that does not
directly contain a conftest.py
--HG--
branch : trunk
2010-02-04 12:26:53 +01:00
holger krekel
9d64d7e27a
refine setup ordering some more - test and avoid a problem with funcarg setups where the
...
surrounding setup_module would fail, but the funcarg setup still be called (which might
assume that setup_module has been called so would raise a confusing error)
--HG--
branch : trunk
2010-01-28 15:36:27 +01:00
holger krekel
a2af204687
again addresses issue78 : we now call teardown also if setup raised a Skipped exception.
...
I also made sure, setup_module/class will only be called once - before they'd be call again
and again if they raise an error or a skip - for each test in their scope.
--HG--
branch : trunk
2010-01-28 14:20:58 +01:00
holger krekel
4d5ea7be43
install pygments for tests
...
--HG--
branch : trunk
2010-01-27 13:02:02 +01:00
holger krekel
98608611af
closes #67 new super-short traceback-printing option: "--tb=line" will print a single line for each failing (python) test indicating its filename, lineno and the failure value
...
--HG--
branch : trunk
2010-01-27 12:52:19 +01:00
holger krekel
b18ab6e03b
fix issue78 - now python-level teardown functions are now called even if the setup failed.
...
Important detail: if the setup raises a Skipped exception, teardown will not be called. This helps
to avoid breaking setup_module/class that performs a skip - it would otherwise internally
be considered as a "successful" setup in order to have teardown called later. I guess
it also makes sense to treat Skip specially because it is unlikely a teardown should be
called if a Skip was raised on setup.
In any case, failing setups and teardowns will be reported separately.
--HG--
branch : trunk
2010-01-27 12:09:30 +01:00
holger krekel
f7c562e492
better default for bogus terminal getdimensions() call, fixes issue63
...
--HG--
branch : trunk
2010-01-19 10:34:41 +01:00
holger krekel
d3c0ff3a1f
make sure we get an absolute path when writing the genscript file
...
--HG--
branch : trunk
2010-01-18 16:48:20 +01:00
holger krekel
55fcc5a219
always directly use basename for tracebacks, independently from code.path
...
fixes issue77 although i guess it was already fixed before.
--HG--
branch : trunk
2010-01-18 12:12:18 +01:00
holger krekel
0149771997
refine excludepath handling to treat entries with no path as matching
...
--HG--
branch : trunk
2010-01-18 03:04:20 +01:00
holger krekel
89068d9471
fix python2.4 issue
...
--HG--
branch : trunk
2010-01-18 02:01:16 +01:00
holger krekel
d483f18374
move rsync reporting out
...
--HG--
branch : trunk
2010-01-18 00:41:22 +01:00
holger krekel
95de17b652
refine tests and refine code to deal with new xdist semantics.
...
--HG--
branch : trunk
2010-01-17 23:23:02 +01:00
holger krekel
09671eb6fc
rename logxml plugin to junitxml
...
--HG--
branch : trunk
2010-01-16 23:33:26 +01:00
holger krekel
6f0db1d193
kill unused code
...
--HG--
branch : trunk
2010-01-16 19:41:05 +01:00
holger krekel
76e49b57bf
fix test_importall to not stop on skipped plugins and fix the uncovered failure of genscript: standalone.py template is now safely importable
...
--HG--
branch : trunk
2010-01-15 18:45:06 +01:00
holger krekel
4a568f43fe
get rid of the funccollector node, which nice-ifies names of funcarg-generated tests nodes, also test and fix one anomaly wrt to funcarg setups and instance uniqueness
...
--HG--
branch : trunk
2010-01-15 17:50:02 +01:00
holger krekel
ee2f292efa
remove superflous building of a dict, preserve order for nodes that have identical file:lineno
...
--HG--
branch : trunk
2010-01-15 17:38:09 +01:00
holger krekel
030986dcc4
reduce usage of the global py.test.config which maybe should die or become less global at some point (along with py.test.ensuretemp)
...
--HG--
branch : trunk
2010-01-13 18:04:58 +01:00
holger krekel
9da1ba40ed
move down py/impl/XYZ to py/_XYZ
...
--HG--
branch : trunk
2010-01-13 17:15:54 +01:00
holger krekel
5c27076d32
flatten test directory hierarchy and merge smaller into larger files
...
--HG--
branch : trunk
2010-01-13 16:17:50 +01:00
holger krekel
40f41496d8
remove dist-testing and looponfail code from core. there remain some (pytest_runner particularly) tests that test both plain and dist modes which cannot be easily dis-entangled. food for thought.
...
--HG--
branch : trunk
2010-01-13 16:00:33 +01:00
holger krekel
d4f5073076
remove figleaf which now lives "outside"
...
--HG--
branch : trunk
2010-01-13 00:47:20 +01:00
holger krekel
59f3adb46b
fix reqs2 to point to released execnet
...
--HG--
branch : trunk
2010-01-12 21:57:26 +01:00
holger krekel
d53572a710
introduce a new pytest_report_header(hook) hook to add additional test-run relevant information to the header of a test report.
...
--HG--
branch : trunk
2010-01-12 21:43:25 +01:00
holger krekel
a9fe84d9b9
adding a second requirements file which uses execnet-1.0.2
...
--HG--
branch : trunk
2010-01-12 16:15:07 +01:00
holger krekel
1b0d6296dd
test and fix looponfailing wrt to a bug introduced with the cmdline/session startup cleanup.
...
--HG--
branch : trunk
2010-01-12 16:08:48 +01:00
holger krekel
8d9e0712be
refine classname normalization for junit-xml
...
--HG--
branch : trunk
2010-01-12 01:35:50 +01:00
holger krekel
3296939eda
fix sessionstart/sessionfinish handling at the slave side, set "session.nodeid" to id of the slave and make sure "final" teardown failures are reported nicely. fixes issue66.
...
--HG--
branch : trunk
2010-01-11 17:09:07 +01:00
holger krekel
ba1451330e
refine rsyncing and internal dir/transferal handling: don't transfer roots in a popen- no-chdir situation and only use one py._pydir everywhere
...
--HG--
branch : trunk
2010-01-11 14:30:50 +01:00
holger krekel
352e305431
fix and test bug: dist-testing now works again without execnet/pylib installed remotely. fixes issue65.
...
--HG--
branch : trunk
2010-01-10 23:52:23 +01:00
holger krekel
99301a0dae
(experimental) allow cmdline arguments to deep-point to a test, also remove virtually redundant session.getinitialitems() calls
...
--HG--
branch : trunk
2010-01-10 21:29:36 +01:00
holger krekel
3029aa6558
fix some "import py" test issues, and prevent "genscript" script from having dist-options
...
--HG--
branch : trunk
2010-01-10 20:45:37 +01:00
holger krekel
3239bd250b
avoid dependency on directory ordering
...
--HG--
branch : trunk
2010-01-03 18:19:52 +01:00
holger krekel
9fcd108091
relax a test to pass on jython and fix install docs to include genscript standalone usage.
...
--HG--
branch : trunk
2010-01-03 14:19:31 +01:00
holger krekel
27aa14c20f
fix python3 issues, add missing plugin docs
...
--HG--
branch : trunk
2010-01-03 13:27:06 +01:00
holger krekel
1b34492108
vastly simplify and cleanup collection initialization by internally
...
introducing a RootCollector. Note that the internal node
methods _fromtrail and _totrail are shifted to the still internal
config._rootcol.fromtrail/totrail
--HG--
branch : trunk
2010-01-03 01:02:44 +01:00
holger krekel
eebeb1b257
enable doctest plugin by default, add a --doctest-glob option and some documentation, regen plugin docs.
...
--HG--
branch : trunk
2010-01-02 23:30:46 +01:00
holger krekel
56a936993c
enhance figleaf setup, enabled by default now (requires --figleaf). Generalize internal ability to show "hints" at the end of "-h".
...
--HG--
branch : trunk
2010-01-02 22:48:53 +01:00
holger krekel
1b6391d814
higher timeout to accomodate slower execution environments
...
--HG--
branch : trunk
2010-01-02 18:32:11 +01:00
holger krekel
f3e62e38aa
streamlined plugin loading: order is now setuptools, ENV, commandline
...
and setuptools entry point names are turned to canonical namees ("pytest_*")
--HG--
branch : trunk
2010-01-02 17:17:13 +01:00
holger krekel
a20e60aeae
slightly refine invocation of py.test: use the py lib that we got invoked with,
...
does away with the need to not-chdir some tests
--HG--
branch : trunk
2010-01-02 11:57:42 +01:00
holger krekel
e0dd171e45
fix standalone script generation on windows, make tests not do a chdir() so that distributed testing discovers the transferred lib
...
--HG--
branch : trunk
2010-01-01 21:54:27 +01:00
holger krekel
47df1e16b6
fix some failures introduced by the last commit, document new "pytestconfig" funcarg
...
--HG--
branch : trunk
2010-01-01 21:03:33 +01:00
holger krekel
2752168a58
introduce --confcutdir option to early-inhibit lookup of conftest files above a certain directory.
...
--HG--
branch : trunk
2009-12-31 15:10:32 +01:00
holger krekel
eb4249322e
fix xml generation for skipped collections of tests
...
--HG--
branch : trunk
2009-12-31 11:50:01 +01:00
holger krekel
587951966f
adding a logxml plugin and a --xml=path option generating a junit-xml style result log. The xml result log can be parsed nicely by hudson.
...
Initial code was based on Ross Lawley's pytest_xmlresult plugin.
--HG--
branch : trunk
2009-12-31 11:25:07 +01:00
holger krekel
fa0c7b18bf
move standalone script to become a plugin offering "--genscript",
...
adjust paths accordingly and add CHANGELOG entry.
--HG--
branch : trunk
2009-12-30 19:10:49 +01:00
holger krekel
a42d9eb9f6
fix some standalone-script running issues:
...
* standalone can run standalone tests
* exception handling is more careful with assuming valid filenames
* bits here and there
--HG--
branch : trunk
2009-12-30 18:11:00 +01:00
holger krekel
f5ea19858c
deprecate direct definition of Directory, Module, ... in conftest.py's,
...
add some pytest collect related tests + some refinements.
--HG--
branch : trunk
2009-12-30 16:18:59 +01:00
holger krekel
d3b20e8d24
refine deprecations, move some over to test_deprecated_api
...
--HG--
branch : trunk
2009-12-30 14:07:20 +01:00
holger krekel
30bbf3b042
fix aimed at passing jstests functional tests: allow to have _fillfuncargs() called even for non-pycollect-object test-items.
...
--HG--
branch : trunk
2009-12-30 14:05:41 +01:00
holger krekel
89f178bf4d
streamline svn test setup a bit, clear caches on setup-restore, hopefully will erase random failures with test_export.
...
--HG--
branch : trunk
2009-12-30 13:05:08 +01:00
holger krekel
4656bc4c97
deprecate use of 'disabled'
...
--HG--
branch : trunk
2009-12-30 12:13:38 +01:00
holger krekel
f02b84d528
update ISSUES some more, introduce duration to RunResult and a failing dist-testing termination test.
...
--HG--
branch : trunk
2009-12-30 11:37:46 +01:00
holger krekel
a15afb5e48
skip tests using 'capfd' funcarg but not having os.dup. cleanup issues and regen plugin docs.
...
--HG--
branch : trunk
2009-12-30 11:16:20 +01:00
holger krekel
ae63605ac0
generalize hook calling from collection nodes but stop short
...
of allowing general hooks in python test modules. It'd be
easily possible (a 1-line change) but considering it i refrained
from it because the collector API is a bit too low level.
pytest_generate_tests and funcarg factories have a limited
directly useful interface and are thus less confusing - those
are taking advantage of hook discovery in python test modules.
--HG--
branch : trunk
2009-12-30 10:42:01 +01:00
holger krekel
631dfe9f13
only consider matching conftest plugins for discovering hooks related to collection nodes.
...
--HG--
branch : trunk
2009-12-30 02:36:58 +01:00
holger krekel
9d01975c78
fix capturing to be more careful during teardown when a setup never happened (due to e.g. an error in user-provided runtest_setup code)
...
--HG--
branch : trunk
2009-12-30 00:11:27 +01:00
holger krekel
77b640d1b7
streamline some tests and overall reduce py.test.ensuretemp usage, note down issue about deprecation .
...
--HG--
branch : trunk
2009-12-29 22:26:03 +01:00
holger krekel
9be7d78fb1
some debug info aimed at helping to find out about a randomly failing test_export
...
test setup issue
--HG--
branch : trunk
2009-12-29 21:18:17 +01:00
holger krekel
c348cec481
make looponfailing a bit more robust against relative imports and changed directories - needs more work, probably.
...
--HG--
branch : trunk
2009-12-29 18:41:24 +01:00
holger krekel
79af98fc29
some testing hygene: move _reparse testing functionality to actual test support code, un-xfail a now passing test, reduce direct py.test.config usage aiming for deprecation.
...
--HG--
branch : trunk
2009-12-29 18:02:54 +01:00
holger krekel
db21cac694
cleanup py.test.* namespace, docstrings for improved pydoc and interactive usage.
...
use new apipkg __onfirstaccess__ feature to initialize the py.test namespace with the default plugins. This, besides other good implications, means that you can now type: pydoc py.test or help(py.test)
--HG--
branch : trunk
2009-12-29 16:29:48 +01:00
holger krekel
71e332c9c4
robustiy some randomly failing tests
...
--HG--
branch : trunk
2009-12-29 12:36:45 +01:00
holger krekel
425e4849f3
remove/reduce internal global state: py._com.registry is now fully contained and always instantiated from the py.test PluginManager class.
...
--HG--
branch : trunk
2009-12-29 12:36:17 +01:00
holger krekel
8737254a74
simplify pluginmanager, move plugin validation code to plugin, remove unused code
...
--HG--
branch : trunk
2009-12-29 10:59:01 +01:00
holger krekel
0361b73d75
remove defaultconfest.py and make PluginManager directly do early initialization of default plugins.
...
--HG--
branch : trunk
2009-12-29 10:26:51 +01:00
holger krekel
27bcd2dbda
always import defaultconftest by python import path. strike some redundant code.
...
--HG--
branch : trunk
2009-12-28 17:49:46 +01:00
holger krekel
abb05d9384
fixing windows32 svn-testing issues
...
--HG--
branch : trunk
2009-12-25 01:47:43 -08:00
holger krekel
516cee2a94
windows fixes and print funcargs for keyboardinterrupt traces
...
--HG--
branch : trunk
2009-12-25 09:53:36 +01:00
holger krekel
88e61467f1
fixing and cleaning up some tests
...
--HG--
branch : trunk
2009-12-25 00:24:58 +01:00
holger krekel
6d46efa87a
introduce --ignore option to ignore paths during collection
...
--HG--
branch : trunk
2009-12-24 22:23:45 +01:00
holger krekel
7864f6a4fd
rather use newest execnet always
...
--HG--
branch : trunk
2009-12-24 20:35:18 +01:00
holger krekel
51a684f488
adding pip requirements file
...
--HG--
branch : trunk
2009-12-24 20:22:19 +01:00
holger krekel
f254b6f7c1
fixes to various tests, related to execnet automatic ID generation and other bits.
...
also lowering the version as "1.1.1post1" for now. 1.1.2 is still a bit off.
--HG--
branch : trunk
2009-12-24 19:43:14 +01:00
Benjamin Peterson
ec96ab5286
2.7's TextIO requires unicode
...
--HG--
branch : trunk
2009-12-06 11:47:41 -06:00
holger krekel
56c1391a16
fix keyword calling
...
--HG--
branch : trunk
2009-11-27 20:32:21 +01:00
holger krekel
9d5b313aad
adjustments and fixes to test run, distribution files. thanks thm.
...
--HG--
branch : trunk
2009-11-24 15:16:58 +01:00
holger krekel
9652be0ac1
don't consider setuptools plugins if it is not installed.
...
--HG--
branch : trunk
2009-11-24 10:49:04 +01:00
holger krekel
ed03eef81b
introduce plugin discovery through setuptools "pytest11" entrypoints
...
and refine execnet dependency handling. Prepare 1.1 release
--HG--
branch : trunk
2009-11-23 17:20:36 +01:00
holger krekel
bcede77e45
fix a flaky test
...
--HG--
branch : trunk
2009-11-20 10:04:40 +01:00
holger krekel
452ce50d7d
fix compatibility issue with svnwc.update and put CHANGELOG to rootlevel
...
--HG--
branch : trunk
2009-11-20 00:12:06 +01:00
holger krekel
6d9e3ac686
adapt to new execnet.Group code (since execnet-1.0.0b4), strike superflous code
...
--HG--
branch : trunk
2009-11-19 23:13:29 +01:00
holger krekel
3adf6687c9
reintroduce py.test.cmdline.main() (alias for py.cmdline.pytest())
...
resolves issue #61
--HG--
branch : trunk
2009-11-19 23:13:28 +01:00
holger krekel
1a86d09da4
a few internal test related fixes as to run on a osx/no-execnet situation
...
--HG--
branch : trunk
2009-11-12 21:15:59 +01:00
holger krekel
f4ec2d1ecd
improve deprecation, start changelog
...
--HG--
branch : trunk
2009-11-12 13:10:30 +01:00
holger krekel
a4a652af85
fix a bug with svnwc.listdir() not accepting a checker(versioned=...)
...
--HG--
branch : trunk
2009-11-12 13:09:27 +01:00
holger krekel
a5a94c4e8f
largely improve and reshuffle docs, heading strongly towards a 1.1.0
...
--HG--
branch : trunk
2009-11-05 03:18:55 +01:00
holger krekel
b04a04cabd
make py lib a self-contained directory again
...
- move and merge _py/ bits back to py/
- fixes all around
--HG--
branch : trunk
2009-11-04 21:34:07 +01:00
holger krekel
6a82cdb37f
fix jython issue, flexibilize sysexec params
...
--HG--
branch : trunk
2009-10-29 23:46:14 +01:00
holger krekel
30710a9cd6
fix windows32 issues, introduce a simplistic path.samefile for it, fix tests
...
--HG--
branch : trunk
2009-10-29 20:10:05 +01:00
holger krekel
92d482069c
moving py/bin to rootlevel bin/ and fixing tests
...
--HG--
branch : trunk
2009-10-29 16:53:02 +01:00
holger krekel
cc15685015
remove pyrest and _py/rest before first 1.1. release
...
--HG--
branch : trunk
2009-10-29 12:25:47 +01:00
holger krekel
58e1693af0
fix a test-import issue occuring when there is a second 'testing' directory in PYTHONPATH or so.
...
--HG--
branch : trunk
2009-10-28 21:33:26 +01:00
holger krekel
86fc12dd15
resolves issue #59
...
resolves issue #48
Have the path.pyimport() helper raise an EnvironmentError if an
import of a given file returns a module that does not appear to
be coming from the actual path. E.g. for a directory layout like this:
a / test_whatever.py
b / test_whatever.py
calling py.path.local("b/test_whatever.py").pyimport() will
fail if the other globally scoped test_whatever module was
loaded already.
--HG--
branch : trunk
2009-10-28 19:51:20 +01:00
holger krekel
84efdacfc0
enabling assertions with jython, fixing one .format occurence
...
to provide the setting for http://paste.pocoo.org/show/147361/
--HG--
branch : trunk
2009-10-27 21:51:05 +01:00
holger krekel
d2e6cd0523
first round of fixing jython compatibility issues, marking some tests as xfail-on-jython
...
--HG--
branch : trunk
2009-10-27 21:34:11 +01:00
holger krekel
33bd39053f
using apipkg 1.0b2 snapshot version - adjusting/cleaning up some impl-detail accesses
...
--HG--
branch : trunk
2009-10-27 21:31:42 +01:00
holger krekel
cc3404b832
merged ronny's nose-compatibility hacks, i.e. nosestyle
...
setup_module() and setup() functions are supported.
added a few notes to changelog and documentation about it
--HG--
branch : trunk
2009-10-27 16:49:38 +01:00
holger krekel
2b1505c0f3
fix "py.cleanup -d" - add test and check to only remove empty dirs (!)
...
--HG--
branch : trunk
2009-10-27 16:03:14 +01:00
holger krekel
09ba42a1bb
fix bug: a false xfail expression would erranonously report XPASS on failures
...
--HG--
branch : trunk
2009-10-27 12:02:40 +01:00
holger krekel
a161a865c8
remove deprecated parser.addgroup usage in favour of getgroup
...
--HG--
branch : trunk
2009-10-27 10:03:11 +01:00
Ronny Pfannschmidt
6f80c985fb
support nose style argument-free setup/teardown functions
...
--HG--
branch : trunk
2009-10-23 16:17:06 +02:00
Ronny Pfannschmidt
8e5efa7d6d
better tests for the nose plugin, support module level teardown
...
--HG--
branch : trunk
2009-10-23 15:27:59 +02:00
Ronny Pfannschmidt
82caacd633
nosetest plugin now supports fallback to module level setup
...
--HG--
branch : trunk
2009-10-23 15:11:53 +02:00
holger krekel
6c2b1c4363
refine naming, API and docs for py.test.mark mechanism - now contained in pytest_mark plugin
...
--HG--
branch : trunk
2009-10-22 20:57:21 +02:00
holger krekel
861f34fe90
use new marking idioms, simplify generalized skipping implementation
...
--HG--
branch : trunk
2009-10-22 18:37:24 +02:00
holger krekel
4a76c096da
extend and refine test marking
...
- allow to mark tests via a "pytestmark" name at class/module level.
- make combined positional args of marker calls available via an _args argument
--HG--
branch : trunk
2009-10-22 15:21:58 +02:00
holger krekel
9ac4faf3af
don't visit '_' attributes on python objects for calling hooks
...
--HG--
branch : trunk
2009-10-21 18:44:12 +02:00
holger krekel
9910db2ca6
player nicer for missing parent Module objects for a collected function (bug triggered by oejskit)
...
--HG--
branch : trunk
2009-10-20 16:38:12 +02:00
holger krekel
80f3e33e41
deprecate addgroup / allow ordering of option groups
...
--HG--
branch : trunk
2009-10-17 17:43:33 +02:00
holger krekel
3795b08e95
add --report cmdline option, shift refined xfailed and skipped reporting to skipping plugin
...
--HG--
branch : trunk
2009-10-17 17:42:40 +02:00
holger krekel
eab7e039eb
streamline pluginmanager api and test/beautify printing of plugins with --trace
...
--HG--
branch : trunk
2009-10-17 12:56:59 +02:00
holger krekel
d8b9b5f1c8
- make importorskip static at py.test.importorskip because it's
...
used for conditional plugin loading
- fix case where xfail is defined at module/class level
- fixes and improvements to docs, correct links to plugins
- use new skip facilities here and there
--HG--
branch : trunk
2009-10-15 20:10:06 +02:00
holger krekel
3ca770b420
generalize skipping
...
- rename pytest_xfail to pytest_skip
- dynamic "skipif" and "xfail" decorators
- move most skipping code to the plugin
also coming with this commit:
- extend mark keyword to accept positional args + docs
- fix a few documentation related issues
- leave version as "trunk" for now
--HG--
branch : trunk
2009-10-15 16:18:57 +02:00
holger krekel
5e21e39125
resolve issue 54
...
triggered by @haypo's issue and patch the
process.cmdexec function now always uses
subprocess under the hood. Also fixed
some 3k related encoding issues.
--HG--
branch : trunk
2009-10-14 23:54:01 +02:00
holger krekel
1bdc0896ca
introduce "-d" to py.cleanup
...
--HG--
branch : trunk
2009-10-12 11:24:41 +02:00
holger krekel
90f39426b4
fix some tests after the py/_py split
...
--HG--
branch : trunk
2009-10-09 15:26:46 +02:00
holger krekel
f10bfbb7e5
resolves #59 - robustify unittest collection
...
--HG--
branch : trunk
2009-10-09 15:09:26 +02:00
holger krekel
6e11f8cd2a
* remove unused py._thread namespace, rewrite the one usage
...
* remove unused py/test/web directory
--HG--
branch : trunk
2009-10-03 19:57:48 +02:00
holger krekel
5791c06bf2
rewrote the initpkg mechanism and moved py lib implementation files to
...
_py/... with py/__init__.py containing pointers into them
The new apipkg is only around 70 lines of code and allows
us to get rid of the infamous "py.__." by regular non-magical
"_py." imports. It is also available as a separately installable
package, see http://bitbucket.org/hpk42/apipkg
--HG--
branch : trunk
2009-10-03 01:47:39 +02:00
holger krekel
1f29529a24
* don't add distributed command line options when 'execnet' is not
...
installed, report a nice message.
* fix tests and code to work with non-existing execnet
* point execnet doc to the new package
--HG--
branch : trunk
2009-10-02 22:29:22 +02:00
holger krekel
ab9f6a75ad
remove py.execnet, substitute py.execnet usages with "execnet" ones.
...
--HG--
branch : trunk
2009-10-02 16:58:57 +02:00
holger krekel
496e3b1138
adding internal repr for debugging
...
adding an example for generating multi-args/multi python tests
--HG--
branch : trunk
2009-09-30 18:36:04 +02:00
holger krekel
aed66120a2
fix typo, add ronny to authors, normalize email addresses
...
--HG--
branch : trunk
2009-09-30 17:59:03 +02:00
holger krekel
5914277f92
internally rename "provider" to "factory" to be consistent
...
with documentation.
--HG--
branch : trunk
2009-09-30 12:59:47 +02:00
holger krekel
98b2300266
fix cached_setup to deal properly for test_functions
...
with multiple args. closes #50
--HG--
branch : trunk
2009-09-30 12:52:40 +02:00
Ronny Pfannschmidt
2986c5dc74
simplify serializer tests
...
* use generate_tests to generate the simple non-string checks
* get rid of the TestSerializer class
--HG--
branch : trunk
2009-09-28 23:43:38 +02:00
Benjamin Peterson
7466516673
the check_sequence name is more specific
...
--HG--
branch : trunk
2009-09-28 15:55:09 -05:00
Ronny Pfannschmidt
2c523cd0d6
enhance the serializer tests
...
* use generate_tests hook to generate the serialize deserialize combinations
* add dump/load funcargs to simplify the tests
--HG--
branch : trunk
2009-09-28 22:46:32 +02:00
Ronny Pfannschmidt
40e91dcd85
add separate test for the serializer bigint fail
...
--HG--
branch : trunk
2009-09-28 22:42:36 +02:00
Benjamin Peterson
3d2975f38e
support floats
...
--HG--
branch : trunk
2009-09-26 18:26:32 -05:00
Benjamin Peterson
4d598370b4
test cross version serialization by launching subprocesses; much cleaner!
...
--HG--
branch : trunk
2009-09-26 12:35:24 -05:00
Benjamin Peterson
1e71a5c392
Add a simple (hopefully) cross-python marshaller
...
Will rewrite the tests soon...
--HG--
branch : trunk
2009-09-22 21:08:40 -05:00
Benjamin Peterson
8af3ede092
allow a path to explicity given for py.lookup
...
--HG--
branch : trunk
2009-09-22 21:04:25 -05:00
holger krekel
6ddea4a1bc
visit() now returns paths in depth-first order. fixes issue #47
...
--HG--
branch : trunk
2009-09-22 19:13:33 +02:00
holger krekel
e3b34c9da3
* allowing arbitrary keys for xspecs but adding some sanity checks to xspec-parsing and makegateway.
...
* fixing a python3 IO issue - we need to retain sys.stdout/stdin
references to keep the underlying byte stream open.
--HG--
branch : trunk
2009-09-22 18:40:20 +02:00
Samuele Pedroni
1b97d06a09
(micke, pedronis)
...
teach the resultlog plugin about the xfail tweaked outcomes
--HG--
branch : trunk
2009-09-17 15:31:35 +02:00
Benjamin Peterson
81062c5e2f
compiling AST to code is new in python 2.6
...
--HG--
branch : trunk
2009-09-11 15:24:43 -05:00
holger krekel
47bad98c07
* various cleanups and detailed doc string for gateway_base module
...
* remove old multi-file-send mechanism/tests now that
only gateway_base is send to the other side.
* adding some (c) notices where i am pretty sure about them.
--HG--
branch : trunk
2009-09-11 16:26:19 +02:00
holger krekel
22c1ad9f7b
fix a bug with funcarg setup and remove XXX comment because "scope=module" now would work but leaving it as session for now.
...
--HG--
branch : trunk
2009-09-09 23:07:42 +02:00
holger krekel
6d84da39e4
some doc about the experiemntal pytest_gwmanage_newgateway hook.
...
and use process-scope for execnet test funcargs because
of weird setup/teardown issues when running distributedly itself.
--HG--
branch : trunk
2009-09-09 20:45:51 +02:00
holger krekel
5df58c619d
* move gateway management code to py/test/dist because it's not clear
...
how generally useful it is.
* provide pytest_dist_makegateway(txspec) hook so that plugins
can add their own interpretation/keywords.
--HG--
branch : trunk
2009-09-09 20:12:03 +02:00
holger krekel
8ea2364039
ups, forgot to add a neccessary file.
...
--HG--
branch : trunk
2009-09-09 15:36:53 +02:00
holger krekel
b70c7a209d
* moving execnet tests to funcarg-style, some cleanup
...
* slight refinement to FAQ license topic
--HG--
branch : trunk
2009-09-08 10:10:36 +02:00
holger krekel
0f29b503ef
monkeypatch, doc, apiwarn, deprecation fixes
...
--HG--
branch : trunk
2009-09-07 17:53:50 +02:00
holger krekel
29d437489d
some fixes to support Jython better
...
--HG--
branch : trunk
2009-09-07 14:59:26 +02:00
holger krekel
c8119d89b6
move test files out of py lib proper
...
* separate all tests from plugins
* simplify implicit inclusion of plugins under test
* have test_initpkg perform direct checks instead of yielding tests
* fix example tests for 3k
--HG--
branch : trunk
2009-09-06 16:59:39 +02:00