Path: blob/master/test/functional/cmdLineTests/URLClassLoaderTests/Sanity/readme.txt
12626 views
1#2# Copyright (c) 2001, 2018 IBM Corp. and others3#4# This program and the accompanying materials are made available under5# the terms of the Eclipse Public License 2.0 which accompanies this6# distribution and is available at https://www.eclipse.org/legal/epl-2.0/7# or the Apache License, Version 2.0 which accompanies this distribution and8# is available at https://www.apache.org/licenses/LICENSE-2.0.9#10# This Source Code may also be made available under the following11# Secondary Licenses when the conditions for such availability set12# forth in the Eclipse Public License, v. 2.0 are satisfied: GNU13# General Public License, version 2 with the GNU Classpath14# Exception [1] and GNU General Public License, version 2 with the15# OpenJDK Assembly Exception [2].16#17# [1] https://www.gnu.org/software/classpath/license.html18# [2] http://openjdk.java.net/legal/assembly-exception.html19#20# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception21#2223These tests are designed to test the most basic functionality of URLClassLoader to ensure that the support exists and works.2425Note here that "noTimestampChecks" stops the shared classes support from recognising that jar files have been updated2627Sanity.BuildInitial28Creates an A.jar in the test directory and an A_ext.jar in the test JRE extensions directory29The data classes in this jar file print "CACHED" when they are run3031Sanity.success32Stores the classes in the cache from A.jar and A_Ext.jar by running A_Main33A NoClassDefFoundError is likely to be an error with the jar extensions directory3435Sanity.BuildVerify36Builds a new A.jar and A_Ext.jar which print "LOCAL" when they are run37The classes are in the VerifyClasses subdirectory3839Sanity.verifySuccess40Runs A_Main with "noTimestampChecks" which means that if the original "CACHED" classes are properly cached,41they will be loaded and run. If the classes from the new jar files are loaded, "LOCAL" is printed, which is an error.4243Sanity.verifyStale44Runs A_Main without "noTimestampChecks". Expects that the JVM will spot that the jar file has changed and then45even though the required classes are in the cache, it should load the new ones from disk instead.4647