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
35 setup
36 ${JAVA} -cp ${TESTCLASSES} CheckEngine
37 if [ $? -eq 2 ]; then
38 echo "No js engine found and engine not required; test vacuously passes."
39 exit 0
40 fi
41
42 # we check whether "excess" args are passed as script arguments
43
44 ${JRUNSCRIPT} -l nashorn -J-Djava.awt.headless=true -f - hello world <<EOF
45
46 if (typeof(arguments) == 'undefined') { println("arguments expected"); exit(1); }
47
48 if (arguments.length != 2) { println("2 arguments are expected here"); exit(1); }
49
50 if (arguments[0] != 'hello') { println("First arg should be 'hello'"); exit(1); }
51
52 if (arguments[1] != 'world') { println("Second arg should be 'world'"); exit(1); }
53
54 println("Passed");
55 exit(0);
56 EOF
57
58 if [ $? -ne 0 ]; then
59 exit 1
60 fi
--- EOF ---