test/java/util/Locale/LocaleProviders.sh
Print this page
rev 6999 : imported patch 8013086
@@ -22,10 +22,11 @@
#
#!/bin/sh
#
# @test
# @bug 6336885 7196799 7197573 7198834 8000245 8000615 8001440 8010666
+# 8013086
# @summary tests for "java.locale.providers" system property
# @compile -XDignore.symbol.file LocaleProviders.java
# @run shell/timeout=600 LocaleProviders.sh
if [ "${TESTSRC}" = "" ]
@@ -67,11 +68,11 @@
echo "Unrecognized system!"
exit 1;
;;
esac
-# create an SPI implementation
+# create SPI implementations
mk() {
d=`dirname $1`
if [ ! -d $d ]; then mkdir -p $d; fi
cat - >$1
}
@@ -86,20 +87,42 @@
public String getDisplayName(String ID, boolean daylight, int style, Locale locale) {
return "tznp";
}
public Locale[] getAvailableLocales() {
- Locale[] locales = {Locale.GERMAN, Locale.US, Locale.JAPANESE, Locale.CHINESE};
+ Locale[] locales = {Locale.US};
return locales;
}
}
EOF
+mk ${SPIDIR}${FS}src${FS}tznp8013086.java << EOF
+import java.util.spi.TimeZoneNameProvider;
+import java.util.Locale;
+import java.util.TimeZone;
+
+public class tznp8013086 extends TimeZoneNameProvider {
+ public String getDisplayName(String ID, boolean daylight, int style, Locale locale) {
+ if (!daylight && style==TimeZone.LONG) {
+ return "tznp8013086";
+ } else {
+ return null;
+ }
+ }
+
+ public Locale[] getAvailableLocales() {
+ Locale[] locales = {Locale.JAPAN};
+ return locales;
+ }
+}
+EOF
mk ${SPIDIR}${FS}dest${FS}META-INF${FS}services${FS}java.util.spi.TimeZoneNameProvider << EOF
tznp
+tznp8013086
EOF
${COMPILEJAVA}${FS}bin${FS}javac ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} -d ${SPIDIR}${FS}dest \
- ${SPIDIR}${FS}src${FS}tznp.java
+ ${SPIDIR}${FS}src${FS}tznp.java \
+ ${SPIDIR}${FS}src${FS}tznp8013086.java
${COMPILEJAVA}${FS}bin${FS}jar ${TESTTOOLVMOPTS} cvf ${SPIDIR}${FS}tznp.jar -C ${SPIDIR}${FS}dest .
# get the platform default locales
PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale display`
DEFLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
@@ -267,6 +290,14 @@
PARAM2=
PARAM3=
runTest
fi
+# testing 8013086 fix.
+METHODNAME=bug8013086Test
+PREFLIST="JRE,SPI -Djava.ext.dirs=${SPIDIR}"
+PARAM1=ja
+PARAM2=JP
+PARAM3=
+runTest
+
exit $result