/** Some checks for the delete(int, int) method. */
 @Test
 public void testDelete3() {
   TimeSeries s1 = new TimeSeries("S1");
   s1.add(new Year(2011), 1.1);
   s1.add(new Year(2012), 2.2);
   s1.add(new Year(2013), 3.3);
   s1.add(new Year(2014), 4.4);
   s1.add(new Year(2015), 5.5);
   s1.add(new Year(2016), 6.6);
   s1.delete(2, 5);
   assertEquals(2, s1.getItemCount());
   assertEquals(new Year(2011), s1.getTimePeriod(0));
   assertEquals(new Year(2012), s1.getTimePeriod(1));
   assertEquals(1.1, s1.getMinY(), EPSILON);
   assertEquals(2.2, s1.getMaxY(), EPSILON);
 }
Exemplo n.º 2
0
  /**
   * actually recalculates the first average (necessary when we change the average settings)
   *
   * @param d
   */
  public void recalculateAverage1() {

    // average1=new TimeSeries("av1", FixedMillisecond.class);
    average1.delete(0, average1.getItemCount() - 1);

    for (int z = 0; z < x1.getItemCount(); z++) {
      try {
        double v = 0;

        // List l1=x1.getItems();

        for (int i = z; i < z + av1; i++) {
          v += x1.getValue(x1.getItemCount() - (av1 - i)).doubleValue();
        }
        average1.add(x1.getTimePeriod(z), v / av1);

      } catch (Exception e) {
        // e.printStackTrace();
        // System.out.println(timestamp.toString());
      }
    }
  }
  /** Some tests to ensure that the createCopy(int, int) method is functioning correctly. */
  @Test
  public void testCreateCopy2() {

    TimeSeries series = new TimeSeries("Series", Month.class);
    series.add(new Month(MonthConstants.JANUARY, 2003), 45.0);
    series.add(new Month(MonthConstants.FEBRUARY, 2003), 55.0);
    series.add(new Month(MonthConstants.JUNE, 2003), 35.0);
    series.add(new Month(MonthConstants.NOVEMBER, 2003), 85.0);
    series.add(new Month(MonthConstants.DECEMBER, 2003), 75.0);

    try {
      // copy just the first item...
      TimeSeries result1 = series.createCopy(0, 0);
      assertEquals(new Month(1, 2003), result1.getTimePeriod(0));

      // copy the first two items...
      result1 = series.createCopy(0, 1);
      assertEquals(new Month(2, 2003), result1.getTimePeriod(1));

      // copy the middle three items...
      result1 = series.createCopy(1, 3);
      assertEquals(new Month(2, 2003), result1.getTimePeriod(0));
      assertEquals(new Month(11, 2003), result1.getTimePeriod(2));

      // copy the last two items...
      result1 = series.createCopy(3, 4);
      assertEquals(new Month(11, 2003), result1.getTimePeriod(0));
      assertEquals(new Month(12, 2003), result1.getTimePeriod(1));

      // copy the last item...
      result1 = series.createCopy(4, 4);
      assertEquals(new Month(12, 2003), result1.getTimePeriod(0));
    } catch (CloneNotSupportedException e) {
      assertTrue(false);
    }

    // check negative first argument
    boolean pass = false;
    try {
      /* TimeSeries result = */ series.createCopy(-1, 1);
    } catch (IllegalArgumentException e) {
      pass = true;
    } catch (CloneNotSupportedException e) {
      pass = false;
    }
    assertTrue(pass);

    // check second argument less than first argument
    pass = false;
    try {
      /* TimeSeries result = */ series.createCopy(1, 0);
    } catch (IllegalArgumentException e) {
      pass = true;
    } catch (CloneNotSupportedException e) {
      pass = false;
    }
    assertTrue(pass);

    TimeSeries series2 = new TimeSeries("Series 2");
    try {
      TimeSeries series3 = series2.createCopy(99, 999);
      assertEquals(0, series3.getItemCount());
    } catch (CloneNotSupportedException e) {
      assertTrue(false);
    }
  }