jdk/test/javax/imageio/stream/StreamCloserLeak/run_test.sh
author ohair
Wed, 06 Apr 2011 22:06:11 -0700
changeset 9035 1255eb81cc2f
parent 5506 202f599c92aa
child 12047 320a714614e9
permissions -rw-r--r--
7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2377
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     1
#!/bin/ksh -p
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     2
#
9035
1255eb81cc2f 7033660: Update copyright year to 2011 on any files changed in 2011
ohair
parents: 5506
diff changeset
     3
# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
2377
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     4
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     5
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     6
# This code is free software; you can redistribute it and/or modify it
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     7
# under the terms of the GNU General Public License version 2 only, as
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     8
# published by the Free Software Foundation.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
     9
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    10
# This code is distributed in the hope that it will be useful, but WITHOUT
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    11
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    12
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    13
# version 2 for more details (a copy is included in the LICENSE file that
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    14
# accompanied this code).
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    15
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    16
# You should have received a copy of the GNU General Public License version
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    17
# 2 along with this work; if not, write to the Free Software Foundation,
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    18
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    19
#
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 4660
diff changeset
    20
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 4660
diff changeset
    21
# or visit www.oracle.com if you need additional information or have any
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 4660
diff changeset
    22
# questions.
2377
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    23
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    24
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    25
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    26
#   @test
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    27
#   @bug        6788096
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    28
#   @summary    Test simulates the case of multiple applets executed in
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    29
#               the same VM and verifies that ImageIO shutdown hook
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    30
#               StreamCloser does not cause a leak of classloaders.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    31
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    32
#   @build      test.Main
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    33
#   @build      testapp.Main
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    34
#   @run shell  run_test.sh
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    35
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    36
# There are several resources which need to be present before many
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    37
#  shell scripts can run.  Following are examples of how to check for
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    38
#  many common ones.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    39
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    40
# Note that the shell used is the Korn Shell, KSH
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    41
#
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    42
# Also note, it is recommended that make files NOT be used.  Rather,
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    43
#  put the individual commands directly into this file.  That way,
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    44
#  it is possible to use command line arguments and other shell tech-
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    45
#  niques to find the compiler, etc on different systems.  For example,
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    46
#  a different path could be used depending on whether this were a
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    47
#  Solaris or Win32 machine, which is more difficult (if even possible)
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    48
#  in a make file.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    49
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    50
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    51
# Beginning of subroutines:
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    52
status=1
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    53
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    54
#Call this from anywhere to fail the test with an error message
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    55
# usage: fail "reason why the test failed"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    56
fail()
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    57
 { echo "The test failed :-("
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    58
   echo "$*" 1>&2
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    59
   echo "exit status was $status"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    60
   exit $status
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    61
 } #end of fail()
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    62
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    63
#Call this from anywhere to pass the test with a message
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    64
# usage: pass "reason why the test passed if applicable"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    65
pass()
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    66
 { echo "The test passed!!!"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    67
   echo "$*" 1>&2
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    68
   exit 0
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    69
 } #end of pass()
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    70
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    71
# end of subroutines
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    72
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    73
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    74
# The beginning of the script proper
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    75
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    76
# Checking for proper OS
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    77
OS=`uname -s`
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    78
case "$OS" in
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    79
   SunOS )
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    80
      VAR="One value for Sun"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    81
      DEFAULT_JDK=/usr/local/java/jdk1.2/solaris
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    82
      FILESEP="/"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    83
      PATHSEP=":"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    84
      TMP="/tmp"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    85
      ;;
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    86
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    87
   Linux )
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    88
      VAR="A different value for Linux"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    89
      DEFAULT_JDK=/usr/local/java/jdk1.4/linux-i386
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    90
      FILESEP="/"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    91
      PATHSEP=":"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    92
      TMP="/tmp"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    93
      ;;
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    94
4660
913e357c2e08 6911112: Tests do not work with CYGWIN: javax/imageio/, javax/script/, and sun/misc/
ohair
parents: 2377
diff changeset
    95
   Windows_95 | Windows_98 | Windows_NT | Windows_ME | CYGWIN* )
2377
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    96
      VAR="A different value for Win32"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    97
      DEFAULT_JDK=/usr/local/java/jdk1.2/win32
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    98
      FILESEP="\\"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
    99
      PATHSEP=";"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   100
      TMP=`cd "${SystemRoot}/Temp"; echo ${PWD}`
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   101
      ;;
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   102
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   103
   # catch all other OSs
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   104
   * )
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   105
      echo "Unrecognized system!  $OS"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   106
      fail "Unrecognized system!  $OS"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   107
      ;;
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   108
esac
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   109
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   110
# Want this test to run standalone as well as in the harness, so do the
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   111
#  following to copy the test's directory into the harness's scratch directory
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   112
#  and set all appropriate variables:
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   113
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   114
if [ -z "${TESTJAVA}" ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   115
   # TESTJAVA is not set, so the test is running stand-alone.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   116
   # TESTJAVA holds the path to the root directory of the build of the JDK
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   117
   # to be tested.  That is, any java files run explicitly in this shell
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   118
   # should use TESTJAVA in the path to the java interpreter.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   119
   # So, we'll set this to the JDK spec'd on the command line.  If none
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   120
   # is given on the command line, tell the user that and use a cheesy
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   121
   # default.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   122
   # THIS IS THE JDK BEING TESTED.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   123
   if [ -n "$1" ] ;
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   124
      then TESTJAVA=$1
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   125
      else echo "no JDK specified on command line so using default!"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   126
	 TESTJAVA=$DEFAULT_JDK
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   127
   fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   128
   TESTSRC=.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   129
   TESTCLASSES=.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   130
   STANDALONE=1;
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   131
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   132
echo "JDK under test is: $TESTJAVA"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   133
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   134
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   135
###############  YOUR TEST CODE HERE!!!!!!!  #############
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   136
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   137
#All files required for the test should be in the same directory with
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   138
# this file.  If converting a standalone test to run with the harness,
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   139
# as long as all files are in the same directory and it returns 0 for
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   140
# pass, you should be able to cut and paste it into here and it will
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   141
# run with the test harness.
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   142
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   143
# This is an example of running something -- test
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   144
# The stuff below catches the exit status of test then passes or fails
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   145
# this shell test as appropriate ( 0 status is considered a pass here )
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   146
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   147
echo "Create TestApp.jar..."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   148
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   149
if [ -f TestApp.jar ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   150
    rm -f TestApp.jar
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   151
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   152
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   153
${TESTJAVA}/bin/jar -cvf TestApp.jar -C ${TESTCLASSES} testapp
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   154
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   155
if [ $? -ne "0" ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   156
    fail "Failed to create TestApp.jar"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   157
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   158
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   159
echo "Create Test.jar..."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   160
if [ -f Test.jar ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   161
    rm -f Test.jar
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   162
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   163
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   164
${TESTJAVA}/bin/jar -cvf Test.jar -C ${TESTCLASSES} test
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   165
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   166
if [ $? -ne 0 ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   167
    fail "Failed to create Test.jar"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   168
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   169
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   170
# Prepare temp dir for cahce files
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   171
mkdir ./tmp
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   172
if [ $? -ne 0 ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   173
    fail "Unable to create temp directory."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   174
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   175
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   176
# Verify that all classoladers are destroyed
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   177
${TESTJAVA}/bin/java -cp Test.jar test.Main
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   178
if [ $? -ne 0 ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   179
    fail "Test FAILED: some classloaders weren't destroyed."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   180
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   181
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   182
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   183
# Verify that ImageIO shutdown hook works correcly
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   184
${TESTJAVA}/bin/java -cp Test.jar -DforgetSomeStreams=true test.Main
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   185
if [ $? -ne 0 ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   186
    fail "Test FAILED: some classloaders weren't destroyed of shutdown hook failed."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   187
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   188
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   189
# sanity check: verify that all cache files were deleted
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   190
cache_files=`ls tmp`
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   191
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   192
if [ "x${cache_files}" != "x" ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   193
    echo "WARNING: some cache files was not deleted: ${cache_files}"
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   194
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   195
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   196
echo "Test done."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   197
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   198
status=$?
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   199
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   200
if [ $status -eq "0" ] ; then
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   201
    pass ""
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   202
else
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   203
    fail "Test failed due to test plugin was not found."
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   204
fi
31e15e69d958 6788096: ImageIO SreamCloser causes memory leak in FX applets
bae
parents:
diff changeset
   205