From 0777b40a9719aac372d30396039a637fb35480c6 Mon Sep 17 00:00:00 2001 From: Jörg Budischewski Date: Fri, 19 Jul 2002 11:14:04 +0000 Subject: #101413# added test for garbage collected resources --- .../com/sun/star/lib/sandbox/ResourceTest.java | 39 ++++++++++ sandbox/test/com/sun/star/lib/sandbox/makefile.mk | 86 ++++++++++++++++++++++ 2 files changed, 125 insertions(+) create mode 100644 sandbox/test/com/sun/star/lib/sandbox/ResourceTest.java create mode 100644 sandbox/test/com/sun/star/lib/sandbox/makefile.mk (limited to 'sandbox') diff --git a/sandbox/test/com/sun/star/lib/sandbox/ResourceTest.java b/sandbox/test/com/sun/star/lib/sandbox/ResourceTest.java new file mode 100644 index 000000000000..46125d60458d --- /dev/null +++ b/sandbox/test/com/sun/star/lib/sandbox/ResourceTest.java @@ -0,0 +1,39 @@ +package com.sun.star.lib.sandbox; + +import java.net.URL; +import com.sun.star.lib.sandbox.ClassContextProxy; +import com.sun.star.lib.sandbox.ClassContext; +import com.sun.star.lib.sandbox.Resource; +import com.sun.star.lib.sandbox.ResourceProxy; + +public class ResourceTest +{ + public static void main( String [] args ) throws java.lang.Exception + { + if( args.length != 2 ) + { + System.out.println( "usage : ResourceTest file-url-to-jarfile class-name-in-jarfile" ); + System.exit(1); + } + + URL u2 = new URL( args[0] ); + + ClassContext context = ClassContextProxy.create(u2, null, null, true); + + Resource resource = ResourceProxy.load(u2, null); + resource.loadJar(u2); + context.addCargo( resource ); + resource = null; + + for( int i = 0 ; i < 1000000 ; i ++ ) + { + new Object(); + } + System.gc(); + System.gc(); + System.gc(); + + context.loadClass( args[1] ); + System.out.println( "Test succeeded" ); + } +} diff --git a/sandbox/test/com/sun/star/lib/sandbox/makefile.mk b/sandbox/test/com/sun/star/lib/sandbox/makefile.mk new file mode 100644 index 000000000000..4fb4635023b6 --- /dev/null +++ b/sandbox/test/com/sun/star/lib/sandbox/makefile.mk @@ -0,0 +1,86 @@ +#************************************************************************* +# +# $RCSfile: makefile.mk,v $ +# +# $Revision: 1.1 $ +# +# last change: $Author: jbu $ $Date: 2002-07-19 12:14:04 $ +# +# The Contents of this file are made available subject to the terms of +# either of the following licenses +# +# - GNU Lesser General Public License Version 2.1 +# - Sun Industry Standards Source License Version 1.1 +# +# Sun Microsystems Inc., October, 2000 +# +# GNU Lesser General Public License Version 2.1 +# ============================================= +# Copyright 2000 by Sun Microsystems, Inc. +# 901 San Antonio Road, Palo Alto, CA 94303, USA +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License version 2.1, as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# +# Sun Industry Standards Source License Version 1.1 +# ================================================= +# The contents of this file are subject to the Sun Industry Standards +# Source License Version 1.1 (the "License"); You may not use this file +# except in compliance with the License. You may obtain a copy of the +# License at http://www.openoffice.org/license.html. +# +# Software provided under this License is provided on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, +# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, +# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. +# See the License for the specific provisions governing your rights and +# obligations concerning the Software. +# +# The Initial Developer of the Original Code is: Sun Microsystems, Inc. +# +# Copyright: 2000 by Sun Microsystems, Inc. +# +# All Rights Reserved. +# +# Contributor(s): _______________________________________ +# +# +# +#************************************************************************* + +PRJ = ..$/..$/..$/..$/..$/.. +PRJNAME = sandbox +TARGET = lib_sandbox +PACKAGE = com$/sun$/star$/lib$/sandbox + +# --- Settings ----------------------------------------------------- + +.INCLUDE : settings.mk + +JARFILES= + +# --- Files -------------------------------------------------------- + +JAVAFILES= \ + ResourceTest.java + +JAVACLASSFILES = $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class) + +RC_SUBDIRSDEPS=$(JAVATARGET) + +# --- Targets ------------------------------------------------------ + +.INCLUDE : target.mk + -- cgit