9174c4dd2a
workflow - Rename crate/library/binary from workshop-executor to workshop-baker - Remove unused modules (decorator, parser, schedule, variable) from lib - Implement stage-based privilege dropping with prebake_drop_privilege() - Add dry-run support in executor and CLI - Add bootstrap.sh template script for user/workspace setup - Add PrebakeStage::from_str() and Default impl - Add get_drop_after() function for security config - Fix version matching to handle "1.0" format variants - Fix UPM all_managers() to return custom::Custom - Add Python integration tests with Docker - Simplify examples/prebake.yml to match template
1.4 KiB
1.4 KiB
Integration Tests
This directory contains integration tests for the workshop-baker prebake workflow.
Requirements
- Python 3.10+
- Docker
- pytest
Setup
Install Python dependencies:
pip install -r requirements.txt
Running Tests
Run all integration tests
pytest tests/integration/test_prebake.py -v
Run specific test class
# Run only Docker container tests
pytest tests/integration/test_prebake.py::TestPrebakeIntegration -v
# Run only configuration validation tests
pytest tests/integration/test_prebake.py::TestPrebakeConfigValidation -v
Run specific test
pytest tests/integration/test_prebake.py::TestPrebakeIntegration::test_project_compiles -v
Skip Docker tests (for local development)
pytest tests/integration/test_prebake.py::TestPrebakeConfigValidation -v
pytest tests/integration/test_prebake.py::TestPrebakeExamples -v
Test Structure
test_prebake.py::TestPrebakeIntegration- Docker-based integration teststest_prebake.py::TestPrebakeConfigValidation- YAML configuration validation teststest_prebake.py::TestPrebakeExamples- Example files validation tests
Notes
- Integration tests require Docker to be running
- Tests use
archlinux:latestDocker image - Tests mount the project directory into the container
- Some tests may take longer due to Rust compilation