diff options
author | Victor Chang <vichang@google.com> | 2020-03-30 20:06:41 +0100 |
---|---|---|
committer | Victor Chang <vichang@google.com> | 2020-03-31 16:24:17 +0100 |
commit | bfb4e217b8566d4329cf04aed2fbf797abebfcb7 (patch) | |
tree | 17357f093acc4211c92666550ff9eabce5c53270 | |
parent | 5b0eea5d7f0b86653c18d7cdb4fa6d2ee3cd4550 (diff) | |
download | icu-bfb4e217b8566d4329cf04aed2fbf797abebfcb7.tar.gz |
Add API coverage to android.icu.number
Add test coverage of the following APIs:
android.icu.number FormattedNumber charAt(int)
android.icu.number FormattedNumber length()
android.icu.number FormattedNumber subSequence(int, int)
android.icu.number FormattedNumber toBigDecimal()
android.icu.number FormattedNumberRange charAt(int)
android.icu.number FormattedNumberRange getFirstBigDecimal()
android.icu.number FormattedNumberRange getIdentityResult()
android.icu.number FormattedNumberRange getSecondBigDecimal()
android.icu.number FormattedNumberRange length()
android.icu.number FormattedNumberRange subSequence(int, int)
android.icu.number FormattedNumberRange toCharacterIterator()
android.icu.number LocalizedNumberRangeFormatter formatRange(double, double)
Bug: 152381651
Test: CtsIcuTestCases
Merged-In: I8ab4cc11ad446d12271e724b1927e6a3a3737479
Change-Id: I8ab4cc11ad446d12271e724b1927e6a3a3737479
(cherry picked from commit ad2ceb1ef3f28e659df15631d8ab0b1eb28ceed8)
-rw-r--r-- | android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberRangeTest.java | 46 | ||||
-rw-r--r-- | android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberTest.java | 32 |
2 files changed, 78 insertions, 0 deletions
diff --git a/android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberRangeTest.java b/android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberRangeTest.java new file mode 100644 index 000000000..031c135d4 --- /dev/null +++ b/android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberRangeTest.java @@ -0,0 +1,46 @@ +// © 2020 and later: Unicode, Inc. and others. +// License & terms of use: http://www.unicode.org/copyright.html#License + +package android.icu.extratest.number; + +import android.icu.dev.test.TestFmwk; +import android.icu.number.FormattedNumberRange; +import android.icu.number.NumberRangeFormatter; +import android.icu.number.NumberRangeFormatter.RangeIdentityResult; +import android.icu.testsharding.MainTestShard; +import android.icu.util.ULocale; +import java.math.BigDecimal; +import java.math.BigInteger; +import java.text.AttributedCharacterIterator; +import java.text.CharacterIterator; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +@MainTestShard +@RunWith(JUnit4.class) +public class FormattedNumberRangeTest extends TestFmwk { + + @Test + public void test_enUS() { + FormattedNumberRange range = NumberRangeFormatter.withLocale(ULocale.US) + .formatRange(-99.99d, 123.45d); + String expected = "-99.99 – 123.45"; + assertEquals("Test toString()", expected, range.toString()); + assertEquals("Test charAt()", '-', range.charAt(0)); + assertEquals("Test length()", 15, range.length()); + assertEquals("Test subSequence()", "9.9", range.subSequence(2,5)); + assertEquals("Test getIdentityResult()", RangeIdentityResult.NOT_EQUAL, + range.getIdentityResult()); + assertEquals("Test getFirstBigDecimal()", new BigDecimal(BigInteger.valueOf(-9999), 2), + range.getFirstBigDecimal()); + assertEquals("Test getSecondBigDecimal()", new BigDecimal(BigInteger.valueOf(12345), 2), + range.getSecondBigDecimal()); + + AttributedCharacterIterator iter = range.toCharacterIterator(); + for (char c = iter.first(); c != CharacterIterator.DONE; c = iter.next()) { + assertEquals("Test toCharacterIterator():" + iter.getIndex(), + expected.charAt(iter.getIndex()), c); + } + } +} diff --git a/android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberTest.java b/android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberTest.java new file mode 100644 index 000000000..882a5b3ca --- /dev/null +++ b/android_icu4j/testing/src/android/icu/extratest/number/FormattedNumberTest.java @@ -0,0 +1,32 @@ +// © 2020 and later: Unicode, Inc. and others. +// License & terms of use: http://www.unicode.org/copyright.html#License + +package android.icu.extratest.number; + +import android.icu.dev.test.TestFmwk; +import android.icu.number.FormattedNumber; +import android.icu.number.NumberFormatter; +import android.icu.testsharding.MainTestShard; +import android.icu.util.ULocale; +import java.math.BigDecimal; +import java.math.BigInteger; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +@MainTestShard +@RunWith(JUnit4.class) +public class FormattedNumberTest extends TestFmwk { + + @Test + public void test_enUS() { + FormattedNumber formattedNumber = + NumberFormatter.withLocale(ULocale.US).format(123.45); + assertEquals("Test toString()", "123.45", formattedNumber.toString()); + assertEquals("Test charAt()", '2', formattedNumber.charAt(1)); + assertEquals("Test length()", 6, formattedNumber.length()); + assertEquals("Test subSequence()", "3.4", formattedNumber.subSequence(2,5)); + assertEquals("Test toBigDecimal()", new BigDecimal(BigInteger.valueOf(12345), 2), + formattedNumber.toBigDecimal()); + } +} |