test/tools/javac/fatalErrors/NoJavaLang.sh

changeset 1591
dc8b7aa7cef3
parent 1223
f3743b82945e
equal deleted inserted replaced
1590:011cf7e0a148 1591:dc8b7aa7cef3
1 #!/bin/sh
2
3 #
4 # Copyright (c) 1999, 2009, Oracle and/or its affiliates. All rights reserved.
5 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 #
7 # This code is free software; you can redistribute it and/or modify it
8 # under the terms of the GNU General Public License version 2 only, as
9 # published by the Free Software Foundation.
10 #
11 # This code is distributed in the hope that it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # version 2 for more details (a copy is included in the LICENSE file that
15 # accompanied this code).
16 #
17 # You should have received a copy of the GNU General Public License version
18 # 2 along with this work; if not, write to the Free Software Foundation,
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 #
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 # or visit www.oracle.com if you need additional information or have any
23 # questions.
24 #
25
26
27 if [ "${TESTSRC}" = "" ]
28 then
29 echo "TESTSRC not set. Test cannot execute. Failed."
30 exit 1
31 fi
32 printf '%s' "TESTSRC=${TESTSRC}" ; echo
33 if [ "${TESTJAVA}" = "" ]
34 then
35 echo "TESTJAVA not set. Test cannot execute. Failed."
36 exit 1
37 fi
38 printf '%s' "TESTJAVA=${TESTJAVA}" ; echo
39 if [ "${TESTCLASSES}" = "" ]
40 then
41 echo "TESTCLASSES not set. Test cannot execute. Failed."
42 exit 1
43 fi
44 printf '%s' "TESTCLASSES=${TESTCLASSES}" ; echo
45 printf '%s' "CLASSPATH=${CLASSPATH}" ; echo
46 echo
47
48 # set platform-dependent variables
49 OS=`uname -s`
50 case "$OS" in
51 SunOS | Linux | Darwin )
52 FS="/"
53 ;;
54 CYGWIN* )
55 FS="/"
56 DIFFOPTS="--strip-trailing-cr"
57 ;;
58 Windows* )
59 FS="\\"
60 ;;
61 * )
62 echo "Unrecognized system!"
63 exit 1;
64 ;;
65 esac
66
67 TMP1=OUTPUT.txt
68
69 cp "${TESTSRC}${FS}NoJavaLang.java" .
70
71 echo "- verifing that fatal error is not produced in the regular case"
72 "${TESTJAVA}${FS}bin${FS}javac" ${TESTTOOLVMOPTS} NoJavaLang.java 2> "${TMP1}"
73 result=$?
74
75 if [ $result -eq 0 ]
76 then
77 echo "Passed - base compilation successful"
78 else
79 echo "Failed - unable to compile test"
80 exit $result
81 fi
82
83 echo
84
85 echo "- verifing the fatal error is produced"
86 rm "${TMP1}"
87 "${TESTJAVA}${FS}bin${FS}javac" ${TESTTOOLVMOPTS} -bootclasspath . NoJavaLang.java 2> "${TMP1}"
88
89 # return code should be EXIT_SYSERR
90 result=$?
91 if [ $result -ne 3 ]
92 then
93 echo "Failed - unexpected return code"
94 exit $result
95 else
96 echo "Passed - expected return code"
97 fi
98
99 # expected message
100 cat "${TMP1}"
101 diff ${DIFFOPTS} -c "${TESTSRC}${FS}NoJavaLang.out" "${TMP1}"
102 result=$?
103 rm "${TMP1}"
104
105 if [ $result -eq 0 ]
106 then
107 echo "Passed - expected message"
108 else
109 echo "Failed - unexpected message"
110 exit $result
111
112 fi
113
114 exit

mercurial