[py-svn] py-trunk commit bf69999b6108: relax a test to pass on jython and fix install docs to include genscript standalone usage.
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Sun Jan 3 14:19:53 CET 2010
# HG changeset patch -- Bitbucket.org
# Project py-trunk
# URL http://bitbucket.org/hpk42/py-trunk/overview/
# User holger krekel <holger at merlinux.eu>
# Date 1262524771 -3600
# Node ID bf69999b61082769e94ef1cd4ad6590474e99061
# Parent 82eaef6c64de1ca5baf7e68d55bc8ac7b742e718
relax a test to pass on jython and fix install docs to include genscript standalone usage.
--- a/bin-for-dist/test_install.py
+++ b/bin-for-dist/test_install.py
@@ -166,7 +166,8 @@ def test_cmdline_entrypoints(monkeypatch
expected = "%s-jython" % script
assert expected in points
for script in unversioned_scripts:
- assert script in points
+ assert script not in points
+
points = cmdline_entrypoints((2,5,1), "xyz", 'pypy-c-XYZ')
for script in versioned_scripts:
expected = "%s-pypy-c-XYZ" % script
--- a/setup.py
+++ b/setup.py
@@ -63,20 +63,21 @@ def main():
)
def cmdline_entrypoints(versioninfo, platform, basename):
- if basename.startswith("pypy"):
- points = {'py.test-%s' % basename: 'py.cmdline:pytest',
- 'py.which-%s' % basename: 'py.cmdline:pywhich',}
- elif platform.startswith('java'):
+ if platform.startswith('java'):
points = {'py.test-jython': 'py.cmdline:pytest',
'py.which-jython': 'py.cmdline:pywhich'}
- else: # cpython
- points = {
- 'py.test-%s.%s' % versioninfo[:2] : 'py.cmdline:pytest',
- 'py.which-%s.%s' % versioninfo[:2] : 'py.cmdline:pywhich'
- }
- for x in ['py.cleanup', 'py.convert_unittest', 'py.countloc',
- 'py.lookup', 'py.svnwcrevert', 'py.which', 'py.test']:
- points[x] = "py.cmdline:%s" % x.replace('.','')
+ else:
+ if basename.startswith("pypy"):
+ points = {'py.test-%s' % basename: 'py.cmdline:pytest',
+ 'py.which-%s' % basename: 'py.cmdline:pywhich',}
+ else: # cpython
+ points = {
+ 'py.test-%s.%s' % versioninfo[:2] : 'py.cmdline:pytest',
+ 'py.which-%s.%s' % versioninfo[:2] : 'py.cmdline:pywhich'
+ }
+ for x in ['py.cleanup', 'py.convert_unittest', 'py.countloc',
+ 'py.lookup', 'py.svnwcrevert', 'py.which', 'py.test']:
+ points[x] = "py.cmdline:%s" % x.replace('.','')
return points
def make_entry_points():
--- a/doc/install.txt
+++ b/doc/install.txt
@@ -1,11 +1,6 @@
-..
- ==============
- Downloading
- ==============
.. _`index page`: http://pypi.python.org/pypi/py/
-
py.test/pylib installation info in a nutshell
===================================================
@@ -15,7 +10,7 @@ py.test/pylib installation info in a nut
**Requirements**: setuptools_ or Distribute_
-**Installers**: easy_install_ and pip_
+**Installers**: easy_install_ and pip_ or `standalone`_ (new for 1.2)
**Distribution names**:
@@ -24,7 +19,7 @@ py.test/pylib installation info in a nut
* debian: ``python-codespeak-lib``
* gentoo: ``pylib``
-**Installed scripts**: see `bin`_ for which scripts are installed.
+**Installed scripts**: see `bin`_ for which and how scripts are installed.
.. _`bin`: bin.html
@@ -68,6 +63,25 @@ Maybe you want to head on with the `quic
.. _quickstart: test/quickstart.html
+.. _standalone:
+
+Generating a py.test standalone Script
+============================================
+
+If you are a maintainer or application developer and want users
+to run tests you can use a facility to generate a standalone
+"py.test" script that you can tell users to run::
+
+ py.test --genscript=mytest
+
+will generate a ``mytest`` script that is, in fact, a ``py.test`` under
+disguise. You can tell people to download and then e.g. run it like this::
+
+ python mytest --pastebin=all
+
+and ask them to send you the resulting URL. The resulting script has
+all core features and runs unchanged under Python2 and Python3 interpreters.
+
Troubleshooting
========================
--- a/testing/pytest/acceptance_test.py
+++ b/testing/pytest/acceptance_test.py
@@ -61,7 +61,7 @@ class TestGeneralUsage:
testdir.makepyfile(import_fails="import does_not_work")
result = testdir.runpytest(p)
extra = result.stdout.fnmatch_lines([
- "> import import_fails",
+ #XXX on jython this fails: "> import import_fails",
"E ImportError: No module named does_not_work",
])
assert result.ret == 1
More information about the pytest-commit
mailing list