#!/bin/sh
# compara: cada tabla de entradas/ tiene que dar lo de esperado/. Estado 0
# si todas; si no, dice cuales y la diferencia. Entra en el make check.
# Cuando lo esperado tiene que cambiar (un arreglo), se vuelve a congelar
# con ./congela, a mano.
aqui=$(cd "$(dirname "$0")" && pwd)
fallan=0; n=0
for e in "$aqui"/entradas/*; do
  b=$(basename "$e"); n=$((n + 1))
  if "$aqui/salida" "$b" | cmp -s - "$aqui/esperado/$b.txt"; then
    echo "  ok    $b"
  else
    echo "  FALLA $b"; "$aqui/salida" "$b" | diff "$aqui/esperado/$b.txt" - | head -20 | sed 's/^/        /'
    fallan=$((fallan + 1))
  fi
done
echo "$n tablas, $fallan distintas de lo esperado"
[ $fallan -eq 0 ]
