#!/bin/bash function compare { expected=$2 actual=$3 if [[ "$expected" != "$actual" ]]; then echo "Test failed: $1" echo "Expected = $expected" echo " Actual = $actual" exit 1 fi } if [[ $# -lt 2 ]]; then echo "$0 [seed]" exit 1 fi GOLD=$1 TEST=$2 SEED=${3-1337} # Check for identical output across different sizes and different seeds for h in 0 40 60 100 256; do for w in 0 64 96 160 256; do expected=$(ruby "$GOLD" $h $w $SEED | md5sum -) actual=$(ruby "$TEST" $h $w $SEED | md5sum -) compare "md5 check $h $w $SEED" "$expected" "$actual" done done