/* * File: AbstractTemporalTest.java * Authors: Kevin R. Dixon * Company: Sandia National Laboratories * Project: Cognitive Foundry * * Copyright Jul 13, 2009, Sandia Corporation. * Under the terms of Contract DE-AC04-94AL85000, there is a non-exclusive * license for use of this work by or on behalf of the U.S. Government. * Export of this program may require a license from the United States * Government. See CopyrightHistory.txt for complete details. * */ package gov.sandia.cognition.util; import java.util.Date; import junit.framework.TestCase; import java.util.Random; /** * Unit tests for AbstractTemporalTest. * * @author krdixon */ public class AbstractTemporalTest extends TestCase { /** * Random number generator to use for a fixed random seed. */ public final Random RANDOM = new Random( 1 ); /** * Default tolerance of the regression tests, {@value}. */ public final double TOLERANCE = 1e-5; /** * Tests for class AbstractTemporalTest. * @param testName Name of the test. */ public AbstractTemporalTest( String testName) { super(testName); } /** * Dummy */ public class DummyTemporal extends AbstractTemporal { /** * */ public DummyTemporal() { super(); } /** * * @param time */ public DummyTemporal( Date time ) { super( time ); } } /** * Creates a new AbstractTemporal * @return AbstractTemporal */ public AbstractTemporal createInstance() { return new DummyTemporal( new Date( RANDOM.nextLong() ) ); } /** * */ public void testConstructors() { System.out.println( "Constructors" ); AbstractTemporal t = new DummyTemporal(); assertNull( t.getTime() ); Date time = new Date(); t = new DummyTemporal(time); assertSame( time, t.getTime() ); } /** * Test of clone method, of class AbstractTemporal. */ public void testClone() { System.out.println("clone"); AbstractTemporal instance = this.createInstance(); AbstractTemporal clone = instance.clone(); assertNotNull( clone ); assertNotSame( instance, clone ); assertNotNull( clone.getTime() ); assertNotSame( instance.getTime(), clone.getTime() ); assertEquals( 0, instance.compareTo(clone) ); } /** * Test of compareTo method, of class AbstractTemporal. */ public void testCompareTo() { System.out.println("compareTo"); AbstractTemporal i1 = this.createInstance(); AbstractTemporal i2 = this.createInstance(); int result = i1.getTime().compareTo(i2.getTime()); assertEquals( result, i1.compareTo(i2) ); } /** * Test of getTime method, of class AbstractTemporal. */ public void testGetTime() { System.out.println("getTime"); AbstractTemporal instance = this.createInstance(); assertNotNull( instance.getTime() ); } /** * Test of setTime method, of class AbstractTemporal. */ public void testSetTime() { System.out.println("setTime"); AbstractTemporal instance = this.createInstance(); Date time = instance.getTime(); assertNotNull( time ); instance.setTime(null); assertNull( instance.getTime() ); instance.setTime(time); assertSame( time, instance.getTime() ); } }