Commit Graph

1843 Commits

Author SHA1 Message Date
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