##// END OF EJS Templates
Authentication: cache plugins for auth and their settings in the auth_registry....
Authentication: cache plugins for auth and their settings in the auth_registry. - Before that change on each requests 4x we loaded plugins for authentication, this hit many caches, db invalidation context and loaded the plugins logic each time. This was a heavy performance hit for SVN and other backends as they needed to load that plugins many many times - Since Authentication plugins almost never change, we'll not store the plugins listed for authentication into the authnregistry for each process - For AuthPlugins settings we now also flush plugins settings, and authnregistry cached plugins

File last commit:

r739:3f65f91e default
r4220:5a873939 stable
Show More
unit-and-functional.rst
66 lines | 1.7 KiB | text/x-rst | RstLexer
/ docs / contributing / testing / unit-and-functional.rst
project: added all source files and assets
r1
.. _test-unit-and-functional:
===========================
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::
py.test rhodecode
py.test integration
-------------------
The integration with the test runner is based on the following three parts:
docs: Update notes regarding Pylons / Pyramid
r739 - :file:`rhodecode/tests/pylons_plugin.py` 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.
project: added all source files and assets
r1
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
docs: Update notes regarding Pylons / Pyramid
r739 RhodeCode Enterprise itself and it takes care of setting up the needed parts
of the Pyramid framework.
project: added all source files and assets
r1
- :file:`conftest.py` plugins are used to provide a special integration for
certain groups of tests based on the directory location.
docs: Update notes regarding Pylons / Pyramid
r739 .. note::
We are migrating from Pylons to its successor Pyramid. Eventually the role of
the file `pylons_plugin.py` will change to provide only a Pyramid
integration.
project: added all source files and assets
r1
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.