#!/bin/sh

# Tests runnable both various settings (with or w/o unit resolution,
# with or w/o clausification)

PRI=../../princess


TESTS="cryptarithm.pri \
       functions0.pri functions1.pri functions2.pri \
       functions0b.pri \
       functions0c.pri functions1c.pri functions2c.pri \
       inequalities0.pri inequalities2.pri \
       inequalities3.pri inequalities4.pri inequalities5.pri \
       inequalities6.pri inequalities7.pri inequalities8.pri \
       optimisation0.pri optimisation1.pri optimisation4.pri \
       predicates0.pri predicates1.pri predicates2.pri predicates3.pri \
       predicates4.pri predicates5.pri predicates6.pri predicates7.pri \
       sameModule.pri sameModule2.pri sameModule3.pri \
       simpleEq0.pri simpleEq1.pri simpleEq2.pri simpleEq4.pri \
       simpleEq5.pri simpleEq6.pri simpleEq9.pri \
       simplify19.pri \
       simplifyInequalities0.pri simplifyInequalities1.pri \
       simplifyInequalities2.pri simplifyInequalities3.pri \
       simplifyInequalities4.pri \
       impliedEq.pri impliedEq2.pri \
       SET043p1.pri SET063p3.pri \
       reducePredLitsBug.pri \
       clam-001.pri clam-002.pri clam-003.pri clam-005.pri \
       constraintFreedomBug.pri unitResolutionBug.pri \
       functionBug.pri \
       liaStar0.pri liaStar1.pri liaStar2.pri \
       relationalFun.pri relationalFun3.pri relationalFun4.pri \
       uniExConstants0.pri uniExConstants2.pri \
       interpolant0.pri interpolant1.pri \
       vocabularyBug.pri compoundFormulaeBug.pri \
       endsWithComment.pri triggerBug.pri non-body-trigger.pri \
       ite.pri ite2.pri ite3.pri \
       div-elimination.pri bad-divisibility.pri binderTypes.pri \
       nestedITE.pri reductionBug.pri extraOps.pri booleanDefs.pri \
       pred-with-body.pri fun-with-body.pri sorted-existential-constants.pri \
       bool-quantifier.pri adt.pri bool-fun-2.pri gen-trivial-model.pri \
       bv0.pri bv0b.pri ui-sort1.pri ui-sort1b.pri ui-sort2.pri"

$PRI "$@" $TESTS


# Tests where we have to suppress parts of the output because it is
# too nondeterministic

TESTS="linearRanking.pri linearRanking-sorted.pri \
       linearRanking2-quantified.pri"

$PRI "$@" $TESTS 2>&1 | grep -v "^lowerBound"
