下面列出了怎么用org.jfree.data.time.SimpleTimePeriod的API类实例代码及写法,或者点击链接到github查看源代码。
/**
* Some checks for the add() methods.
*/
public void testAdd() {
TimePeriodValues tpv = new TimePeriodValues("Test");
MySeriesChangeListener listener = new MySeriesChangeListener();
tpv.addChangeListener(listener);
tpv.add(new TimePeriodValue(new SimpleTimePeriod(new Date(1L),
new Date(3L)), 99.0));
assertEquals(99.0, tpv.getValue(0).doubleValue(), EPSILON);
assertEquals(tpv, listener.getLastEvent().getSource());
// a null item should throw an IllegalArgumentException
boolean pass = false;
try {
tpv.add((TimePeriodValue) null);
}
catch (IllegalArgumentException e) {
pass = true;
}
assertTrue(pass);
}
/**
* Some checks for the getDomainBounds() method.
*/
public void testGetDomainBoundsWithoutInterval() {
// check empty dataset
TimePeriodValuesCollection dataset = new TimePeriodValuesCollection();
Range r = dataset.getDomainBounds(false);
assertNull(r);
// check dataset with one time period
TimePeriodValues s1 = new TimePeriodValues("S1");
s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0);
dataset.addSeries(s1);
r = dataset.getDomainBounds(false);
assertEquals(1500.0, r.getLowerBound(), EPSILON);
assertEquals(1500.0, r.getUpperBound(), EPSILON);
// check dataset with two time periods
s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0);
r = dataset.getDomainBounds(false);
assertEquals(1500.0, r.getLowerBound(), EPSILON);
assertEquals(2250.0, r.getUpperBound(), EPSILON);
}
/**
* Some checks for the add() methods.
*/
public void testAdd() {
TimePeriodValues tpv = new TimePeriodValues("Test");
MySeriesChangeListener listener = new MySeriesChangeListener();
tpv.addChangeListener(listener);
tpv.add(new TimePeriodValue(new SimpleTimePeriod(new Date(1L),
new Date(3L)), 99.0));
assertEquals(99.0, tpv.getValue(0).doubleValue(), EPSILON);
assertEquals(tpv, listener.getLastEvent().getSource());
// a null item should throw an IllegalArgumentException
boolean pass = false;
try {
tpv.add((TimePeriodValue) null);
}
catch (IllegalArgumentException e) {
pass = true;
}
assertTrue(pass);
}
/**
* Some checks for the getDomainBounds() method.
*/
public void testGetDomainBoundsWithoutInterval() {
// check empty dataset
TimePeriodValuesCollection dataset = new TimePeriodValuesCollection();
Range r = dataset.getDomainBounds(false);
assertNull(r);
// check dataset with one time period
TimePeriodValues s1 = new TimePeriodValues("S1");
s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0);
dataset.addSeries(s1);
r = dataset.getDomainBounds(false);
assertEquals(1500.0, r.getLowerBound(), EPSILON);
assertEquals(1500.0, r.getUpperBound(), EPSILON);
// check dataset with two time periods
s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0);
r = dataset.getDomainBounds(false);
assertEquals(1500.0, r.getLowerBound(), EPSILON);
assertEquals(2250.0, r.getUpperBound(), EPSILON);
}
/**
* Some more checks for the getDomainBounds() method.
*
* @see #testGetDomainBoundsWithoutInterval()
*/
public void testGetDomainBoundsWithInterval() {
// check empty dataset
TimePeriodValuesCollection dataset = new TimePeriodValuesCollection();
Range r = dataset.getDomainBounds(true);
assertNull(r);
// check dataset with one time period
TimePeriodValues s1 = new TimePeriodValues("S1");
s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0);
dataset.addSeries(s1);
r = dataset.getDomainBounds(true);
assertEquals(1000.0, r.getLowerBound(), EPSILON);
assertEquals(2000.0, r.getUpperBound(), EPSILON);
// check dataset with two time periods
s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0);
r = dataset.getDomainBounds(true);
assertEquals(1000.0, r.getLowerBound(), EPSILON);
assertEquals(3000.0, r.getUpperBound(), EPSILON);
}
private XYDataset createBarDataset() {
final TimePeriodValuesCollection result = new TimePeriodValuesCollection();
Set<String> nameSet = this.m_dataSetMap.keySet();
for (String name : nameSet) {
final TimePeriodValues series = new TimePeriodValues(name);
Map<Date, ? extends Number> map = m_dataSetMap.get(name);
Iterator<Date> ir = map.keySet().iterator();
while (ir.hasNext()) {
Date key = ir.next();
series.add(new SimpleTimePeriod(key, new Date(key.getTime()
+ (m_interval * OneDay))), map.get(key));
}
result.addSeries(series);
}
return result;
}
/**
* A test for bug report 697153.
*/
@Test
public void test697153() {
TaskSeries s1 = new TaskSeries("S1");
s1.add(new Task("Task 1", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeries s2 = new TaskSeries("S2");
s2.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 4", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeriesCollection tsc = new TaskSeriesCollection();
tsc.add(s1);
tsc.add(s2);
s1.removeAll();
int taskCount = tsc.getColumnCount();
assertEquals(3, taskCount);
}
/**
* Confirm that the equals method can distinguish all the required fields.
*/
@Test
public void testEquals() {
Task t1 = new Task("T", new Date(1), new Date(2));
Task t2 = new Task("T", new Date(1), new Date(2));
assertTrue(t1.equals(t2));
assertTrue(t2.equals(t1));
t1.setDescription("X");
assertFalse(t1.equals(t2));
t2.setDescription("X");
assertTrue(t1.equals(t2));
t1.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertFalse(t1.equals(t2));
t2.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertTrue(t1.equals(t2));
t1.setPercentComplete(0.5);
assertFalse(t1.equals(t2));
t2.setPercentComplete(0.5);
assertTrue(t1.equals(t2));
t1.addSubtask(new Task("T", new Date(22), new Date(33)));
assertFalse(t1.equals(t2));
t2.addSubtask(new Task("T", new Date(22), new Date(33)));
assertTrue(t1.equals(t2));
}
/**
* A test for bug report 697153.
*/
@Test
public void test697153() {
TaskSeries s1 = new TaskSeries("S1");
s1.add(new Task("Task 1", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeries s2 = new TaskSeries("S2");
s2.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 4", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeriesCollection tsc = new TaskSeriesCollection();
tsc.add(s1);
tsc.add(s2);
s1.removeAll();
int taskCount = tsc.getColumnCount();
assertEquals(3, taskCount);
}
/**
* Confirm that the equals method can distinguish all the required fields.
*/
@Test
public void testEquals() {
Task t1 = new Task("T", new Date(1), new Date(2));
Task t2 = new Task("T", new Date(1), new Date(2));
assertTrue(t1.equals(t2));
assertTrue(t2.equals(t1));
t1.setDescription("X");
assertFalse(t1.equals(t2));
t2.setDescription("X");
assertTrue(t1.equals(t2));
t1.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertFalse(t1.equals(t2));
t2.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertTrue(t1.equals(t2));
t1.setPercentComplete(0.5);
assertFalse(t1.equals(t2));
t2.setPercentComplete(0.5);
assertTrue(t1.equals(t2));
t1.addSubtask(new Task("T", new Date(22), new Date(33)));
assertFalse(t1.equals(t2));
t2.addSubtask(new Task("T", new Date(22), new Date(33)));
assertTrue(t1.equals(t2));
}
private XYDataset createTimePeriodDataset()
{
if (sampleTimePeriodDataset == null)
{
TimePeriodValuesCollection dataset = new TimePeriodValuesCollection();
Day today = new Day();
TimePeriodValues series1 = new TimePeriodValues("First");
TimePeriodValues series2 = new TimePeriodValues("Second");
for (int i = 0; i < 24; i++)
{
Minute m0 = new Minute(0, new Hour(i, today));
Minute m1 = new Minute(15, new Hour(i, today));
Minute m2 = new Minute(30, new Hour(i, today));
Minute m3 = new Minute(45, new Hour(i, today));
Minute m4 = new Minute(0, new Hour(i + 1, today));
series1.add(new SimpleTimePeriod(m0.getStart(), m1.getStart()), Math.random());
series2.add(new SimpleTimePeriod(m1.getStart(), m2.getStart()), Math.random());
series1.add(new SimpleTimePeriod(m2.getStart(), m3.getStart()), Math.random());
series2.add(new SimpleTimePeriod(m3.getStart(), m4.getStart()), Math.random());
}
dataset.addSeries(series1);
dataset.addSeries(series2);
sampleTimePeriodDataset = dataset;
}
return sampleTimePeriodDataset;
}
/**
* A test for bug report 697153.
*/
@Test
public void test697153() {
TaskSeries s1 = new TaskSeries("S1");
s1.add(new Task("Task 1", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeries s2 = new TaskSeries("S2");
s2.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 4", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeriesCollection tsc = new TaskSeriesCollection();
tsc.add(s1);
tsc.add(s2);
s1.removeAll();
int taskCount = tsc.getColumnCount();
assertEquals(3, taskCount);
}
/**
* Confirm that the equals method can distinguish all the required fields.
*/
@Test
public void testEquals() {
Task t1 = new Task("T", new Date(1), new Date(2));
Task t2 = new Task("T", new Date(1), new Date(2));
assertTrue(t1.equals(t2));
assertTrue(t2.equals(t1));
t1.setDescription("X");
assertFalse(t1.equals(t2));
t2.setDescription("X");
assertTrue(t1.equals(t2));
t1.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertFalse(t1.equals(t2));
t2.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertTrue(t1.equals(t2));
t1.setPercentComplete(0.5);
assertFalse(t1.equals(t2));
t2.setPercentComplete(0.5);
assertTrue(t1.equals(t2));
t1.addSubtask(new Task("T", new Date(22), new Date(33)));
assertFalse(t1.equals(t2));
t2.addSubtask(new Task("T", new Date(22), new Date(33)));
assertTrue(t1.equals(t2));
}
/**
* A test for bug report 697153.
*/
@Test
public void test697153() {
TaskSeries s1 = new TaskSeries("S1");
s1.add(new Task("Task 1", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeries s2 = new TaskSeries("S2");
s2.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 4", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeriesCollection tsc = new TaskSeriesCollection();
tsc.add(s1);
tsc.add(s2);
s1.removeAll();
int taskCount = tsc.getColumnCount();
assertEquals(3, taskCount);
}
/**
* Confirm that the equals method can distinguish all the required fields.
*/
@Test
public void testEquals() {
Task t1 = new Task("T", new Date(1), new Date(2));
Task t2 = new Task("T", new Date(1), new Date(2));
assertTrue(t1.equals(t2));
assertTrue(t2.equals(t1));
t1.setDescription("X");
assertFalse(t1.equals(t2));
t2.setDescription("X");
assertTrue(t1.equals(t2));
t1.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertFalse(t1.equals(t2));
t2.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertTrue(t1.equals(t2));
t1.setPercentComplete(0.5);
assertFalse(t1.equals(t2));
t2.setPercentComplete(0.5);
assertTrue(t1.equals(t2));
t1.addSubtask(new Task("T", new Date(22), new Date(33)));
assertFalse(t1.equals(t2));
t2.addSubtask(new Task("T", new Date(22), new Date(33)));
assertTrue(t1.equals(t2));
}
/**
* Some tests for the getMinStartIndex() method.
*/
public void testGetMinStartIndex() {
TimePeriodValues s = new TimePeriodValues("Test");
assertEquals(-1, s.getMinStartIndex());
s.add(new SimpleTimePeriod(100L, 200L), 1.0);
assertEquals(0, s.getMinStartIndex());
s.add(new SimpleTimePeriod(300L, 400L), 2.0);
assertEquals(0, s.getMinStartIndex());
s.add(new SimpleTimePeriod(0L, 50L), 3.0);
assertEquals(2, s.getMinStartIndex());
}
/**
* Some tests for the getMaxStartIndex() method.
*/
public void testGetMaxStartIndex() {
TimePeriodValues s = new TimePeriodValues("Test");
assertEquals(-1, s.getMaxStartIndex());
s.add(new SimpleTimePeriod(100L, 200L), 1.0);
assertEquals(0, s.getMaxStartIndex());
s.add(new SimpleTimePeriod(300L, 400L), 2.0);
assertEquals(1, s.getMaxStartIndex());
s.add(new SimpleTimePeriod(0L, 50L), 3.0);
assertEquals(1, s.getMaxStartIndex());
}
/**
* Some tests for the getMinMiddleIndex() method.
*/
public void testGetMinMiddleIndex() {
TimePeriodValues s = new TimePeriodValues("Test");
assertEquals(-1, s.getMinMiddleIndex());
s.add(new SimpleTimePeriod(100L, 200L), 1.0);
assertEquals(0, s.getMinMiddleIndex());
s.add(new SimpleTimePeriod(300L, 400L), 2.0);
assertEquals(0, s.getMinMiddleIndex());
s.add(new SimpleTimePeriod(0L, 50L), 3.0);
assertEquals(2, s.getMinMiddleIndex());
}
/**
* Some tests for the getMaxMiddleIndex() method.
*/
public void testGetMaxMiddleIndex() {
TimePeriodValues s = new TimePeriodValues("Test");
assertEquals(-1, s.getMaxMiddleIndex());
s.add(new SimpleTimePeriod(100L, 200L), 1.0);
assertEquals(0, s.getMaxMiddleIndex());
s.add(new SimpleTimePeriod(300L, 400L), 2.0);
assertEquals(1, s.getMaxMiddleIndex());
s.add(new SimpleTimePeriod(0L, 50L), 3.0);
assertEquals(1, s.getMaxMiddleIndex());
s.add(new SimpleTimePeriod(150L, 200L), 4.0);
assertEquals(1, s.getMaxMiddleIndex());
}
/**
* Some tests for the getMinEndIndex() method.
*/
public void getMinEndIndex() {
TimePeriodValues s = new TimePeriodValues("Test");
assertEquals(-1, s.getMinEndIndex());
s.add(new SimpleTimePeriod(100L, 200L), 1.0);
assertEquals(0, s.getMinEndIndex());
s.add(new SimpleTimePeriod(300L, 400L), 2.0);
assertEquals(0, s.getMinEndIndex());
s.add(new SimpleTimePeriod(0L, 50L), 3.0);
assertEquals(2, s.getMinEndIndex());
}
/**
* Some tests for the getMaxEndIndex() method.
*/
public void getMaxEndIndex() {
TimePeriodValues s = new TimePeriodValues("Test");
assertEquals(-1, s.getMaxEndIndex());
s.add(new SimpleTimePeriod(100L, 200L), 1.0);
assertEquals(0, s.getMaxEndIndex());
s.add(new SimpleTimePeriod(300L, 400L), 2.0);
assertEquals(1, s.getMaxEndIndex());
s.add(new SimpleTimePeriod(0L, 50L), 3.0);
assertEquals(1, s.getMaxEndIndex());
}
/**
* Two objects that are equal are required to return the same hashCode.
*/
public void testHashcode() {
SimpleTimePeriod s1 = new SimpleTimePeriod(new Date(10L),
new Date(20L));
SimpleTimePeriod s2 = new SimpleTimePeriod(new Date(10L),
new Date(20L));
assertTrue(s1.equals(s2));
int h1 = s1.hashCode();
int h2 = s2.hashCode();
assertEquals(h1, h2);
}
/**
* Some more checks for the getDomainBounds() method.
*
* @see #testGetDomainBoundsWithoutInterval()
*/
public void testGetDomainBoundsWithInterval() {
// check empty dataset
TimePeriodValuesCollection dataset = new TimePeriodValuesCollection();
Range r = dataset.getDomainBounds(true);
assertNull(r);
// check dataset with one time period
TimePeriodValues s1 = new TimePeriodValues("S1");
s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0);
dataset.addSeries(s1);
r = dataset.getDomainBounds(true);
assertEquals(1000.0, r.getLowerBound(), EPSILON);
assertEquals(2000.0, r.getUpperBound(), EPSILON);
// check dataset with two time periods
s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0);
r = dataset.getDomainBounds(true);
assertEquals(1000.0, r.getLowerBound(), EPSILON);
assertEquals(3000.0, r.getUpperBound(), EPSILON);
// add a third time period
s1.add(new SimpleTimePeriod(6000L, 7000L), 1.5);
r = dataset.getDomainBounds(true);
assertEquals(1000.0, r.getLowerBound(), EPSILON);
assertEquals(7000.0, r.getUpperBound(), EPSILON);
// add a fourth time period
s1.add(new SimpleTimePeriod(4000L, 5000L), 1.4);
r = dataset.getDomainBounds(true);
assertEquals(1000.0, r.getLowerBound(), EPSILON);
assertEquals(7000.0, r.getUpperBound(), EPSILON);
}
/**
* Confirm that the equals method can distinguish all the required fields.
*/
public void testEquals() {
Task t1 = new Task("T", new Date(1), new Date(2));
Task t2 = new Task("T", new Date(1), new Date(2));
assertTrue(t1.equals(t2));
assertTrue(t2.equals(t1));
t1.setDescription("X");
assertFalse(t1.equals(t2));
t2.setDescription("X");
assertTrue(t1.equals(t2));
t1.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertFalse(t1.equals(t2));
t2.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertTrue(t1.equals(t2));
t1.setPercentComplete(0.5);
assertFalse(t1.equals(t2));
t2.setPercentComplete(0.5);
assertTrue(t1.equals(t2));
t1.addSubtask(new Task("T", new Date(22), new Date(33)));
assertFalse(t1.equals(t2));
t2.addSubtask(new Task("T", new Date(22), new Date(33)));
assertTrue(t1.equals(t2));
}
/**
* A test for bug report 697153.
*/
public void test697153() {
TaskSeries s1 = new TaskSeries("S1");
s1.add(new Task("Task 1", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeries s2 = new TaskSeries("S2");
s2.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 4", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeriesCollection tsc = new TaskSeriesCollection();
tsc.add(s1);
tsc.add(s2);
s1.removeAll();
int taskCount = tsc.getColumnCount();
assertEquals(3, taskCount);
}
/**
* Check that an instance is equal to itself.
*
* SourceForge Bug ID: 558850.
*/
public void testEqualsSelf() {
SimpleTimePeriod p = new SimpleTimePeriod(
new Date(1000L), new Date(1001L)
);
assertTrue(p.equals(p));
}
/**
* Two objects that are equal are required to return the same hashCode.
*/
public void testHashcode() {
SimpleTimePeriod s1 = new SimpleTimePeriod(
new Date(10L), new Date(20L)
);
SimpleTimePeriod s2 = new SimpleTimePeriod(
new Date(10L), new Date(20L)
);
assertTrue(s1.equals(s2));
int h1 = s1.hashCode();
int h2 = s2.hashCode();
assertEquals(h1, h2);
}
/**
* This class is immutable, so it should not implement Cloneable.
*/
public void testClone() {
SimpleTimePeriod s1 = new SimpleTimePeriod(
new Date(10L), new Date(20L)
);
assertFalse(s1 instanceof Cloneable);
}
/**
* Confirm that the equals method can distinguish all the required fields.
*/
public void testEquals() {
Task t1 = new Task("T", new Date(1), new Date(2));
Task t2 = new Task("T", new Date(1), new Date(2));
assertTrue(t1.equals(t2));
assertTrue(t2.equals(t1));
t1.setDescription("X");
assertFalse(t1.equals(t2));
t2.setDescription("X");
assertTrue(t1.equals(t2));
t1.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertFalse(t1.equals(t2));
t2.setDuration(new SimpleTimePeriod(new Date(2), new Date(3)));
assertTrue(t1.equals(t2));
t1.setPercentComplete(0.5);
assertFalse(t1.equals(t2));
t2.setPercentComplete(0.5);
assertTrue(t1.equals(t2));
t1.addSubtask(new Task("T", new Date(22), new Date(33)));
assertFalse(t1.equals(t2));
t2.addSubtask(new Task("T", new Date(22), new Date(33)));
assertTrue(t1.equals(t2));
}
/**
* A test for bug report 697153.
*/
public void test697153() {
TaskSeries s1 = new TaskSeries("S1");
s1.add(new Task("Task 1", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s1.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeries s2 = new TaskSeries("S2");
s2.add(new Task("Task 2", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 3", new SimpleTimePeriod(new Date(),
new Date())));
s2.add(new Task("Task 4", new SimpleTimePeriod(new Date(),
new Date())));
TaskSeriesCollection tsc = new TaskSeriesCollection();
tsc.add(s1);
tsc.add(s2);
s1.removeAll();
int taskCount = tsc.getColumnCount();
assertEquals(3, taskCount);
}