#!/bin/sh # Regression for M2comp step 1 (Coco/R syntax front end). # Usage: ./run_tests.sh (from the m2comp directory) pass=0; fail=0 expect_ok() { if ./M2comp "$1" 2>&1 | grep -q "Parsed correctly"; then pass=$((pass+1)); echo "PASS(ok): $1" else fail=$((fail+1)); echo "FAIL(ok, rejected): $1" fi } expect_fail() { if ./M2comp "$1" 2>&1 | grep -q "Incorrect source"; then pass=$((pass+1)); echo "PASS(fail): $1" else fail=$((fail+1)); echo "FAIL(fail, accepted): $1" fi } expect_ok tests/ok_minimal.mod expect_ok tests/ok_proc.mod expect_fail tests/bad_mismatch.mod echo "--- $pass passed, $fail failed ---" [ "$fail" -eq 0 ]