7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 # or visit www.oracle.com if you need additional information or have any
21 # questions.
22 #
23 #!/bin/sh
24 #
25 # @test
26 # @bug 6336885 7196799 7197573 7198834 8000245 8000615 8001440 8010666
27 # @summary tests for "java.locale.providers" system property
28 # @compile -XDignore.symbol.file LocaleProviders.java
29 # @run shell/timeout=600 LocaleProviders.sh
30
31 if [ "${TESTSRC}" = "" ]
32 then
33 echo "TESTSRC not set. Test cannot execute. Failed."
34 exit 1
35 fi
36 echo "TESTSRC=${TESTSRC}"
37 if [ "${TESTJAVA}" = "" ]
38 then
39 echo "TESTJAVA not set. Test cannot execute. Failed."
40 exit 1
41 fi
42 if [ "${COMPILEJAVA}" = "" ]
43 then
44 COMPILEJAVA="${TESTJAVA}"
45 fi
46 echo "TESTJAVA=${TESTJAVA}"
52 echo "TESTCLASSES=${TESTCLASSES}"
53 echo "CLASSPATH=${CLASSPATH}"
54
55 # set platform-dependent variables
56 OS=`uname -s`
57 case "$OS" in
58 SunOS | Linux | *BSD | Darwin )
59 PS=":"
60 FS="/"
61 ;;
62 Windows* | CYGWIN* )
63 PS=";"
64 FS="\\"
65 ;;
66 * )
67 echo "Unrecognized system!"
68 exit 1;
69 ;;
70 esac
71
72 # create an SPI implementation
73 mk() {
74 d=`dirname $1`
75 if [ ! -d $d ]; then mkdir -p $d; fi
76 cat - >$1
77 }
78
79 SPIDIR=${TESTCLASSES}${FS}spi
80 rm -rf ${SPIDIR}
81 mk ${SPIDIR}${FS}src${FS}tznp.java << EOF
82 import java.util.spi.TimeZoneNameProvider;
83 import java.util.Locale;
84
85 public class tznp extends TimeZoneNameProvider {
86 public String getDisplayName(String ID, boolean daylight, int style, Locale locale) {
87 return "tznp";
88 }
89
90 public Locale[] getAvailableLocales() {
91 Locale[] locales = {Locale.GERMAN, Locale.US, Locale.JAPANESE, Locale.CHINESE};
92 return locales;
93 }
94 }
95 EOF
96 mk ${SPIDIR}${FS}dest${FS}META-INF${FS}services${FS}java.util.spi.TimeZoneNameProvider << EOF
97 tznp
98 EOF
99 ${COMPILEJAVA}${FS}bin${FS}javac ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} -d ${SPIDIR}${FS}dest \
100 ${SPIDIR}${FS}src${FS}tznp.java
101 ${COMPILEJAVA}${FS}bin${FS}jar ${TESTTOOLVMOPTS} cvf ${SPIDIR}${FS}tznp.jar -C ${SPIDIR}${FS}dest .
102
103 # get the platform default locales
104 PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale display`
105 DEFLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
106 DEFCTRY=`echo ${PLATDEF} | sed -e "s/.*,//"`
107 echo "DEFLANG=${DEFLANG}"
108 echo "DEFCTRY=${DEFCTRY}"
109 PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale format`
110 DEFFMTLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
111 DEFFMTCTRY=`echo ${PLATDEF} | sed -e "s/.*,//"`
112 echo "DEFFMTLANG=${DEFFMTLANG}"
113 echo "DEFFMTCTRY=${DEFFMTCTRY}"
114
115 runTest()
116 {
117 RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} -Djava.locale.providers=$PREFLIST LocaleProviders $METHODNAME $PARAM1 $PARAM2 $PARAM3"
118 echo ${RUNCMD}
119 ${RUNCMD}
120 result=$?
252
253 # testing 8001440 fix.
254 METHODNAME=bug8001440Test
255 PREFLIST=CLDR
256 PARAM1=
257 PARAM2=
258 PARAM3=
259 runTest
260
261 # testing 8010666 fix.
262 if [ "${DEFLANG}" = "en" ]
263 then
264 METHODNAME=bug8010666Test
265 PREFLIST=HOST
266 PARAM1=
267 PARAM2=
268 PARAM3=
269 runTest
270 fi
271
272 exit $result
|
7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 # or visit www.oracle.com if you need additional information or have any
21 # questions.
22 #
23 #!/bin/sh
24 #
25 # @test
26 # @bug 6336885 7196799 7197573 7198834 8000245 8000615 8001440 8010666
27 # 8013086
28 # @summary tests for "java.locale.providers" system property
29 # @compile -XDignore.symbol.file LocaleProviders.java
30 # @run shell/timeout=600 LocaleProviders.sh
31
32 if [ "${TESTSRC}" = "" ]
33 then
34 echo "TESTSRC not set. Test cannot execute. Failed."
35 exit 1
36 fi
37 echo "TESTSRC=${TESTSRC}"
38 if [ "${TESTJAVA}" = "" ]
39 then
40 echo "TESTJAVA not set. Test cannot execute. Failed."
41 exit 1
42 fi
43 if [ "${COMPILEJAVA}" = "" ]
44 then
45 COMPILEJAVA="${TESTJAVA}"
46 fi
47 echo "TESTJAVA=${TESTJAVA}"
53 echo "TESTCLASSES=${TESTCLASSES}"
54 echo "CLASSPATH=${CLASSPATH}"
55
56 # set platform-dependent variables
57 OS=`uname -s`
58 case "$OS" in
59 SunOS | Linux | *BSD | Darwin )
60 PS=":"
61 FS="/"
62 ;;
63 Windows* | CYGWIN* )
64 PS=";"
65 FS="\\"
66 ;;
67 * )
68 echo "Unrecognized system!"
69 exit 1;
70 ;;
71 esac
72
73 # create SPI implementations
74 mk() {
75 d=`dirname $1`
76 if [ ! -d $d ]; then mkdir -p $d; fi
77 cat - >$1
78 }
79
80 SPIDIR=${TESTCLASSES}${FS}spi
81 rm -rf ${SPIDIR}
82 mk ${SPIDIR}${FS}src${FS}tznp.java << EOF
83 import java.util.spi.TimeZoneNameProvider;
84 import java.util.Locale;
85
86 public class tznp extends TimeZoneNameProvider {
87 public String getDisplayName(String ID, boolean daylight, int style, Locale locale) {
88 return "tznp";
89 }
90
91 public Locale[] getAvailableLocales() {
92 Locale[] locales = {Locale.US};
93 return locales;
94 }
95 }
96 EOF
97 mk ${SPIDIR}${FS}src${FS}tznp8013086.java << EOF
98 import java.util.spi.TimeZoneNameProvider;
99 import java.util.Locale;
100 import java.util.TimeZone;
101
102 public class tznp8013086 extends TimeZoneNameProvider {
103 public String getDisplayName(String ID, boolean daylight, int style, Locale locale) {
104 if (!daylight && style==TimeZone.LONG) {
105 return "tznp8013086";
106 } else {
107 return null;
108 }
109 }
110
111 public Locale[] getAvailableLocales() {
112 Locale[] locales = {Locale.JAPAN};
113 return locales;
114 }
115 }
116 EOF
117 mk ${SPIDIR}${FS}dest${FS}META-INF${FS}services${FS}java.util.spi.TimeZoneNameProvider << EOF
118 tznp
119 tznp8013086
120 EOF
121 ${COMPILEJAVA}${FS}bin${FS}javac ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} -d ${SPIDIR}${FS}dest \
122 ${SPIDIR}${FS}src${FS}tznp.java \
123 ${SPIDIR}${FS}src${FS}tznp8013086.java
124 ${COMPILEJAVA}${FS}bin${FS}jar ${TESTTOOLVMOPTS} cvf ${SPIDIR}${FS}tznp.jar -C ${SPIDIR}${FS}dest .
125
126 # get the platform default locales
127 PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale display`
128 DEFLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
129 DEFCTRY=`echo ${PLATDEF} | sed -e "s/.*,//"`
130 echo "DEFLANG=${DEFLANG}"
131 echo "DEFCTRY=${DEFCTRY}"
132 PLATDEF=`${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} LocaleProviders getPlatformLocale format`
133 DEFFMTLANG=`echo ${PLATDEF} | sed -e "s/,.*//"`
134 DEFFMTCTRY=`echo ${PLATDEF} | sed -e "s/.*,//"`
135 echo "DEFFMTLANG=${DEFFMTLANG}"
136 echo "DEFFMTCTRY=${DEFFMTCTRY}"
137
138 runTest()
139 {
140 RUNCMD="${TESTJAVA}${FS}bin${FS}java ${TESTVMOPTS} -classpath ${TESTCLASSES} -Djava.locale.providers=$PREFLIST LocaleProviders $METHODNAME $PARAM1 $PARAM2 $PARAM3"
141 echo ${RUNCMD}
142 ${RUNCMD}
143 result=$?
275
276 # testing 8001440 fix.
277 METHODNAME=bug8001440Test
278 PREFLIST=CLDR
279 PARAM1=
280 PARAM2=
281 PARAM3=
282 runTest
283
284 # testing 8010666 fix.
285 if [ "${DEFLANG}" = "en" ]
286 then
287 METHODNAME=bug8010666Test
288 PREFLIST=HOST
289 PARAM1=
290 PARAM2=
291 PARAM3=
292 runTest
293 fi
294
295 # testing 8013086 fix.
296 METHODNAME=bug8013086Test
297 PREFLIST="JRE,SPI -Djava.ext.dirs=${SPIDIR}"
298 PARAM1=ja
299 PARAM2=JP
300 PARAM3=
301 runTest
302
303 exit $result
|