-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Parent Epic: #112 - Refactor and Improve E2E Test Execution
Depends On: #113 - Create Dependency Installation Package for E2E Tests
Summary
Integrate the dependency-installer package with E2E test binaries to automatically verify and install required dependencies before running tests. This ensures tests fail fast with clear error messages when dependencies are missing, and makes it easier for AI agents to run tests in fresh environments.
Objectives
- Add dependency checking to E2E test binaries at startup
- Attempt automatic installation of missing dependencies
- Provide clear error messages with fix instructions
- Update E2E test documentation
Scope
E2E Test Files to Update (3 binary-based tests):
src/bin/e2e-tests-full.rs- Comprehensive E2E testssrc/bin/e2e-provision-tests.rs- Infrastructure provisioning testssrc/bin/e2e-config-tests.rs- Configuration tests
Integration test E2E tests (2 files in tests/) are OUT OF SCOPE - they currently have no system dependencies.
Integration Approach
Add dependency checking at the start of each E2E test binary:
use dependency_installer::{DependencyManager, check_and_install_dependencies};
fn main() -> Result<(), Box<dyn std::error::Error>> {
// Check and install dependencies before running tests
check_and_install_dependencies()?;
// Run tests...
Ok(())
}Acceptance Criteria
- Pre-commit checks pass
- All 3 E2E test binaries integrate dependency checking
- Tests fail fast with clear messages when dependencies missing
- Automatic installation works in fresh environments
- Documentation updated
Time Estimate
3-5 hours
Specification
See detailed specification: docs/issues/118-1-2-integrate-dependency-installer-with-e2e-tests.md