mirror of
https://github.com/jokob-sk/NetAlertX.git
synced 2025-12-07 09:36:05 -08:00
1.6 KiB
1.6 KiB
NetAlertX Docker Test Configurations
This directory contains docker-compose configurations for different test scenarios.
Available Configurations
readonly
- File:
docker-compose.readonly.yml - Description: Tests with a read-only container filesystem
- Use case: Verify that the application works correctly when the container filesystem is read-only
writable
- File:
docker-compose.writable.yml - Description: Tests with writable tmpfs mounts for performance
- Use case: Standard testing with optimized writable directories
Mount Diagnostic Tests
The mount-tests/ subdirectory contains 24 docker-compose configurations that test all possible mount scenarios for each path that NetAlertX monitors:
- 6 paths:
/data/db,/data/config,/tmp/api,/tmp/log,/tmp/run,/tmp/nginx/active-config - 4 scenarios per path:
no-mount,ramdisk,mounted,unwritable - Total: 24 comprehensive test configurations
Running Tests
Use pytest to run the mount diagnostic tests:
cd /workspaces/NetAlertX/test/docker_tests
pytest test_mount_diagnostics_pytest.py -v
Or run specific test scenarios:
pytest test_mount_diagnostics_pytest.py -k "db_ramdisk"
Test Coverage
Each test validates that the mount diagnostic tool (/entrypoint.d/10-mounts.py) correctly identifies:
- Good configurations: No issues reported, exit code 0
- Bad configurations: Issues detected in table format, exit code 1
The tests ensure that persistent paths (db, config) require durable storage (volumes) while non-persistent paths (api, log, run) benefit from fast storage (tmpfs).