1#!/bin/sh 2 3# 4# Copyright (c) 2016, 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 8167018 29# @summary Nashorn and jjs should support --module-path and --add-modules options 30# @run shell jjs-modulepathTest.sh 31# Tests --module-path option to set the module path for jjs 32 33. ${TESTSRC-.}/common.sh 34 35setup 36 37mkdir -p ${TESTCLASSES}/com.greetings 38rm -rf ${TESTCLASSES}/com.greetings 39 40${JAVAC} ${TESTSRC}/com.greetings/module-info.java \ 41 ${TESTSRC}/com.greetings/com/greetings/*.java \ 42 -d ${TESTCLASSES}/com.greetings 43 44# no --add-modules passed. This should result in error. 45${JJS} -scripting --module-path ${TESTCLASSES} ${TESTSRC}/modulepath.js 46 47if [ $? -ne 0 ]; then 48 echo "Error thrown as expected when --add-modules is missing!" 49else 50 echo "Should have thrown error for missing --add-modules!" 51 exit 1 52fi 53 54# proper usage of --module-path with --add-modules 55${JJS} -scripting --module-path ${TESTCLASSES} --add-modules com.greetings ${TESTSRC}/modulepath.js 56if [ $? -ne 0 ]; then 57 exit 1 58fi 59 60# check that repeated --add-modules values are combined 61${JJS} -scripting --module-path ${TESTCLASSES} --add-modules java.base --add-modules com.greetings ${TESTSRC}/addmodulesrepeat.js 62if [ $? -ne 0 ]; then 63 exit 1 64fi 65 66rm -rf ${TESTCLASSES}/com.greetings 67echo "Passed" 68exit 0 69