ToolingΒΆ
The development environment is described in Programming Environment,
however the CdEDB also has several specialised utility scripts, which can be
found in the bin
subdirectory.
analyze_timing.py
: Check performance by utilizing the test suite.check.py
: The entrypoint to our testing facilities, take a look at Running tests for more details.count_wikipedia_german.py
: Generate word lists from large text corpora (used for password strength estimation).create_sample_data_json.py
: Generate a json file from the current database state. Take a look into the Test Suite for more details.create_sample_data_sql.py
: Generate a SQL file from an input JSON file. Take a look into the Test Suite for more details.escape_fuzzing.py
: Do a brute-force attempt to find an XSS vulnerability. It is recommended to execute this usingcheck.py
, see XSS tests.evolution-trial.sh
: Check a set of database evolutions for fitness.extract_msgstr.py
: Prepare i18n-data for spell-checking.isolated-evolution.sh
: Launch a one-time use container for testing a set of database evolutions (likeevolution-trial.sh
, but more thorough).isolated-test.sh
: Launch a one-time use container running the test suite.
There is also a development server running at port 5000
which bypasses Apache and provides an interactive traceback explorer
including a console in which expressions can be evaluated in the respective namespace.
Take care to start the interactive debugger as user www-data
.
To access the ldap server from a local vm, it is currently necessary to manually switch
from TLS to plain TCP connections by removing the ssl
parameter during server
creation in ldap/main.py: Tools like ldapsearch (from ldap-utils
package) or
ApacheDirectoryStudio seems to do not work properly if the certificate name differs
from the hostname which is used to access the ldap server.
If those tools are used within the vm, everything works fine.
It is also reasonable to increase the debug level in ldap/main.py from WARNING to DEBUG.