public void FailingConstraint() { Solver solver = new Solver("TestConstraint"); IntVar x = solver.MakeIntVar(new int[] {2, 4, -1, 6, 11, 10}, "x"); Constraint ct = new DumbGreaterOrEqualToFive(solver, x); solver.Add(ct); DecisionBuilder db = solver.MakePhase(x, Solver.CHOOSE_FIRST_UNBOUND, Solver.ASSIGN_MIN_VALUE); solver.NewSearch(db); Assert.True(solver.NextSolution()); Assert.Equal(6, x.Min()); solver.EndSearch(); }
static void FailingConstraintTest() { Solver solver = new Solver("TestConstraint"); IntVar x = solver.MakeIntVar(new int[] { 2, 4, -1, 6, 11, 10 }, "x"); Constraint ct = new DumbGreaterOrEqualToFive(solver, x); solver.Add(ct); DecisionBuilder db = solver.MakePhase(x, Solver.CHOOSE_FIRST_UNBOUND, Solver.ASSIGN_MIN_VALUE); solver.NewSearch(db); Check(solver.NextSolution(), "NextSolution failed"); CheckLongEq(6, x.Min(), "Min not set"); solver.EndSearch(); }
static void FailingConstraintTest() { Solver solver = new Solver("TestConstraint"); IntVar x = solver.MakeIntVar(new int[] {2, 4, -1, 6, 11, 10}, "x"); Constraint ct = new DumbGreaterOrEqualToFive(solver, x); solver.Add(ct); DecisionBuilder db = solver.MakePhase(x, Solver.CHOOSE_FIRST_UNBOUND, Solver.ASSIGN_MIN_VALUE); solver.NewSearch(db); Check(solver.NextSolution(), "NextSolution failed"); CheckLongEq(6, x.Min(), "Min not set"); solver.EndSearch(); }