summaryrefslogtreecommitdiff
path: root/HACKING.txt
diff options
context:
space:
mode:
authorChris McDonough <chrism@plope.com>2011-11-08 15:55:53 -0800
committerChris McDonough <chrism@plope.com>2011-11-08 15:55:53 -0800
commita3ff61a5a554973e4c84c2120f0c6c019e192d9e (patch)
tree2e8c89399658cd40fc9744324d2f50af7e7033bd /HACKING.txt
parent8092b61b4704bc3a374f5c15e6e626612d9eb504 (diff)
downloadpyramid-a3ff61a5a554973e4c84c2120f0c6c019e192d9e.tar.gz
pyramid-a3ff61a5a554973e4c84c2120f0c6c019e192d9e.tar.bz2
pyramid-a3ff61a5a554973e4c84c2120f0c6c019e192d9e.zip
fix hacking for trunk stuff
Diffstat (limited to 'HACKING.txt')
-rw-r--r--HACKING.txt36
1 files changed, 27 insertions, 9 deletions
diff --git a/HACKING.txt b/HACKING.txt
index 99a44fa01..d122a7a25 100644
--- a/HACKING.txt
+++ b/HACKING.txt
@@ -29,11 +29,6 @@ checkout.
$ env/bin/easy_install setuptools-git
-- Install ``nose`` and ``coverage`` into the virtualenv (for running nose
- tests with coverage via ``setup.py nosetests --with-coverage``)::
-
- $ env/bin/easy_install nose coverage
-
- Install Pyramid from the checkout into the virtualenv using ``setup.py
develop`` (running ``setup.py develop`` *must* be done while the current
working directory is the ``pyramid`` checkout directory)::
@@ -62,7 +57,9 @@ In order to add a feature to Pyramid:
documentation (in ``docs/``).
- The feature must work fully on the following CPython versions: 2.6,
- and 2.7 on both UNIX and Windows.
+ 2.7, and 3.2 on both UNIX and Windows.
+
+- The feature must work on the latest version of PyPy.
- The feature must not cause installation or runtime failure on Jython
or App Engine. If it doesn't cause installation or runtime failure,
@@ -88,12 +85,33 @@ Coding Style
2 newlines between classes. But 80-column lines, in particular, are
mandatory.
+Running Tests
+--------------
+
+- To run tests for Pyramid on a single Python version, run ``python setup.py
+ test`` against the using the Python interpreter from virtualenv into which
+ you've ``setup.py develop``-ed Pyramid.
+
+- To run the full set of Pyramid tests on all platforms, install ``tox``
+ (http://codespeak.net/~hpk/tox/) into a system Python. The ``tox`` console
+ script will be installed into the scripts location for that Python. While
+ ``cd``'ed to the Pyramid checkout root directory (it contains ``tox.ini``),
+ invoke the ``tox`` console script. This will read the ``tox.ini`` file and
+ execute the tests on multiple Python versions and platforms; while it runs,
+ it creates a virtualenv for each version/platform combination. For
+ example::
+
+ $ /usr/bin/easy_install tox
+ $ cd ~/hack-on-pyramid/pyramid
+ $ /usr/bin/tox
+
Test Coverage
-------------
-- The codebase *must* have 100% test statement coverage after each
- commit. You can test coverage via ``python setup.py nosetests
- --with-coverage`` (requires the ``nose`` and ``coverage`` packages).
+- The codebase *must* have 100% test statement coverage after each commit.
+ You can test coverage via ``tox -e coverage``, or alternately by installing
+ ``nose`` and ``coverage`` into your virtualenv, and running ``setup.py
+ nosetests --with-coverage``.
Documentation Coverage
----------------------