Skip to content

Integrate Dependency Installer with E2E Tests #118

@josecelano

Description

@josecelano

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 tests
  • src/bin/e2e-provision-tests.rs - Infrastructure provisioning tests
  • src/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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions