View Javadoc

1   /*******************************************************************************
2    * SAT4J: a SATisfiability library for Java Copyright (C) 2004, 2012 Artois University and CNRS
3    *
4    * All rights reserved. This program and the accompanying materials
5    * are made available under the terms of the Eclipse Public License v1.0
6    * which accompanies this distribution, and is available at
7    *  http://www.eclipse.org/legal/epl-v10.html
8    *
9    * Alternatively, the contents of this file may be used under the terms of
10   * either the GNU Lesser General Public License Version 2.1 or later (the
11   * "LGPL"), in which case the provisions of the LGPL are applicable instead
12   * of those above. If you wish to allow use of your version of this file only
13   * under the terms of the LGPL, and not to allow others to use your version of
14   * this file under the terms of the EPL, indicate your decision by deleting
15   * the provisions above and replace them with the notice and other provisions
16   * required by the LGPL. If you do not delete the provisions above, a recipient
17   * may use your version of this file under the terms of the EPL or the LGPL.
18   *
19   * Based on the original MiniSat specification from:
20   *
21   * An extensible SAT solver. Niklas Een and Niklas Sorensson. Proceedings of the
22   * Sixth International Conference on Theory and Applications of Satisfiability
23   * Testing, LNCS 2919, pp 502-518, 2003.
24   *
25   * See www.minisat.se for the original solver in C++.
26   *
27   * Contributors:
28   *   CRIL - initial API and implementation
29   *******************************************************************************/
30  package org.sat4j.minisat.core;
31  
32  import junit.framework.TestCase;
33  
34  public class HeapTest extends TestCase {
35  
36      /*
37       * Test method for 'org.sat4j.minisat.core.Heap.setBounds(int)'
38       */
39      public void testSetBounds() {
40  
41      }
42  
43      /*
44       * Test method for 'org.sat4j.minisat.core.Heap.inHeap(int)'
45       */
46      public void testInHeap() {
47          Heap heap = new Heap(new double[] { 0.0, 3.0, 9.0, 2.0 });
48          heap.setBounds(5);
49          assertFalse(heap.inHeap(1));
50          assertFalse(heap.inHeap(2));
51          assertFalse(heap.inHeap(3));
52          heap.insert(1);
53          assertTrue(heap.inHeap(1));
54          assertFalse(heap.inHeap(2));
55          assertFalse(heap.inHeap(3));
56          heap.insert(2);
57          assertTrue(heap.inHeap(1));
58          assertTrue(heap.inHeap(2));
59          assertFalse(heap.inHeap(3));
60          heap.insert(3);
61          assertTrue(heap.inHeap(1));
62          assertTrue(heap.inHeap(2));
63          assertTrue(heap.inHeap(3));
64          assertEquals(2, heap.getmin());
65          assertTrue(heap.inHeap(1));
66          assertFalse(heap.inHeap(2));
67          assertTrue(heap.inHeap(3));
68          assertEquals(1, heap.getmin());
69          assertFalse(heap.inHeap(1));
70          assertFalse(heap.inHeap(2));
71          assertTrue(heap.inHeap(3));
72          assertEquals(3, heap.getmin());
73          assertFalse(heap.inHeap(1));
74          assertFalse(heap.inHeap(2));
75          assertFalse(heap.inHeap(3));
76  
77      }
78  
79      /*
80       * Test method for 'org.sat4j.minisat.core.Heap.increase(int)'
81       */
82      public void testIncrease() {
83  
84      }
85  
86      /*
87       * Test method for 'org.sat4j.minisat.core.Heap.empty()'
88       */
89      public void testEmpty() {
90          Heap heap = new Heap(new double[] {});
91          assertTrue(heap.empty());
92      }
93  
94      /*
95       * Test method for 'org.sat4j.minisat.core.Heap.insert(int)'
96       */
97      public void testInsert() {
98          Heap heap = new Heap(new double[] { 0.0, 1.0, 1.0, 2.0 });
99          heap.setBounds(5);
100         heap.insert(1);
101         heap.insert(2);
102         heap.insert(3);
103         assertEquals(3, heap.getmin());
104         assertEquals(1, heap.getmin());
105         assertEquals(2, heap.getmin());
106     }
107 
108     /*
109      * Test method for 'org.sat4j.minisat.core.Heap.getmin()'
110      */
111     public void testGetmin() {
112         Heap heap = new Heap(new double[] { 0.0, 3.0, 9.0, 2.0 });
113         heap.setBounds(5);
114         heap.insert(1);
115         heap.insert(2);
116         heap.insert(3);
117         assertEquals(2, heap.getmin());
118         assertEquals(1, heap.getmin());
119         assertEquals(3, heap.getmin());
120     }
121 
122     /*
123      * Test method for 'org.sat4j.minisat.core.Heap.heapProperty()'
124      */
125     public void testHeapProperty() {
126 
127     }
128 
129     /*
130      * Test method for 'org.sat4j.minisat.core.Heap.heapProperty(int)'
131      */
132     public void testHeapPropertyInt() {
133 
134     }
135 
136 }