Hi,

On Fri, 2003-08-29 at 08:58, Ito Kazumitsu wrote:
> In message "Re: Bug report: java.util.GregorianCalendar"
>     on 03/08/28, Ito Kazumitsu <[EMAIL PROTECTED]> writes:
> 
> > And I have found another bug shown by the attached program.
> > This bug seems to have something to do with leap yeas.
> > If this bug is fixed, my patch about the WEEK_OF_MONTH will
> > work.
> 
> This is my patch for this bug.

Thanks again!
I added your observation about the first day of the month to the test.
But Jochen his email indicated that for Julian dates we also need to
correct some things. So I also added tests for that. The resulting Mauve
tests is attached. And the results with your patches applied gives:

FAIL: gnu.testlet.java.util.GregorianCalendar.first: day 1-12-1400 (number 1)
got 2 but expected 1
FAIL: gnu.testlet.java.util.GregorianCalendar.first: week 1-12-1400 (number 1)
got 2 but expected 1
FAIL: gnu.testlet.java.util.GregorianCalendar.first: day 1-12-1404 (number 1)
got 2 but expected 1
3 of 312 tests failed

Cheers,

Mark
// Tags: JDK1.1

// Copyright (C) 2003 Free Software Foundation, Inc.
// Contributed by Mark Wielaard ([EMAIL PROTECTED])

// This file is part of Mauve.

// Mauve is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2, or (at your option)
// any later version.

// Mauve is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with Mauve; see the file COPYING.  If not, write to
// the Free Software Foundation, 59 Temple Place - Suite 330,
// Boston, MA 02111-1307, USA.

package gnu.testlet.java.util.GregorianCalendar;

import gnu.testlet.Testlet;
import gnu.testlet.TestHarness;
import java.util.*;

/**
 * Checks that the first day of the month is day one and that the
 * first week is week one.
 */
public class first implements Testlet
{
  private TestHarness harness;

  public void test (TestHarness harness)
  {
    this.harness = harness;

    // Julian dates.
    testYears(1400);

    // Gregorian dates.
    testYears(2000);
  }

  private void testYears(int startYear)
  {
    for (int year = startYear; year <= startYear + 5; year++)
      for (int month = 0; month <= 12; month++)
	{
	  GregorianCalendar cal = new GregorianCalendar(year, month, 1);
	  harness.check(cal.get(Calendar.DAY_OF_MONTH), 1,
			"day 1-" + month + "-" + year);
	  harness.check(cal.get(Calendar.WEEK_OF_MONTH), 1,
			"week 1-" + month + "-" + year);
	}
  }
}
_______________________________________________
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath

Reply via email to