package com.openxc.util;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.*;
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
import java.util.Date;
import com.openxc.TestUtils;
import com.openxc.units.Degree;
public class AgingDataTest {
AgingData<Degree> data;
Degree value;
@Before
public void setUp() {
value = new Degree(0.0);
data = new AgingData<Degree>(value);
}
@Test
public void testBornNow() {
TestUtils.pause(10);
assertThat(data.getAge(), greaterThan(Long.valueOf(0)));
}
@Test
public void testBornEarlier() {
Date otherTime = new Date(data.getAge() + 100);
data = new AgingData<Degree>(otherTime, value);
assertThat(data.getAge(), greaterThanOrEqualTo(Long.valueOf(100)));
}
@Test
public void testSetOverride() {
assertThat(data.getAge(), lessThanOrEqualTo(Long.valueOf(1)));
data.setTimestamp(data.getAge() + 100);
assertThat(data.getAge(), greaterThanOrEqualTo(Long.valueOf(100)));
}
@Test
public void setInvalidTimstampIgnored() {
long timestamp = data.getTimestamp();
data.setTimestamp(0);
assertEquals(timestamp, data.getTimestamp());
}
@Test
public void testToStringNotNull() {
assertThat(data.toString(), notNullValue());
}
}