#!/bin/bash set -euo pipefail IMAGE="$1" FAILED=0 PASSED=0 TMPDIR="$(mktemp -d)" trap 'rm -rf "$TMPDIR"' EXIT CONTAINER_NAME="test-crond-$$" # Test 1: Container starts and crond is running docker run -d --name "$CONTAINER_NAME" "$IMAGE" sleep 4 if [ "$(docker inspect "$CONTAINER_NAME" --format='{{.State.Running}}')" != "true" ]; then echo "FAIL: container exited prematurely" echo "=== Container logs ===" docker logs "$CONTAINER_NAME" 2>&1 || true FAILED=$((FAILED + 1)) elif docker exec "$CONTAINER_NAME" pgrep crond > /dev/null 2>&1; then echo "PASS: crond is running" PASSED=$((PASSED + 1)) else echo "FAIL: crond is not running" FAILED=$((FAILED + 1)) fi docker rm -f "$CONTAINER_NAME" > /dev/null 2>&1 || true echo "" echo "$PASSED/$((PASSED + FAILED)) tests passed" if [ "$FAILED" -gt 0 ]; then exit 1 fi