package org.jquantlib.testsuite.time;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.util.HashSet;
import org.jquantlib.QL;
import org.jquantlib.time.Period;
import org.jquantlib.time.TimeUnit;
import org.junit.Test;
public class PeriodTest {
@Test
public void testEqualsandHashCode() {
QL.info("Testing equals and hashcode");
final Period oneDay = new Period(1, TimeUnit.Days);
final Period oneYear = new Period(1, TimeUnit.Years);
final Period oneDayAgo = new Period(-1, TimeUnit.Days);
final Period oneDayAgain = new Period(1, TimeUnit.Days);
final Period oneNull = new Period(1, null);
final Period oneNullAgain = new Period(1, null);
final Period twoNull = new Period(1, null);
assertFalse(oneDay.equals(twoNull));
assertEquals(oneNull, oneNullAgain);
assertFalse(oneDay.equals(null));
assertFalse(oneDay.equals(oneNull));
assertEquals(oneDay, oneDay);
assertFalse(oneDay.equals(oneDayAgo));
assertFalse(oneDay.equals(oneYear));
assertEquals(oneDay, oneDayAgain);
HashSet testSet = new HashSet();
testSet.add(oneDay);
testSet.add(oneDayAgo);
assertTrue(testSet.contains(oneDay));
assertFalse(testSet.contains(oneYear));
}
}
Ads help maintain this website.