package de.psi.alloy4smt.smt; import org.junit.Test; import static org.junit.Assert.*; public class SMTSolverTest { @Test public void simple() { SMTSolver solver = new SMTSolver(); solver.addVariables(3); assertEquals(3, solver.numberOfVariables()); assertEquals( "(declare-fun cnf_1 () Bool)\n" + "(declare-fun cnf_2 () Bool)\n" + "(declare-fun cnf_3 () Bool)\n", solver.makeSMTFormula().getVariableDecls()); solver.addClause(new int[]{ 1, -3, 2 }); solver.addClause(new int[]{ 3, -2}); assertEquals( "(assert (or cnf_1 (not cnf_3) cnf_2))\n" + "(assert (or cnf_3 (not cnf_2)))\n", solver.makeSMTFormula().getConstraints()); assertEquals(2, solver.numberOfClauses()); } }