A mailgate for Postfix to encrypt incoming and outgoing email with S/MIME and/or OpenPGP and decrypting OpenPGP encrypted emails
https://lacre.io
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.5 KiB
67 lines
1.5 KiB
.POSIX: |
|
.PHONY: test e2etest unittest crontest pre-clean clean |
|
|
|
# |
|
# On systems where Python 3.x binary has a different name, just |
|
# overwrite the name/path on the command line, like: |
|
# |
|
# make test PYTHON=/usr/local/bin/python3.8 |
|
# |
|
# This marco is passed via environment to test/e2e_test.py, where it's |
|
# used to compute further commands. |
|
# |
|
PYTHON = python3 |
|
|
|
TEST_DB = test/lacre.db |
|
|
|
# |
|
# Main goal to run tests. |
|
# |
|
test: e2etest unittest crontest |
|
|
|
# |
|
# Run a set of end-to-end tests. |
|
# |
|
# Test scenarios are described and configured by the test/e2e.ini |
|
# file. Basically this is just a script that feeds GPG Mailgate with |
|
# known input and checks whether output meets expectations. |
|
# |
|
e2etest: test/tmp test/logs pre-clean |
|
$(PYTHON) test/e2e_test.py |
|
|
|
# |
|
# Run a basic cron-job test. |
|
# |
|
# We use PYTHONPATH to make sure that cron.py can import GnuPG |
|
# package. We also set GPG_MAILGATE_CONFIG env. variable to make sure |
|
# it slurps the right config. |
|
# |
|
crontest: clean-db $(TEST_DB) |
|
GPG_MAILGATE_CONFIG=test/gpg-mailgate-cron-test.conf PYTHONPATH=`pwd` $(PYTHON) gpg-mailgate-web/cron.py |
|
|
|
$(TEST_DB): |
|
$(PYTHON) test/schema.py $(TEST_DB) |
|
|
|
# Before running the crontest goal we need to make sure that the |
|
# database gets regenerated. |
|
clean-db: |
|
rm -f $(TEST_DB) |
|
|
|
# |
|
# Run unit tests |
|
# |
|
unittest: |
|
$(PYTHON) -m unittest discover -s test |
|
|
|
pre-clean: |
|
rm -fv test/gpg-mailgate.conf |
|
rm -f test/logs/*.log |
|
|
|
test/tmp: |
|
mkdir test/tmp |
|
|
|
test/logs: |
|
mkdir test/logs |
|
|
|
clean: pre-clean |
|
rm -rfv test/tmp test/logs
|
|
|