Money extends Magnitude<Money> { public boolean isLessThanZero() { return amount < 0; } Money(final double amount, final String currency);  Money(final long amount, final String currency); Money add(final Money money); double doubleValue(); float floatValue(); BigDecimal getAmount(); String getCurrency(); boolean hasSameCurrency(final Money money); int intValue(); @Override boolean isEqualTo(final Money magnitude); boolean isGreaterThanZero(); @Override boolean isLessThan(final Money magnitude); boolean isLessThanZero(); boolean isZero(); long longValue(); Money subtract(final Money money); @Override boolean equals(final Object other); boolean equals(final Money other); @Override int hashCode(); @Override String toString();  }
@Test public void testIsLessThanZero() { final Money m1 = new Money(-1, "usd"); assertTrue(m1.isLessThanZero()); }
@Test public void testIsLessThanZeroFailsWhenZero() { final Money m1 = new Money(0, "usd"); assertFalse(m1.isLessThanZero()); }