ICU-2180 API method coverage

X-SVN-Rev: 10734
This commit is contained in:
Doug Felt 2002-12-18 21:20:52 +00:00
parent fa5567b3be
commit a0e09cfa94
6 changed files with 68 additions and 14 deletions

View file

@ -5,8 +5,8 @@
*******************************************************************************
*
* $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/dev/test/calendar/HolidayTest.java,v $
* $Date: 2002/12/11 23:30:38 $
* $Revision: 1.2 $
* $Date: 2002/12/18 21:20:52 $
* $Revision: 1.3 $
*
*****************************************************************************************
*/
@ -20,9 +20,12 @@ import com.ibm.icu.dev.test.TestFmwk;
import com.ibm.icu.impl.LocaleUtility;
import com.ibm.icu.text.DateFormat;
import com.ibm.icu.util.Calendar;
import com.ibm.icu.util.EasterHoliday;
import com.ibm.icu.util.GregorianCalendar;
import com.ibm.icu.util.Holiday;
import com.ibm.icu.util.EasterHoliday;
import com.ibm.icu.util.RangeDateRule;
import com.ibm.icu.util.SimpleDateRule;
import com.ibm.icu.util.SimpleHoliday;
import com.ibm.icu.util.TimeZone;
/**
@ -127,7 +130,11 @@ public class HolidayTest extends TestFmwk {
}
public void TestCoverage(){
Holiday[] h = { new EasterHoliday("Ram's Easter")};
Holiday[] h = { new EasterHoliday("Ram's Easter"),
new SimpleHoliday(2, 29, 0, "Leap year", 1900, 2100)};
exerciseHolidays(h, Locale.getDefault());
RangeDateRule rdr = new RangeDateRule();
rdr.add(new SimpleDateRule(7, 15));
}
}

View file

@ -4,8 +4,8 @@
* others. All Rights Reserved. *
*******************************************************************************
* $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/dev/test/format/DateFormatTest.java,v $
* $Date: 2002/08/22 21:55:51 $
* $Revision: 1.9 $
* $Date: 2002/12/18 21:20:52 $
* $Revision: 1.10 $
*
*****************************************************************************************
*/
@ -20,7 +20,9 @@ package com.ibm.icu.dev.test.format;
import com.ibm.icu.lang.*;
import com.ibm.icu.text.*;
import com.ibm.icu.util.*;
import com.ibm.icu.impl.*;
import java.util.Date;
import java.util.ResourceBundle;
import java.text.ParseException;
import java.text.ParsePosition;
import java.util.Locale;
@ -879,4 +881,29 @@ public class DateFormatTest extends com.ibm.icu.dev.test.TestFmwk {
}
}
}
public void TestCoverage() {
Date now = new Date();
Calendar cal = new GregorianCalendar();
DateFormat f = DateFormat.getTimeInstance();
logln("time: " + f.format(now));
int hash = f.hashCode(); // sigh, everyone overrides this
f = DateFormat.getInstance(cal);
logln("time again: " + f.format(now));
f = DateFormat.getTimeInstance(cal, f.FULL);
logln("time yet again: " + f.format(now));
ResourceBundle rb = ICULocaleData.getLocaleElements("de_DE");
DateFormatSymbols sym = new DateFormatSymbols(rb, Locale.GERMANY);
DateFormatSymbols sym2 = (DateFormatSymbols)sym.clone();
if (sym.hashCode() != sym2.hashCode()) {
errln("fail, date format symbols hashcode not equal");
}
if (!sym.equals(sym2)) {
errln("fail, date format symbols not equal");
}
}
}

View file

@ -5,8 +5,8 @@
*******************************************************************************
*
* $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/dev/test/format/RbnfTest.java,v $
* $Date: 2002/12/02 17:09:58 $
* $Revision: 1.14 $
* $Date: 2002/12/18 21:20:52 $
* $Revision: 1.15 $
*
*****************************************************************************************
*/
@ -15,6 +15,8 @@ package com.ibm.icu.dev.test.format;
import com.ibm.icu.text.RuleBasedNumberFormat;
import com.ibm.icu.dev.test.TestFmwk;
import java.math.BigInteger;
import java.math.BigDecimal;
import java.util.Locale;
import java.text.NumberFormat;
@ -628,6 +630,8 @@ public class RbnfTest extends TestFmwk {
String[][] testData = {
{ "0", "0" },
{ "1", "1" },
{ "10", "10" },
{ ".1", "1/10" },
{ ".11", "1/9" },
{ ".125", "1/8" },
@ -712,6 +716,19 @@ public class RbnfTest extends TestFmwk {
doTest(formatter, testDataYear, true);
}
public void TestBigNumbers() {
BigInteger bigI = new BigInteger("1234567890", 10);
StringBuffer buf = new StringBuffer();
RuleBasedNumberFormat fmt = new RuleBasedNumberFormat(RuleBasedNumberFormat.SPELLOUT);
fmt.format(bigI, buf, null);
logln("big int: " + buf.toString());
buf.setLength(0);
BigDecimal bigD = new BigDecimal(bigI);
fmt.format(bigD, buf, null);
logln("big dec: " + buf.toString());
}
void doTest(RuleBasedNumberFormat formatter, String[][] testData,
boolean testParsing) {
NumberFormat decFmt = NumberFormat.getInstance(Locale.US);

View file

@ -735,10 +735,12 @@ public abstract class DateFormat extends Format {
* Overrides hashCode
* @stable ICU 2.0
*/
///CLOVER:OFF
public int hashCode() {
return numberFormat.hashCode();
// just enough fields for a reasonable distribution
}
///CLOVER:ON
/**
* Overrides equals

View file

@ -5,8 +5,8 @@
*******************************************************************************
*
* $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/text/DateFormatSymbols.java,v $
* $Date: 2002/12/05 01:21:36 $
* $Revision: 1.14 $
* $Date: 2002/12/18 21:20:52 $
* $Revision: 1.15 $
*
*****************************************************************************************
*/
@ -529,7 +529,6 @@ public class DateFormatSymbols implements Serializable, Cloneable {
* Compares the equality of the two arrays of String.
* @param current this String array.
* @param other that String array.
*/
private final boolean equals(String[] current, String[] other)
{
int count = current.length;
@ -539,6 +538,7 @@ public class DateFormatSymbols implements Serializable, Cloneable {
return false;
return true;
}
*/
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View file

@ -5,8 +5,8 @@
*******************************************************************************
*
* $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/util/RangeDateRule.java,v $
* $Date: 2002/12/04 01:03:39 $
* $Revision: 1.6 $
* $Date: 2002/12/18 21:20:52 $
* $Revision: 1.7 $
*
*****************************************************************************************
*/
@ -30,8 +30,9 @@ public class RangeDateRule implements DateRule
}
/**
* @draft ICU 2.2
* @internal
*/
// Range is a package-private class so this should be package-private too, probably
public RangeDateRule(Range[] ranges)
{
for (int i = 0; i < ranges.length; i++) {