View Javadoc

1   package org.sat4j.pb;
2   
3   import static org.junit.Assert.assertFalse;
4   
5   import org.junit.Before;
6   import org.junit.Test;
7   import org.sat4j.core.VecInt;
8   import org.sat4j.pb.SolverFactory;
9   import org.sat4j.pb.tools.LexicoDecoratorPB;
10  import org.sat4j.specs.ContradictionException;
11  import org.sat4j.specs.IVecInt;
12  import org.sat4j.specs.TimeoutException;
13  
14  public class LexicoDecoratorPBTest {
15  
16      @Before
17      public void setUp() throws Exception {
18      }
19  
20      @Test
21      public void test() throws ContradictionException, TimeoutException {
22          LexicoDecoratorPB lexico = new LexicoDecoratorPB(
23                  SolverFactory.newDefault());
24          IVecInt clause = new VecInt();
25          clause.push(-1).push(-2);
26          lexico.addClause(clause);
27          clause.clear();
28          clause.push(1);
29          lexico.addClause(clause);
30          clause.clear();
31          clause.push(2);
32          lexico.addClause(clause);
33          clause.clear();
34          clause.push(-1).push(-2);
35          lexico.addCriterion(clause);
36          IVecInt clause2 = new VecInt();
37          clause2.push(1).push(2);
38          lexico.addCriterion(clause2);
39          assertFalse(lexico.admitABetterSolution());
40      }
41  }