提交 39c0c4a8 编写于 作者: E egahlin

7172176: java/jconsole test/sun/tools/jconsole/ImmutableResourceTest.sh failing

Reviewed-by: mchung, mfang
上级 0e7d6eb8
/* /*
* Copyright (c) 2004, 2012, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
...@@ -30,7 +30,7 @@ import java.lang.reflect.Field; ...@@ -30,7 +30,7 @@ import java.lang.reflect.Field;
import java.lang.reflect.Modifier; import java.lang.reflect.Modifier;
import java.text.MessageFormat; import java.text.MessageFormat;
import java.util.Collections; import java.util.Collections;
import java.util.HashMap; import java.util.IdentityHashMap;
import java.util.Map; import java.util.Map;
import java.util.MissingResourceException; import java.util.MissingResourceException;
import java.util.ResourceBundle; import java.util.ResourceBundle;
...@@ -40,7 +40,7 @@ import java.util.ResourceBundle; ...@@ -40,7 +40,7 @@ import java.util.ResourceBundle;
*/ */
public final class Resources { public final class Resources {
private static Map<String, Integer> MNEMONIC_LOOKUP = Collections private static Map<String, Integer> MNEMONIC_LOOKUP = Collections
.synchronizedMap(new HashMap<String, Integer>()); .synchronizedMap(new IdentityHashMap<String, Integer>());
private Resources() { private Resources() {
throw new AssertionError(); throw new AssertionError();
......
...@@ -305,10 +305,6 @@ sun/security/krb5/auto/BadKdc4.java solaris-sparcv9 ...@@ -305,10 +305,6 @@ sun/security/krb5/auto/BadKdc4.java solaris-sparcv9
# 6461635 # 6461635
com/sun/tools/attach/BasicTests.sh generic-all com/sun/tools/attach/BasicTests.sh generic-all
# 7172176
sun/tools/jconsole/ResourceCheckTest.sh generic-all
sun/tools/jconsole/ImmutableResourceTest.sh generic-all
# 7132203 # 7132203
sun/jvmstat/monitor/MonitoredVm/CR6672135.java generic-all sun/jvmstat/monitor/MonitoredVm/CR6672135.java generic-all
......
/*
* Copyright (c) 2005, 2007, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code 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
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/**
*
*
* This isn't the test case: ImmutableResourceTest.sh is.
* Refer to ImmutableResourceTest.sh when running this test.
*
* @bug 6287579
* @summary SubClasses of ListResourceBundle should fix getContents()
*/
import java.util.ResourceBundle;
public class ImmutableResourceTest {
public static void main(String[] args) throws Exception {
/* Reach under the covers and get the message strings */
sun.tools.jconsole.resources.JConsoleResources jcr =
new sun.tools.jconsole.resources.JConsoleResources ();
Object [][] testData = jcr.getContents();
/* Shred our copy of the message strings */
for (int ii = 0; ii < testData.length; ii++) {
testData[ii][0] = "xxx";
testData[ii][1] = "yyy";
}
/*
* Try a lookup for the shredded key.
* If this is successful we have a problem.
*/
String ss = sun.tools.jconsole.Resources.getText("xxx");
if ("yyy".equals(ss)) {
throw new Exception ("SubClasses of ListResourceBundle should fix getContents()");
}
System.out.println("...Finished.");
}
}
#
# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# This code 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
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#
# @test
# @bug 6287579
# @summary SubClasses of ListResourceBundle should fix getContents()
#
# @run shell ImmutableResourceTest.sh
# Beginning of subroutines:
status=1
#Call this from anywhere to fail the test with an error message
# usage: fail "reason why the test failed"
fail()
{ echo "The test failed :-("
echo "$*" 1>&2
echo "exit status was $status"
exit $status
} #end of fail()
#Call this from anywhere to pass the test with a message
# usage: pass "reason why the test passed if applicable"
pass()
{ echo "The test passed!!!"
echo "$*" 1>&2
exit 0
} #end of pass()
# end of subroutines
# The beginning of the script proper
OS=`uname -s`
case "$OS" in
SunOS | Linux | Darwin )
PATHSEP=":"
;;
Windows* | CYGWIN*)
PATHSEP=";"
;;
# catch all other OSs
* )
echo "Unrecognized system! $OS"
fail "Unrecognized system! $OS"
;;
esac
TARGETCLASS="ImmutableResourceTest"
if [ -z "${TESTJAVA}" ] ; then
# TESTJAVA is not set, so the test is running stand-alone.
# TESTJAVA holds the path to the root directory of the build of the JDK
# to be tested. That is, any java files run explicitly in this shell
# should use TESTJAVA in the path to the java interpreter.
# So, we'll set this to the JDK spec'd on the command line. If none
# is given on the command line, tell the user that and use a default.
# THIS IS THE JDK BEING TESTED.
if [ -n "$1" ] ; then
TESTJAVA=$1
else
TESTJAVA=$JAVA_HOME
fi
TESTSRC=.
TESTCLASSES=.
#Deal with .class files:
fi
#
echo "JDK under test is: $TESTJAVA"
#
CP="-classpath ${TESTCLASSES}${PATHSEP}${TESTJAVA}/lib/jconsole.jar"
# Compile the test class using the classpath we need:
#
env
#
set -vx
#
#Compile. jconsole.jar is required on the classpath.
${TESTJAVA}/bin/javac -d "${TESTCLASSES}" ${CP} -g \
"${TESTSRC}"/"${TARGETCLASS}".java
#
#Run the test class, again with the classpath we need:
${TESTJAVA}/bin/java ${CP} ${TARGETCLASS}
status=$?
echo "test status was: $status"
if [ $status -eq "0" ];
then pass ""
else fail "unspecified test failure"
fi
# #
# Copyright (c) 2004, 2007, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
# #
# This code is free software; you can redistribute it and/or modify it # This code is free software; you can redistribute it and/or modify it
...@@ -54,7 +54,7 @@ pass() ...@@ -54,7 +54,7 @@ pass()
OS=`uname -s` OS=`uname -s`
case "$OS" in case "$OS" in
SunOS | Linux ) SunOS | Linux | Darwin)
PATHSEP=":" PATHSEP=":"
;; ;;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册