Edgewall Software

Version 18 (modified by Ryan J Ollos, 7 years ago) ( diff )

Use passlib in Trac ≥ 1.2 (#12239). fcrypt is not available on PyPI, so use link to download site in pip command.

Trac Functional Tests

Automated functional tests are integrated in the test suite (see TracDev/UnitTests). They are formed by executing a series of unit tests. For detailed informations about functional tests, see:

These functional tests do not replace manual testing.

Extra dependencies

  • twill — simple scripting language for Web browsing
  • lxml — used for XHTML validation

Those packages can be installed with pip:

pip install twill
pip install lxml

Note that one test requires that the svn program can be executed.

Windows specific dependencies

For lxml, the latest version is not always easy-installable for Windows, so you will have to download a somewhat older version from PyPI:


There's also an additional dependency on Windows:

The usual install method will work:

pip install http://www.carey.geek.nz/code/python-fcrypt/fcrypt-1.3.1.tar.gz
pip install passlib

If fcrypt is not installed, you will get the following error when running the tests with Trac 0.12 - 1.0:

Warning: cannot parse password for user "crypt" without the "crypt" module

or this warning starting with Trac 1.2:

The crypt module is not found. Install the passlib package from PyPI.

Running the tests

To run the functional tests, execute:

PYTHONPATH=. python ./trac/tests/functional/__init__.py


make functional-test

This is starting from Trac 0.12, as Trac 0.11 has no Makefile.

Discussion / Feedback

Something to consider here: using twill's wsgi_intercept capability, and making these part of the unit tests.

Attachments (1)

  • 244-for-23.zip (61.8 KB ) - added by Christian Boos 13 years ago. Set of files from the Python 2.4.4 standard library needed for running the functional tests with Python 2.3

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.