##// END OF EJS Templates
scm-app: allow to set documented pyro4 as scm_app_implementation....
scm-app: allow to set documented pyro4 as scm_app_implementation. The documented ini setting allows to set pyro4 as scm_app, while the backend code crashes on import of pyro4 module. This change allows to configure the app based on the .ini docs. if we pass pyro4 as backedn, we simply skip import and use the default pyro4 scm_app

File last commit:

r271:401985cc default
r632:064401fe default
Show More
unit-and-functional.rst
61 lines | 1.5 KiB | text/x-rst | RstLexer

Unit and Functional Tests

py.test based test suite

The test suite is in the folder :file:`rhodecode/tests/` and should be run with the test runner py.test inside of your nix-shell environment:

# In case you need the cythonized version
CYTHONIZE=1 python setup.py develop --prefix=$tmp_path

py.test rhodecode

py.test integration

The integration with the test runner is based on the following three parts:

  • pytest_pylons is a py.test plugin which does the integration with the Pylons web framework. It sets up the Pylons environment based on the given ini file.

    Tests which depend on the Pylons environment to be set up must request the fixture pylonsapp.

  • :file:`rhodecode/tests/plugin.py` contains the integration of py.test with RhodeCode Enterprise itself.

  • :file:`conftest.py` plugins are used to provide a special integration for certain groups of tests based on the directory location.

VCS backend selection

The py.test integration provides a parameter --backends. It will skip all tests which are marked for other backends.

To run only Subversion tests:

py.test rhodecode --backends=svn

Frontend / Styling support

All relevant style components have an example inside of the "Style" section within the application. Enable the setting debug_style to make this section visible in your local instance of the application.