From c925edcadbabcdc6de5e0442105dc30a387d3088 Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Wed, 8 May 2019 17:50:28 -0400 Subject: Implement interval arithmetic without exponentiation --- .../tests/interval/SubtractionTest.xtend | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/SubtractionTest.xtend (limited to 'Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/SubtractionTest.xtend') diff --git a/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/SubtractionTest.xtend b/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/SubtractionTest.xtend new file mode 100644 index 00000000..30709a9e --- /dev/null +++ b/Tests/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra.tests/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/tests/interval/SubtractionTest.xtend @@ -0,0 +1,49 @@ +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 SubtractionTest { + @Parameters(name = "{index}: {0} - {1} = {2}") + static def Collection data() { + #[ + #[EMPTY, EMPTY, EMPTY], + #[EMPTY, between(-1, 1), EMPTY], + #[between(-1, 1), EMPTY, EMPTY], + #[UNBOUNDED, UNBOUNDED, UNBOUNDED], + #[UNBOUNDED, upTo(2), UNBOUNDED], + #[UNBOUNDED, above(-2), UNBOUNDED], + #[UNBOUNDED, between(-1, 1), UNBOUNDED], + #[upTo(2), UNBOUNDED, UNBOUNDED], + #[upTo(2), upTo(1), UNBOUNDED], + #[upTo(2), above(-1), upTo(3)], + #[upTo(2), between(-1, 2), upTo(3)], + #[above(-2), UNBOUNDED, UNBOUNDED], + #[above(-2), upTo(1), above(-3)], + #[above(-2), above(-1), UNBOUNDED], + #[above(-2), between(-1, 2), above(-4)], + #[between(-2, 3), UNBOUNDED, UNBOUNDED], + #[between(-2, 3), upTo(1), above(-3)], + #[between(-2, 3), above(-1), upTo(4)], + #[between(-2, 3), between(-1, 2.5), between(-4.5, 4)] + ] + } + + @Parameter(0) public var Interval a + @Parameter(1) public var Interval b + @Parameter(2) public var Interval result + + @Test + def void subtractionTest() { + Assert.assertEquals(result, a - b) + } +} -- cgit v1.2.3-54-g00ecf