#!/usr/bin/env bash test_runner_smoke() { ui_section "Smoke test" bash "$RUNTIME_PROJECT_ROOT/tests/smoke.sh" } test_runner_module() { local module_id="$1" local test_path="" test_path="$(registry_module_test_path "$module_id")" if [[ -z "$test_path" || ! -f "$test_path" ]]; then ui_warn "Aucun test disponible pour $module_id" return 1 fi ui_section "Test du module $module_id" bash "$test_path" } test_runner_all_modules() { local module_id="" local failures=0 while IFS= read -r module_id; do [[ -n "$module_id" ]] || continue if ! test_runner_module "$module_id"; then failures=$((failures + 1)) fi done < <(registry_list) if [[ "$failures" -eq 0 ]]; then ui_success "Tous les tests modules se sont termines sans echec" else ui_warn "$failures test(s) module(s) ont retourne un echec" fi }