From 1999ab4733071c6a4c9989c137eb44ec62b09847 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Thu, 9 May 2019 00:49:19 -0400 Subject: Interval comparison --- .../logic2viatra/tests/interval/RelationTest.xtend | 120 +++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/RelationTest.xtend (limited to 'Tests') diff --git a/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/RelationTest.xtend b/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/RelationTest.xtend new file mode 100644 index 00000000..23fc69ea --- /dev/null +++ b/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/RelationTest.xtend @@ -0,0 +1,120 @@ +package hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests.interval + +import hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.interval.Interval +import java.util.Collection +import org.junit.Assert +import org.junit.Test +import org.junit.runner.RunWith +import org.junit.runners.Parameterized +import org.junit.runners.Parameterized.Parameter +import org.junit.runners.Parameterized.Parameters + +import static hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.interval.Interval.* + +@RunWith(Parameterized) +class RelationTest { + @Parameters(name = "{index}: {0} <> {1}") + static def Collection data() { + #[ + #[EMPTY, EMPTY, true, false, true, false], + #[EMPTY, between(1, 2), true, false, true, false], + #[between(1, 2), EMPTY, true, false, true, false], + #[upTo(1), upTo(0), false, true, false, true], + #[upTo(1), upTo(1), false, true, false, true], + #[upTo(1), upTo(2), false, true, false, true], + #[upTo(1), above(0), false, true, false, true], + #[upTo(1), above(1), false, true, false, true], + #[upTo(1), above(2), false, false, true, true], + #[upTo(1), between(-1, -1), false, true, false, true], + #[upTo(1), between(-1, 0), false, true, false, true], + #[upTo(1), between(-1, 1), false, true, false, true], + #[upTo(1), between(-1, 2), false, true, false, true], + #[upTo(1), between(1, 1), false, true, false, true], + #[upTo(1), between(1, 2), false, true, false, true], + #[upTo(1), between(2, 2), false, false, true, true], + #[upTo(1), between(2, 3), false, false, true, true], + #[above(1), upTo(0), false, false, false, false], + #[above(1), upTo(1), false, true, false, false], + #[above(1), upTo(2), false, true, false, true], + #[above(1), above(0), false, true, false, true], + #[above(1), above(1), false, true, false, true], + #[above(1), above(2), false, true, false, true], + #[above(1), between(-1, -1), false, false, false, false], + #[above(1), between(-1, 0), false, false, false, false], + #[above(1), between(-1, 1), false, true, false, false], + #[above(1), between(-1, 2), false, true, false, true], + #[above(1), between(1, 1), false, true, false, false], + #[above(1), between(1, 2), false, true, false, true], + #[above(1), between(2, 2), false, true, false, true], + #[above(1), between(2, 3), false, true, false, true], + #[between(1, 1), upTo(0), false, false, false, false], + #[between(1, 1), upTo(1), false, true, false, false], + #[between(1, 1), upTo(2), false, true, false, true], + #[between(1, 1), above(0), false, true, false, true], + #[between(1, 1), above(1), false, true, false, true], + #[between(1, 1), above(2), false, false, true, true], + #[between(1, 1), between(-1, -1), false, false, false, false], + #[between(1, 1), between(-1, 0), false, false, false, false], + #[between(1, 1), between(-1, 1), false, true, false, false], + #[between(1, 1), between(-1, 2), false, true, false, true], + #[between(1, 1), between(1, 1), true, true, false, false], + #[between(1, 1), between(1, 2), false, true, false, true], + #[between(1, 1), between(2, 2), false, false, true, true], + #[between(1, 1), between(2, 3), false, false, true, true], + #[between(-1, 1), upTo(-2), false, false, false, false], + #[between(-1, 1), upTo(-1), false, true, false, false], + #[between(-1, 1), upTo(0), false, true, false, true], + #[between(-1, 1), upTo(1), false, true, false, true], + #[between(-1, 1), upTo(2), false, true, false, true], + #[between(-1, 1), above(-2), false, true, false, true], + #[between(-1, 1), above(-1), false, true, false, true], + #[between(-1, 1), above(0), false, true, false, true], + #[between(-1, 1), above(1), false, true, false, true], + #[between(-1, 1), above(2), false, false, true, true], + #[between(-1, 1), between(-3, -2), false, false, false, false], + #[between(-1, 1), between(-2, -2), false, false, false, false], + #[between(-1, 1), between(-2, -1), false, true, false, false], + #[between(-1, 1), between(-2, 0), false, true, false, true], + #[between(-1, 1), between(-2, 1), false, true, false, true], + #[between(-1, 1), between(-2, 2), false, true, false, true], + #[between(-1, 1), between(-1, -1), false, true, false, false], + #[between(-1, 1), between(-1, 0), false, true, false, true], + #[between(-1, 1), between(-1, 1), false, true, false, true], + #[between(-1, 1), between(-1, 2), false, true, false, true], + #[between(-1, 1), between(0, 0), false, true, false, true], + #[between(-1, 1), between(0, 1), false, true, false, true], + #[between(-1, 1), between(0, 2), false, true, false, true], + #[between(-1, 1), between(1, 1), false, true, false, true], + #[between(-1, 1), between(1, 2), false, true, false, true], + #[between(-1, 1), between(2, 2), false, false, true, true], + #[between(-1, 1), between(2, 3), false, false, true, true] + ] + } + + @Parameter(0) public var Interval a + @Parameter(1) public var Interval b + @Parameter(2) public var boolean mustEqual + @Parameter(3) public var boolean mayEqual + @Parameter(4) public var boolean mustBeLessThan + @Parameter(5) public var boolean mayBeLessThan + + @Test + def void mustEqualTest() { + Assert.assertEquals(mustEqual, a.mustEqual(b)) + } + + @Test + def void mayEqualTest() { + Assert.assertEquals(mayEqual, a.mayEqual(b)) + } + + @Test + def void mustBeLessThanTest() { + Assert.assertEquals(mustBeLessThan, a.mustBeLessThan(b)) + } + + @Test + def void mayBeLessThanTest() { + Assert.assertEquals(mayBeLessThan, a.mayBeLessThan(b)) + } +} -- cgit v1.2.3-54-g00ecf