test/jdk/javax/accessibility/AccessibilityProvider/basic.sh
author serb
Tue, 27 Aug 2019 04:43:01 -0700
changeset 58315 07556f8cd819
parent 54855 cd796dd64044
permissions -rw-r--r--
8146238: [macosx] Java2D Queue Flusher crash on OSX after switching between user accounts Reviewed-by: prr, avu
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
31438
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     1
#
54855
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
     2
# Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
31438
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     4
#
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     7
# published by the Free Software Foundation.
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     8
#
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
     9
# This code is distributed in the hope that it will be useful, but WITHOUT
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    10
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    11
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    12
# version 2 for more details (a copy is included in the LICENSE file that
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    13
# accompanied this code).
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    14
#
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    15
# You should have received a copy of the GNU General Public License version
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    16
# 2 along with this work; if not, write to the Free Software Foundation,
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    17
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    18
#
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    19
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    20
# or visit www.oracle.com if you need additional information or have any
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    21
# questions.
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    22
#
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    23
# @test
49090
82c1fe23c469 8196196: Headful tests should not be run in headless mode
serb
parents: 47216
diff changeset
    24
# @key headful
54855
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    25
# @bug 8055160 8216008
31438
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    26
# @summary Unit test for javax.accessibility.AccessibilitySPI
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    27
#
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    28
# @build Load FooProvider BarProvider UnusedProvider
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    29
# @run shell basic.sh
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    30
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    31
# Command-line usage: sh basic.sh /path/to/build
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    32
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    33
if [ -z "$TESTJAVA" ]; then
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    34
  if [ $# -lt 1 ]; then exit 1; fi
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    35
  TESTJAVA="$1"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    36
  TESTSRC=`pwd`
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    37
  TESTCLASSES="`pwd`"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    38
fi
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    39
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    40
JAVA="$TESTJAVA/bin/java"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    41
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    42
OS=`uname -s`
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    43
case "$OS" in
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    44
    SunOS | Darwin | AIX )
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    45
      FS='/'
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    46
      SEP=':' ;;
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    47
    Linux )
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    48
      FS='/'
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    49
      SEP=':' ;;
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    50
    * )
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    51
      FS='\\'
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    52
      SEP='\;' ;;
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    53
esac
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    54
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    55
TESTD=x.test
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    56
rm -rf $TESTD
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    57
mkdir -p $TESTD
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    58
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    59
mv $TESTCLASSES/FooProvider.class $TESTD
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    60
mv $TESTCLASSES/BarProvider.class $TESTD
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    61
mv $TESTCLASSES/UnusedProvider.class $TESTD
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    62
mkdir -p $TESTD/META-INF/services
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    63
echo FooProvider >$TESTD/META-INF/services/javax.accessibility.AccessibilityProvider
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    64
echo BarProvider >>$TESTD/META-INF/services/javax.accessibility.AccessibilityProvider
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    65
echo UnusedProvider >>$TESTD/META-INF/services/javax.accessibility.AccessibilityProvider
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    66
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    67
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    68
failures=0
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    69
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    70
go() {
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    71
  CP="$TESTCLASSES$SEP$TESTD"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    72
  echo ''
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    73
  sh -xc "$JAVA $SECURITY_MANAGER -Djavax.accessibility.assistive_technologies=$PROVIDER1$COMMA$PROVIDER2 -cp $CP Load $1 $2 $3" 2>&1
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    74
  if [ $? != 0 ]; then failures=`expr $failures + 1`; fi
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    75
}
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    76
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    77
# find one provider
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    78
PROVIDER1="FooProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    79
go pass $PROVIDER1
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    80
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    81
# start using security manager
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    82
SECURITY_MANAGER="-Djava.security.manager -Djava.security.policy=$TESTSRC/accessibilityProvider.sp"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    83
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    84
# find one provider (with security manager)
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    85
go pass $PROVIDER1
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    86
SECURITY_MANAGER=
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    87
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    88
# fail if no provider found
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    89
PROVIDER1="NoProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    90
go fail $PROVIDER1
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    91
54855
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    92
# pass if none provider found
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    93
PROVIDER1=
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    94
go pass $PROVIDER1
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    95
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    96
PROVIDER1=" "
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    97
go pass $PROVIDER1
cd796dd64044 8216008: -Djavax.accessibility.assistive_technologies empty list leads to exception
serb
parents: 49090
diff changeset
    98
31438
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
    99
# setup for two providers
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   100
COMMA=","
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   101
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   102
# find two providers, both exist
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   103
PROVIDER1="FooProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   104
PROVIDER2="BarProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   105
go pass $PROVIDER1 $PROVIDER2
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   106
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   107
# find two providers, where second one doesn't exist
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   108
PROVIDER1="FooProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   109
PROVIDER2="NoProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   110
go fail $PROVIDER1 $PROVIDER2
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   111
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   112
# find two providers, where first one doesn't exist
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   113
PROVIDER1="NoProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   114
PROVIDER2="BarProvider"
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   115
go fail $PROVIDER1 $PROVIDER2
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   116
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   117
echo ''
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   118
if [ $failures -gt 0 ];
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   119
  then echo "$failures case(s) failed";
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   120
  else echo "All cases passed"; fi
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   121
exit $failures
5593480edd2a 8055160: Support loading of Assistive Technology from service provider
ptbrunet
parents:
diff changeset
   122