Java源码示例:org.jfree.chart.axis.DateTickMarkPosition

示例1
/**
 * Confirm that the equals method can distinguish all the required fields.
 */
public void testEquals() {

    DateAxis a1 = new DateAxis("Test");
    DateAxis a2 = new DateAxis("Test");
    assertTrue(a1.equals(a2));
    assertFalse(a1.equals(null));
    assertFalse(a1.equals("Some non-DateAxis object"));

    // tickUnit
    a1.setTickUnit(new DateTickUnit(DateTickUnitType.DAY, 7));
    assertFalse(a1.equals(a2));
    a2.setTickUnit(new DateTickUnit(DateTickUnitType.DAY, 7));
    assertTrue(a1.equals(a2));

    // dateFormatOverride
    a1.setDateFormatOverride(new SimpleDateFormat("yyyy"));
    assertFalse(a1.equals(a2));
    a2.setDateFormatOverride(new SimpleDateFormat("yyyy"));
    assertTrue(a1.equals(a2));

    // tickMarkPosition
    a1.setTickMarkPosition(DateTickMarkPosition.END);
    assertFalse(a1.equals(a2));
    a2.setTickMarkPosition(DateTickMarkPosition.END);
    assertTrue(a1.equals(a2));

    // timeline
    a1.setTimeline(SegmentedTimeline.newMondayThroughFridayTimeline());
    assertFalse(a1.equals(a2));
    a2.setTimeline(SegmentedTimeline.newMondayThroughFridayTimeline());
    assertTrue(a1.equals(a2));

}
 
示例2
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 millisecond.
 */
public void testPreviousStandardDateMillisecondA() {
    MyDateAxis axis = new MyDateAxis("Millisecond");
    Millisecond m0 = new Millisecond(458, 58, 31, 12, 1, 4, 2007);
    Millisecond m1 = new Millisecond(459, 58, 31, 12, 1, 4, 2007);

    Date d0 = new Date(m0.getFirstMillisecond());
    Date end = new Date(m1.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.MILLISECOND, 1);
    axis.setTickUnit(unit);

    // START: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    // MIDDLE: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    // END: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());
}
 
示例3
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 10 milliseconds (just for the sake of having a multiple).
 */
public void testPreviousStandardDateMillisecondB() {
    MyDateAxis axis = new MyDateAxis("Millisecond");
    Millisecond m0 = new Millisecond(458, 58, 31, 12, 1, 4, 2007);
    Millisecond m1 = new Millisecond(459, 58, 31, 12, 1, 4, 2007);

    Date d0 = new Date(m0.getFirstMillisecond());
    Date end = new Date(m1.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.MILLISECOND, 10);
    axis.setTickUnit(unit);

    // START: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    // MIDDLE: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    // END: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());
}
 
示例4
/**
 * A test to reproduce bug 2201869.
 */
public void testBug2201869() {
    TimeZone tz = TimeZone.getTimeZone("GMT");
    GregorianCalendar c = new GregorianCalendar(tz, Locale.UK);
    DateAxis axis = new DateAxis("Date", tz, Locale.UK);
    SimpleDateFormat sdf = new SimpleDateFormat("d-MMM-yyyy", Locale.UK);
    sdf.setCalendar(c);
    axis.setTickUnit(new DateTickUnit(DateTickUnitType.MONTH, 1, sdf));
    Day d1 = new Day(1, 3, 2008);
    d1.peg(c);
    Day d2 = new Day(30, 6, 2008);
    d2.peg(c);
    axis.setRange(d1.getStart(), d2.getEnd());
    BufferedImage image = new BufferedImage(200, 100,
            BufferedImage.TYPE_INT_ARGB);
    Graphics2D g2 = image.createGraphics();
    Rectangle2D area = new Rectangle2D.Double(0.0, 0.0, 200, 100);
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    List ticks = axis.refreshTicks(g2, new AxisState(), area,
            RectangleEdge.BOTTOM);
    assertEquals(3, ticks.size());
    DateTick t1 = (DateTick) ticks.get(0);
    assertEquals("31-Mar-2008", t1.getText());
    DateTick t2 = (DateTick) ticks.get(1);
    assertEquals("30-Apr-2008", t2.getText());
    DateTick t3 = (DateTick) ticks.get(2);
    assertEquals("31-May-2008", t3.getText());

    // now repeat for a vertical axis
    ticks = axis.refreshTicks(g2, new AxisState(), area,
            RectangleEdge.LEFT);
    assertEquals(3, ticks.size());
    t1 = (DateTick) ticks.get(0);
    assertEquals("31-Mar-2008", t1.getText());
    t2 = (DateTick) ticks.get(1);
    assertEquals("30-Apr-2008", t2.getText());
    t3 = (DateTick) ticks.get(2);
    assertEquals("31-May-2008", t3.getText());
}
 
示例5
/**
 * Test equals() method.
 */
public void testEquals() {
    assertEquals(DateTickMarkPosition.START, DateTickMarkPosition.START);
    assertEquals(DateTickMarkPosition.MIDDLE, DateTickMarkPosition.MIDDLE);
    assertEquals(DateTickMarkPosition.END, DateTickMarkPosition.END);
    assertFalse(DateTickMarkPosition.START.equals(null));
    assertFalse(DateTickMarkPosition.START.equals(
            DateTickMarkPosition.END));
    assertFalse(DateTickMarkPosition.MIDDLE.equals(
            DateTickMarkPosition.END));
}
 
示例6
/**
 * Two objects that are equal are required to return the same hashCode.
 */
public void testHashCode() {
    DateTickMarkPosition a1 = DateTickMarkPosition.END;
    DateTickMarkPosition a2 = DateTickMarkPosition.END;
    assertTrue(a1.equals(a2));
    int h1 = a1.hashCode();
    int h2 = a2.hashCode();
    assertEquals(h1, h2);
}
 
示例7
/**
 * Confirm that the equals method can distinguish all the required fields.
 */
public void testEquals() {
    
    DateAxis a1 = new DateAxis("Test");
    DateAxis a2 = new DateAxis("Test");
    assertTrue(a1.equals(a2));
    assertFalse(a1.equals(null));
    assertFalse(a1.equals("Some non-DateAxis object"));
    
    // tickUnit 
    a1.setTickUnit(new DateTickUnit(DateTickUnit.DAY, 7));
    assertFalse(a1.equals(a2));
    a2.setTickUnit(new DateTickUnit(DateTickUnit.DAY, 7));
    assertTrue(a1.equals(a2));

    // dateFormatOverride 
    a1.setDateFormatOverride(new SimpleDateFormat("yyyy"));
    assertFalse(a1.equals(a2));
    a2.setDateFormatOverride(new SimpleDateFormat("yyyy"));
    assertTrue(a1.equals(a2));

    // tickMarkPosition
    a1.setTickMarkPosition(DateTickMarkPosition.END);
    assertFalse(a1.equals(a2));
    a2.setTickMarkPosition(DateTickMarkPosition.END);
    assertTrue(a1.equals(a2));
    
    // timeline
    a1.setTimeline(SegmentedTimeline.newMondayThroughFridayTimeline());
    assertFalse(a1.equals(a2));
    a2.setTimeline(SegmentedTimeline.newMondayThroughFridayTimeline());
    assertTrue(a1.equals(a2));
    
}
 
示例8
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 millisecond.
 */
public void testPreviousStandardDateMillisecondA() {
    MyDateAxis axis = new MyDateAxis("Millisecond");
    Millisecond m0 = new Millisecond(458, 58, 31, 12, 1, 4, 2007);
    Millisecond m1 = new Millisecond(459, 58, 31, 12, 1, 4, 2007);

    Date d0 = new Date(m0.getFirstMillisecond());
    Date end = new Date(m1.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.MILLISECOND, 1);
    axis.setTickUnit(unit);

    // START: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    // MIDDLE: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());
    
    // END: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());
}
 
示例9
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 10 milliseconds (just for the sake of having a multiple).
 */
public void testPreviousStandardDateMillisecondB() {
    MyDateAxis axis = new MyDateAxis("Millisecond");
    Millisecond m0 = new Millisecond(458, 58, 31, 12, 1, 4, 2007);
    Millisecond m1 = new Millisecond(459, 58, 31, 12, 1, 4, 2007);

    Date d0 = new Date(m0.getFirstMillisecond());
    Date end = new Date(m1.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.MILLISECOND, 10);
    axis.setTickUnit(unit);

    // START: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    // MIDDLE: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());
    
    // END: check d0
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d0, end);
    psd = axis.previousStandardDate(d0, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());
}
 
示例10
/**
 * Test equals() method.
 */
public void testEquals() {
    assertEquals(DateTickMarkPosition.START, DateTickMarkPosition.START);
    assertEquals(DateTickMarkPosition.MIDDLE, DateTickMarkPosition.MIDDLE);
    assertEquals(DateTickMarkPosition.END, DateTickMarkPosition.END);
    assertFalse(DateTickMarkPosition.START.equals(null));
    assertFalse(
        DateTickMarkPosition.START.equals(DateTickMarkPosition.END)
    );
    assertFalse(
        DateTickMarkPosition.MIDDLE.equals(DateTickMarkPosition.END)
    );
}
 
示例11
/**
 * Two objects that are equal are required to return the same hashCode. 
 */
public void testHashCode() {
    DateTickMarkPosition a1 = DateTickMarkPosition.END;
    DateTickMarkPosition a2 = DateTickMarkPosition.END;
    assertTrue(a1.equals(a2));
    int h1 = a1.hashCode();
    int h2 = a2.hashCode();
    assertEquals(h1, h2);
}
 
示例12
public XYChartBuilder setDateXAxis(final boolean showAxisValues)
{
  xAxis = new DateAxis();
  ((DateAxis) xAxis).setTickMarkPosition(DateTickMarkPosition.MIDDLE);
  xAxis.setLowerMargin(0.0);
  xAxis.setUpperMargin(0.0);
  xAxis.setVisible(showAxisValues);
  plot.setDomainAxis(xAxis);
  return this;
}
 
示例13
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 year.
 */
public void testPreviousStandardDateYearA() {
    MyDateAxis axis = new MyDateAxis("Year");
    Year y2006 = new Year(2006);
    Year y2007 = new Year(2007);

    // five dates to check...
    Date d0 = new Date(y2006.getFirstMillisecond());
    Date d1 = new Date(y2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(y2006.getMiddleMillisecond());
    Date d3 = new Date(y2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(y2006.getLastMillisecond());

    Date end = new Date(y2007.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.YEAR, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例14
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 10 years (just for the sake of having a multiple).
 */
public void testPreviousStandardDateYearB() {
    MyDateAxis axis = new MyDateAxis("Year");
    Year y2006 = new Year(2006);
    Year y2007 = new Year(2007);

    // five dates to check...
    Date d0 = new Date(y2006.getFirstMillisecond());
    Date d1 = new Date(y2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(y2006.getMiddleMillisecond());
    Date d3 = new Date(y2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(y2006.getLastMillisecond());

    Date end = new Date(y2007.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.YEAR, 10);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例15
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 month.
 */
public void testPreviousStandardDateMonthA() {
    MyDateAxis axis = new MyDateAxis("Month");
    Month nov2006 = new Month(11, 2006);
    Month dec2006 = new Month(12, 2006);

    // five dates to check...
    Date d0 = new Date(nov2006.getFirstMillisecond());
    Date d1 = new Date(nov2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(nov2006.getMiddleMillisecond());
    Date d3 = new Date(nov2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(nov2006.getLastMillisecond());

    Date end = new Date(dec2006.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.MONTH, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例16
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 3 months (just for the sake of having a multiple).
 */
public void testPreviousStandardDateMonthB() {
    MyDateAxis axis = new MyDateAxis("Month");
    Month nov2006 = new Month(11, 2006);
    Month dec2006 = new Month(12, 2006);

    // five dates to check...
    Date d0 = new Date(nov2006.getFirstMillisecond());
    Date d1 = new Date(nov2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(nov2006.getMiddleMillisecond());
    Date d3 = new Date(nov2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(nov2006.getLastMillisecond());

    Date end = new Date(dec2006.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.MONTH, 3);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例17
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 day.
 */
public void testPreviousStandardDateDayA() {
    MyDateAxis axis = new MyDateAxis("Day");
    Day apr12007 = new Day(1, 4, 2007);
    Day apr22007 = new Day(2, 4, 2007);

    // five dates to check...
    Date d0 = new Date(apr12007.getFirstMillisecond());
    Date d1 = new Date(apr12007.getFirstMillisecond() + 500L);
    Date d2 = new Date(apr12007.getMiddleMillisecond());
    Date d3 = new Date(apr12007.getMiddleMillisecond() + 500L);
    Date d4 = new Date(apr12007.getLastMillisecond());

    Date end = new Date(apr22007.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.DAY, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例18
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 7 days (just for the sake of having a multiple).
 */
public void testPreviousStandardDateDayB() {
    MyDateAxis axis = new MyDateAxis("Day");
    Day apr12007 = new Day(1, 4, 2007);
    Day apr22007 = new Day(2, 4, 2007);

    // five dates to check...
    Date d0 = new Date(apr12007.getFirstMillisecond());
    Date d1 = new Date(apr12007.getFirstMillisecond() + 500L);
    Date d2 = new Date(apr12007.getMiddleMillisecond());
    Date d3 = new Date(apr12007.getMiddleMillisecond() + 500L);
    Date d4 = new Date(apr12007.getLastMillisecond());

    Date end = new Date(apr22007.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.DAY, 7);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例19
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 hour.
 */
public void testPreviousStandardDateHourA() {
    MyDateAxis axis = new MyDateAxis("Hour");
    Hour h0 = new Hour(12, 1, 4, 2007);
    Hour h1 = new Hour(13, 1, 4, 2007);

    // five dates to check...
    Date d0 = new Date(h0.getFirstMillisecond());
    Date d1 = new Date(h0.getFirstMillisecond() + 500L);
    Date d2 = new Date(h0.getMiddleMillisecond());
    Date d3 = new Date(h0.getMiddleMillisecond() + 500L);
    Date d4 = new Date(h0.getLastMillisecond());

    Date end = new Date(h1.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.HOUR, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例20
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 6 hours (just for the sake of having a multiple).
 */
public void testPreviousStandardDateHourB() {
    MyDateAxis axis = new MyDateAxis("Hour");
    Hour h0 = new Hour(12, 1, 4, 2007);
    Hour h1 = new Hour(13, 1, 4, 2007);

    // five dates to check...
    Date d0 = new Date(h0.getFirstMillisecond());
    Date d1 = new Date(h0.getFirstMillisecond() + 500L);
    Date d2 = new Date(h0.getMiddleMillisecond());
    Date d3 = new Date(h0.getMiddleMillisecond() + 500L);
    Date d4 = new Date(h0.getLastMillisecond());

    Date end = new Date(h1.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.HOUR, 6);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例21
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 second.
 */
public void testPreviousStandardDateSecondA() {
    MyDateAxis axis = new MyDateAxis("Second");
    Second s0 = new Second(58, 31, 12, 1, 4, 2007);
    Second s1 = new Second(59, 31, 12, 1, 4, 2007);

    // five dates to check...
    Date d0 = new Date(s0.getFirstMillisecond());
    Date d1 = new Date(s0.getFirstMillisecond() + 50L);
    Date d2 = new Date(s0.getMiddleMillisecond());
    Date d3 = new Date(s0.getMiddleMillisecond() + 50L);
    Date d4 = new Date(s0.getLastMillisecond());

    Date end = new Date(s1.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.SECOND, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例22
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 5 seconds (just for the sake of having a multiple).
 */
public void testPreviousStandardDateSecondB() {
    MyDateAxis axis = new MyDateAxis("Second");
    Second s0 = new Second(58, 31, 12, 1, 4, 2007);
    Second s1 = new Second(59, 31, 12, 1, 4, 2007);

    // five dates to check...
    Date d0 = new Date(s0.getFirstMillisecond());
    Date d1 = new Date(s0.getFirstMillisecond() + 50L);
    Date d2 = new Date(s0.getMiddleMillisecond());
    Date d3 = new Date(s0.getMiddleMillisecond() + 50L);
    Date d4 = new Date(s0.getLastMillisecond());

    Date end = new Date(s1.getLastMillisecond());

    DateTickUnit unit = new DateTickUnit(DateTickUnitType.SECOND, 5);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd, TimeZone.getDefault());
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例23
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 year.
 */
public void testPreviousStandardDateYearA() {
    MyDateAxis axis = new MyDateAxis("Year");
    Year y2006 = new Year(2006);
    Year y2007 = new Year(2007);
    
    // five dates to check...
    Date d0 = new Date(y2006.getFirstMillisecond());
    Date d1 = new Date(y2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(y2006.getMiddleMillisecond());
    Date d3 = new Date(y2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(y2006.getLastMillisecond());
    
    Date end = new Date(y2007.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.YEAR, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例24
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 10 years (just for the sake of having a multiple).
 */
public void testPreviousStandardDateYearB() {
    MyDateAxis axis = new MyDateAxis("Year");
    Year y2006 = new Year(2006);
    Year y2007 = new Year(2007);
    
    // five dates to check...
    Date d0 = new Date(y2006.getFirstMillisecond());
    Date d1 = new Date(y2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(y2006.getMiddleMillisecond());
    Date d3 = new Date(y2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(y2006.getLastMillisecond());
    
    Date end = new Date(y2007.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.YEAR, 10);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例25
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 month.
 */
public void testPreviousStandardDateMonthA() {
    MyDateAxis axis = new MyDateAxis("Month");
    Month nov2006 = new Month(11, 2006);
    Month dec2006 = new Month(12, 2006);
    
    // five dates to check...
    Date d0 = new Date(nov2006.getFirstMillisecond());
    Date d1 = new Date(nov2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(nov2006.getMiddleMillisecond());
    Date d3 = new Date(nov2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(nov2006.getLastMillisecond());
    
    Date end = new Date(dec2006.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.MONTH, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例26
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 3 months (just for the sake of having a multiple).
 */
public void testPreviousStandardDateMonthB() {
    MyDateAxis axis = new MyDateAxis("Month");
    Month nov2006 = new Month(11, 2006);
    Month dec2006 = new Month(12, 2006);
    
    // five dates to check...
    Date d0 = new Date(nov2006.getFirstMillisecond());
    Date d1 = new Date(nov2006.getFirstMillisecond() + 500L);
    Date d2 = new Date(nov2006.getMiddleMillisecond());
    Date d3 = new Date(nov2006.getMiddleMillisecond() + 500L);
    Date d4 = new Date(nov2006.getLastMillisecond());
    
    Date end = new Date(dec2006.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.MONTH, 3);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例27
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 day.
 */
public void testPreviousStandardDateDayA() {
    MyDateAxis axis = new MyDateAxis("Day");
    Day apr12007 = new Day(1, 4, 2007);
    Day apr22007 = new Day(2, 4, 2007);
    
    // five dates to check...
    Date d0 = new Date(apr12007.getFirstMillisecond());
    Date d1 = new Date(apr12007.getFirstMillisecond() + 500L);
    Date d2 = new Date(apr12007.getMiddleMillisecond());
    Date d3 = new Date(apr12007.getMiddleMillisecond() + 500L);
    Date d4 = new Date(apr12007.getLastMillisecond());
 
    Date end = new Date(apr22007.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.DAY, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例28
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 7 days (just for the sake of having a multiple).
 */
public void testPreviousStandardDateDayB() {
    MyDateAxis axis = new MyDateAxis("Day");
    Day apr12007 = new Day(1, 4, 2007);
    Day apr22007 = new Day(2, 4, 2007);
    
    // five dates to check...
    Date d0 = new Date(apr12007.getFirstMillisecond());
    Date d1 = new Date(apr12007.getFirstMillisecond() + 500L);
    Date d2 = new Date(apr12007.getMiddleMillisecond());
    Date d3 = new Date(apr12007.getMiddleMillisecond() + 500L);
    Date d4 = new Date(apr12007.getLastMillisecond());
 
    Date end = new Date(apr22007.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.DAY, 7);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例29
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 1 hour.
 */
public void testPreviousStandardDateHourA() {
    MyDateAxis axis = new MyDateAxis("Hour");
    Hour h0 = new Hour(12, 1, 4, 2007);
    Hour h1 = new Hour(13, 1, 4, 2007);
    
    // five dates to check...
    Date d0 = new Date(h0.getFirstMillisecond());
    Date d1 = new Date(h0.getFirstMillisecond() + 500L);
    Date d2 = new Date(h0.getMiddleMillisecond());
    Date d3 = new Date(h0.getMiddleMillisecond() + 500L);
    Date d4 = new Date(h0.getLastMillisecond());
 
    Date end = new Date(h1.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.HOUR, 1);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}
 
示例30
/**
 * A basic check for the testPreviousStandardDate() method when the
 * tick unit is 6 hours (just for the sake of having a multiple).
 */
public void testPreviousStandardDateHourB() {
    MyDateAxis axis = new MyDateAxis("Hour");
    Hour h0 = new Hour(12, 1, 4, 2007);
    Hour h1 = new Hour(13, 1, 4, 2007);
    
    // five dates to check...
    Date d0 = new Date(h0.getFirstMillisecond());
    Date d1 = new Date(h0.getFirstMillisecond() + 500L);
    Date d2 = new Date(h0.getMiddleMillisecond());
    Date d3 = new Date(h0.getMiddleMillisecond() + 500L);
    Date d4 = new Date(h0.getLastMillisecond());
 
    Date end = new Date(h1.getLastMillisecond());
    
    DateTickUnit unit = new DateTickUnit(DateTickUnit.HOUR, 6);
    axis.setTickUnit(unit);

    // START: check d0 and d1
    axis.setTickMarkPosition(DateTickMarkPosition.START);

    axis.setRange(d0, end);
    Date psd = axis.previousStandardDate(d0, unit);
    Date nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d0.getTime());
    assertTrue(nsd.getTime() >= d0.getTime());

    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());

    // MIDDLE: check d1, d2 and d3
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    
    axis.setRange(d1, end);
    psd = axis.previousStandardDate(d1, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d1.getTime());
    assertTrue(nsd.getTime() >= d1.getTime());
    
    axis.setRange(d2, end);
    psd = axis.previousStandardDate(d2, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d2.getTime());
    assertTrue(nsd.getTime() >= d2.getTime());

    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());

    // END: check d3 and d4
    axis.setTickMarkPosition(DateTickMarkPosition.END);
    
    axis.setRange(d3, end);
    psd = axis.previousStandardDate(d3, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d3.getTime());
    assertTrue(nsd.getTime() >= d3.getTime());
    
    axis.setRange(d4, end);
    psd = axis.previousStandardDate(d4, unit);
    nsd = unit.addToDate(psd);
    assertTrue(psd.getTime() < d4.getTime());
    assertTrue(nsd.getTime() >= d4.getTime());
}