Testing
Unit Tests
Unit tests can be run using make check
(via cargo test
).
External Kola Tests
External Kola tests can be found in the tests/kola/
directory.
server
Tests
The tests/kola/server/
test directory contains tests that require access to a mock Cincinnati server. This test directory contains a Fedora CoreOS config that does the following:
- creates a
/var/www/
directory - sets up an HTTP server at
localhost
listening on port80
serving files from the/var/www/
directory - configures Zincati to use
localhost
as its Cincinnati base URL - adds a systemd dropin to set Zincati’s journal log verbosity to max (
-vvvv
)
Tests place mock release graphs in /var/www/
for Zincati to fetch.
Running the Tests
A built Fedora CoreOS image is required; it is recommended to use the CoreOS Assembler’s build-fast
command for faster iteration.
To run the tests, specify the path to your Zincati project directory and which tests to run using kola run
’s -E
option.
Example (run all tests):
kola run --qemu-image fastbuild-fedora-coreos-zincati-qemu.qcow2 -E /path/to/zincati/ 'ext.zincati.*'
Example (run only the server
tests):
kola run --qemu-image fastbuild-fedora-coreos-zincati-qemu.qcow2 -E /path/to/zincati/ 'ext.zincati.server.*'
Adding Tests
Refer to kola external tests’ README for instructions on adding additional tests