package alice.tuprolog; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Ignore; import org.junit.Test; public class DoubleTestCase { @Test public void isAtomic() { assertTrue(new alice.tuprolog.Double(0).isAtomic()); } @Test public void isAtom() { assertFalse(new alice.tuprolog.Double(0).isAtom()); } @Test public void isCompound() { assertFalse(new alice.tuprolog.Double(0).isCompound()); } @Test public void equalsToStruct() { alice.tuprolog.Double zero = new alice.tuprolog.Double(0); Struct s = new Struct(); assertFalse(zero.equals(s)); } @Test public void equalsToVar() throws InvalidTermException { alice.tuprolog.Double one = new alice.tuprolog.Double(1); Var x = new Var("X"); assertFalse(one.equals(x)); } @Test public void equalsToDouble() { alice.tuprolog.Double zero = new alice.tuprolog.Double(0); alice.tuprolog.Double one = new alice.tuprolog.Double(1); assertFalse(zero.equals(one)); alice.tuprolog.Double anotherZero = new alice.tuprolog.Double(0.0); assertTrue(anotherZero.equals(zero)); } @Ignore("Not implemented") @Test public void equalsToFloat() { // TODO Test Double numbers for equality with Float numbers } @Test public void equalsToInt() { alice.tuprolog.Double doubleOne = new alice.tuprolog.Double(1.0); Int integerOne = new Int(1); assertFalse(doubleOne.equals(integerOne)); } @Ignore("Not implemented") @Test public void testEqualsToLong() { // TODO Test Double numbers for equality with Long numbers } }