diff options
Diffstat (limited to 'Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/cardinality/CbcPolyhedronSolverTest.xtend')
-rw-r--r-- | Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/cardinality/CbcPolyhedronSolverTest.xtend | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/cardinality/CbcPolyhedronSolverTest.xtend b/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/cardinality/CbcPolyhedronSolverTest.xtend new file mode 100644 index 00000000..b22e2a20 --- /dev/null +++ b/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/cardinality/CbcPolyhedronSolverTest.xtend | |||
@@ -0,0 +1,42 @@ | |||
1 | package hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests.cardinality | ||
2 | |||
3 | import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.cardinality.CbcPolyhedronSolver | ||
4 | import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.cardinality.Dimension | ||
5 | import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.cardinality.Polyhedron | ||
6 | import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.cardinality.PolyhedronSaturationResult | ||
7 | import org.junit.Test | ||
8 | |||
9 | import static org.junit.Assert.* | ||
10 | import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.cardinality.LinearConstraint | ||
11 | |||
12 | class CbcPolyhedronSolverTest extends IntegerPolyhedronSolverTest { | ||
13 | |||
14 | override protected createSolver() { | ||
15 | new CbcPolyhedronSolver(false, 10, true) | ||
16 | } | ||
17 | } | ||
18 | |||
19 | class RelaxedCbcPolyhedronSolverTest extends RelaxedPolyhedronSolverTest { | ||
20 | |||
21 | override protected createSolver() { | ||
22 | new CbcPolyhedronSolver(true, 10, true) | ||
23 | } | ||
24 | } | ||
25 | |||
26 | class CbcPolyhedronSolverTimeoutTest { | ||
27 | |||
28 | @Test | ||
29 | def void timeoutTest() { | ||
30 | val solver = new CbcPolyhedronSolver(false, 0, true) | ||
31 | val x = new Dimension("x", 0, 1) | ||
32 | val polyhedron = new Polyhedron(#[x], #[new LinearConstraint(#{x -> 1}, null, 0)], #[x]) | ||
33 | val operator = solver.createSaturationOperator(polyhedron) | ||
34 | try { | ||
35 | val result = operator.saturate | ||
36 | |||
37 | assertEquals(PolyhedronSaturationResult.UNKNOWN, result) | ||
38 | } finally { | ||
39 | operator.close() | ||
40 | } | ||
41 | } | ||
42 | } | ||