jrunscript-argsTest.sh revision 6073:cea72c2bf071
1#!/bin/sh 2 3# 4# Copyright (c) 2005, 2012, 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# @test 28# @bug 6265810 6705893 29# @build CheckEngine 30# @run shell jrunscript-argsTest.sh 31# @summary Test passing of script arguments from command line 32 33. ${TESTSRC-.}/common.sh 34 35setup 36${JAVA} -cp ${TESTCLASSES} CheckEngine 37if [ $? -eq 2 ]; then 38 echo "No js engine found and engine not required; test vacuously passes." 39 exit 0 40fi 41 42# we check whether "excess" args are passed as script arguments 43 44${JRUNSCRIPT} -J-Djava.awt.headless=true -f - hello world <<EOF 45 46if (typeof(arguments) == 'undefined') { println("arguments expected"); exit(1); } 47 48if (arguments.length != 2) { println("2 arguments are expected here"); exit(1); } 49 50if (arguments[0] != 'hello') { println("First arg should be 'hello'"); exit(1); } 51 52if (arguments[1] != 'world') { println("Second arg should be 'world'"); exit(1); } 53 54println("Passed"); 55exit(0); 56EOF 57 58if [ $? -ne 0 ]; then 59 exit 1 60fi 61