changeset 5701:2d2decce586f

pytest migration: update documentation Update documentation and comments to refer to pytest instead of nose.
author Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
date Wed, 03 Feb 2016 22:26:25 +0100
parents d88077fae3d6
children b755464eff8d
files docs/contributing.rst kallithea/i18n/how_to kallithea/tests/__init__.py
diffstat 3 files changed, 25 insertions(+), 21 deletions(-) [+]
line wrap: on
line diff
--- a/docs/contributing.rst	Wed Feb 03 22:32:28 2016 +0100
+++ b/docs/contributing.rst	Wed Feb 03 22:26:25 2016 +0100
@@ -49,7 +49,7 @@
 -------------
 
 After finishing your changes make sure all tests pass cleanly. You can run
-the testsuite running ``nosetests`` from the project root, or if you use tox
+the testsuite running ``py.test`` from the project root, or if you use tox
 run ``tox`` for Python 2.6--2.7 with multiple database test.
 
 When running tests, Kallithea uses `kallithea/tests/test.ini` and populates the
@@ -59,17 +59,31 @@
 the tests, thus eliminating the initial delay. To achieve this, run the tests as::
 
     paster serve kallithea/tests/test.ini --pid-file=test.pid --daemon
-    KALLITHEA_WHOOSH_TEST_DISABLE=1 KALLITHEA_NO_TMP_PATH=1 nosetests
+    KALLITHEA_WHOOSH_TEST_DISABLE=1 KALLITHEA_NO_TMP_PATH=1 py.test
     kill -9 $(cat test.pid)
 
-You can run individual tests by specifying their path as argument to nosetests.
-nosetests also has many more options, see `nosetests -h`. Some useful options
+In these commands, the following variables are used::
+
+    KALLITHEA_WHOOSH_TEST_DISABLE=1 - skip whoosh index building and tests
+    KALLITHEA_NO_TMP_PATH=1 - disable new temp path for tests, used mostly for testing_vcs_operations
+
+You can run individual tests by specifying their path as argument to py.test.
+py.test also has many more options, see `py.test -h`. Some useful options
 are::
 
-    -x, --stop            Stop running tests after the first error or failure
-    -s, --nocapture       Don't capture stdout (any stdout output will be
-                          printed immediately) [NOSE_NOCAPTURE]
-    --failed              Run the tests that failed in the last test run.
+    -k EXPRESSION         only run tests which match the given substring
+                          expression. An expression is a python evaluatable
+                          expression where all names are substring-matched
+                          against test names and their parent classes. Example:
+    -x, --exitfirst       exit instantly on first error or failed test.
+    --lf                  rerun only the tests that failed at the last run (or
+                          all if none failed)
+    --ff                  run all tests but run the last failures first. This
+                          may re-order tests and thus lead to repeated fixture
+                          setup/teardown
+    --pdb                 start the interactive Python debugger on errors.
+    -s, --capture=no      don't capture stdout (any stdout output will be
+                          printed immediately)
 
 
 Coding/contribution guidelines
--- a/kallithea/i18n/how_to	Wed Feb 03 22:32:28 2016 +0100
+++ b/kallithea/i18n/how_to	Wed Feb 03 22:26:25 2016 +0100
@@ -94,4 +94,4 @@
 
 Run Kallithea tests by executing::
 
-    nosetests
+    py.test
--- a/kallithea/tests/__init__.py	Wed Feb 03 22:32:28 2016 +0100
+++ b/kallithea/tests/__init__.py	Wed Feb 03 22:26:25 2016 +0100
@@ -15,22 +15,12 @@
 """
 Pylons application test package
 
-This package assumes the Pylons environment is already loaded, such as
-when this script is imported from the `nosetests --with-pylons=test.ini`
-command.
+This package assumes the Pylons environment is already loaded.
 
 This module initializes the application via ``websetup`` (`paster
 setup-app`) and provides the base testing objects.
 
-nosetests -x - fail on first error
-nosetests kallithea.tests.functional.test_admin_settings:TestSettingsController.test_my_account
-nosetests --pdb --pdb-failures
-nosetests --with-coverage --cover-package=kallithea.model.validators kallithea.tests.test_validators
-
-optional FLAGS:
-    KALLITHEA_WHOOSH_TEST_DISABLE=1 - skip whoosh index building and tests
-    KALLITHEA_NO_TMP_PATH=1 - disable new temp path for tests, used mostly for test_vcs_operations
-
+Refer to docs/contributing.rst for details on running the test suite.
 """
 import os
 import re