diff options
-rwxr-xr-x | make/scripts/java-win32.bat | 6 | ||||
-rwxr-xr-x | make/scripts/java-win64.bat | 8 | ||||
-rwxr-xr-x | make/scripts/make.gluegen.all.win32.bat | 6 | ||||
-rwxr-xr-x | make/scripts/make.gluegen.all.win64.bat | 6 | ||||
-rwxr-xr-x | make/scripts/runtest-x32.bat | 3 | ||||
-rwxr-xr-x | make/scripts/runtest-x64.bat | 3 | ||||
-rwxr-xr-x | make/scripts/runtest.sh | 6 | ||||
-rw-r--r-- | make/scripts/setenv-build-jogl-x86.sh | 16 | ||||
-rw-r--r-- | src/java/com/jogamp/common/util/IOUtil.java | 172 | ||||
-rw-r--r-- | src/java/com/jogamp/common/util/IntIntHashMap.java | 7 | ||||
-rw-r--r-- | src/junit/com/jogamp/common/util/IntIntHashMapTest.java | 4 | ||||
-rw-r--r-- | src/junit/com/jogamp/common/util/IntObjectHashMapTest.java | 4 | ||||
-rw-r--r-- | src/junit/com/jogamp/common/util/LongIntHashMapTest.java | 4 |
13 files changed, 182 insertions, 63 deletions
diff --git a/make/scripts/java-win32.bat b/make/scripts/java-win32.bat index 9b12e4c..4cae57e 100755 --- a/make/scripts/java-win32.bat +++ b/make/scripts/java-win32.bat @@ -1,8 +1,8 @@ set BLD_SUB=build-win32
-set J2RE_HOME=c:\jre1.7.0_45_x32
-set JAVA_HOME=c:\jdk1.7.0_45_x32
-set ANT_PATH=C:\apache-ant-1.8.2
+set J2RE_HOME=c:\jre1.7.0_67_x32
+set JAVA_HOME=c:\jdk1.7.0_67_x32
+set ANT_PATH=C:\apache-ant-1.9.4
set BLD_DIR=..\%BLD_SUB%
REM set LIB_DIR=..\%BLD_SUB%\obj;..\%BLD_SUB%\test\build\natives
diff --git a/make/scripts/java-win64.bat b/make/scripts/java-win64.bat index 904acff..3f14c82 100755 --- a/make/scripts/java-win64.bat +++ b/make/scripts/java-win64.bat @@ -1,8 +1,8 @@ set BLD_SUB=build-win64
-set J2RE_HOME=c:\jre1.7.0_45_x64
-set JAVA_HOME=c:\jdk1.7.0_45_x64
-set ANT_PATH=C:\apache-ant-1.8.2
+set J2RE_HOME=c:\jre1.7.0_67_x64
+set JAVA_HOME=c:\jdk1.7.0_67_x64
+set ANT_PATH=C:\apache-ant-1.9.4
set BLD_DIR=..\%BLD_SUB%
REM set LIB_DIR=..\%BLD_SUB%\obj;..\%BLD_SUB%\test\build\natives
@@ -14,7 +14,7 @@ set CP_ALL=.;lib\junit.jar;%ANT_PATH%\lib\ant.jar;%ANT_PATH%\lib\ant-junit.jar;l echo CP_ALL %CP_ALL%
-set D_ARGS="-Djogamp.debug.Platform" "-Djogamp.debug.NativeLibrary"
+set D_ARGS="-Djogamp.debug.Platform" "-Djogamp.debug.NativeLibrary" "-Djogamp.debug.IOUtil"
REM set D_ARGS="-Djogamp.debug.IOUtil"
REM set D_ARGS="-Djogamp.debug=all"
diff --git a/make/scripts/make.gluegen.all.win32.bat b/make/scripts/make.gluegen.all.win32.bat index bd24ddb..86e8140 100755 --- a/make/scripts/make.gluegen.all.win32.bat +++ b/make/scripts/make.gluegen.all.win32.bat @@ -1,8 +1,8 @@ set THISDIR="C:\JOGL"
-set J2RE_HOME=c:\jre1.7.0_45_x32
-set JAVA_HOME=c:\jdk1.7.0_45_x32
-set ANT_PATH=C:\apache-ant-1.8.2
+set J2RE_HOME=c:\jre1.7.0_67_x32
+set JAVA_HOME=c:\jdk1.7.0_67_x32
+set ANT_PATH=C:\apache-ant-1.9.4
set PATH=%JAVA_HOME%\bin;%ANT_PATH%\bin;c:\mingw\bin;%PATH%
diff --git a/make/scripts/make.gluegen.all.win64.bat b/make/scripts/make.gluegen.all.win64.bat index cbcf8d4..ea61416 100755 --- a/make/scripts/make.gluegen.all.win64.bat +++ b/make/scripts/make.gluegen.all.win64.bat @@ -1,8 +1,8 @@ set THISDIR="C:\JOGL"
-set J2RE_HOME=c:\jre1.7.0_45_x64
-set JAVA_HOME=c:\jdk1.7.0_45_x64
-set ANT_PATH=C:\apache-ant-1.8.2
+set J2RE_HOME=c:\jre1.7.0_67_x64
+set JAVA_HOME=c:\jdk1.7.0_67_x64
+set ANT_PATH=C:\apache-ant-1.9.4
set PATH=%JAVA_HOME%\bin;%ANT_PATH%\bin;c:\mingw64\bin;c:\mingw\bin;%PATH%
diff --git a/make/scripts/runtest-x32.bat b/make/scripts/runtest-x32.bat index 2c5e8e2..5a2739c 100755 --- a/make/scripts/runtest-x32.bat +++ b/make/scripts/runtest-x32.bat @@ -1,7 +1,8 @@ REM scripts\java-win32.bat com.jogamp.common.GlueGenVersion REM scripts\java-win32.bat com.jogamp.common.util.TestVersionInfo REM scripts\java-win32.bat com.jogamp.gluegen.test.junit.generation.Test1p1JavaEmitter -scripts\java-win32.bat com.jogamp.gluegen.test.junit.generation.Test1p2ProcAddressEmitter +REM scripts\java-win32.bat com.jogamp.gluegen.test.junit.generation.Test1p2ProcAddressEmitter +scripts\java-win32.bat com.jogamp.common.util.TestTempJarCache REM scripts\java-win32.bat com.jogamp.common.os.TestElfReader01 REM scripts\java-win32.bat com.jogamp.common.util.TestIOUtilURIHandling diff --git a/make/scripts/runtest-x64.bat b/make/scripts/runtest-x64.bat index 6b42c28..f03dc41 100755 --- a/make/scripts/runtest-x64.bat +++ b/make/scripts/runtest-x64.bat @@ -1,7 +1,8 @@ REM scripts\java-win64.bat com.jogamp.common.GlueGenVersion REM scripts\java-win64.bat com.jogamp.common.util.TestVersionInfo REM scripts\java-win64.bat com.jogamp.gluegen.test.junit.generation.Test1p1JavaEmitter -scripts\java-win64.bat com.jogamp.gluegen.test.junit.generation.Test1p2ProcAddressEmitter +REM scripts\java-win64.bat com.jogamp.gluegen.test.junit.generation.Test1p2ProcAddressEmitter +scripts\java-win64.bat com.jogamp.common.util.TestTempJarCache REM scripts\java-win64.bat com.jogamp.common.os.TestElfReader01 REM scripts\java-win64.bat com.jogamp.common.util.TestIOUtil01 diff --git a/make/scripts/runtest.sh b/make/scripts/runtest.sh index ccdae48..1d6402d 100755 --- a/make/scripts/runtest.sh +++ b/make/scripts/runtest.sh @@ -53,7 +53,7 @@ rm -f $LOG #D_ARGS="-Djogamp.debug.Lock" #D_ARGS="-Djogamp.debug.Lock -Djogamp.debug.Lock.TraceLock" #D_ARGS="-Djogamp.debug.Lock.TraceLock" -#D_ARGS="-Djogamp.debug.IOUtil" +D_ARGS="-Djogamp.debug.IOUtil" #D_ARGS="-Djogamp.debug.Bitstream" #D_ARGS="-Djogamp.debug=all" @@ -100,7 +100,7 @@ function onetest() { #onetest com.jogamp.common.util.TestIOUtil01 2>&1 | tee -a $LOG #onetest com.jogamp.common.util.TestIOUtilURICompose 2>&1 | tee -a $LOG #onetest com.jogamp.common.util.TestIOUtilURIHandling 2>&1 | tee -a $LOG -#onetest com.jogamp.common.util.TestTempJarCache 2>&1 | tee -a $LOG +onetest com.jogamp.common.util.TestTempJarCache 2>&1 | tee -a $LOG #onetest com.jogamp.common.util.TestJarUtil 2>&1 | tee -a $LOG #onetest com.jogamp.common.util.TestValueConversion 2>&1 | tee -a $LOG #onetest com.jogamp.common.util.TestSyncRingBuffer01 $* @@ -121,7 +121,7 @@ function onetest() { #onetest com.jogamp.common.os.TestElfReader01 2>&1 | tee -a $LOG #onetest com.jogamp.gluegen.PCPPTest 2>&1 | tee -a $LOG #onetest com.jogamp.gluegen.test.junit.generation.Test1p1JavaEmitter 2>&1 | tee -a $LOG -onetest com.jogamp.gluegen.test.junit.generation.Test1p2ProcAddressEmitter 2>&1 | tee -a $LOG +#onetest com.jogamp.gluegen.test.junit.generation.Test1p2ProcAddressEmitter 2>&1 | tee -a $LOG #onetest com.jogamp.gluegen.test.junit.generation.Test1p2LoadJNIAndImplLib 2>&1 | tee -a $LOG #onetest com.jogamp.gluegen.test.junit.structgen.TestStructGen01 2>&1 | tee -a $LOG #onetest com.jogamp.gluegen.test.junit.structgen.TestStructGen02 2>&1 | tee -a $LOG diff --git a/make/scripts/setenv-build-jogl-x86.sh b/make/scripts/setenv-build-jogl-x86.sh index ce055ba..5e4e542 100644 --- a/make/scripts/setenv-build-jogl-x86.sh +++ b/make/scripts/setenv-build-jogl-x86.sh @@ -19,15 +19,25 @@ if [ -z "$ANT_PATH" ] ; then exit fi -if [ -e /opt-linux-x86/jre7 -a -e /opt-linux-x86/j2se7 ] ; then - J2RE_HOME=/opt-linux-x86/jre7 - JAVA_HOME=/opt-linux-x86/j2se7 +if [ -e /opt-linux-x86/jre8 -a -e /opt-linux-x86/j2se8 ] ; then + J2RE_HOME=/opt-linux-x86/jre8 + JAVA_HOME=/opt-linux-x86/j2se8 PATH=$J2RE_HOME/bin:$JAVA_HOME/bin:$PATH export J2RE_HOME JAVA_HOME FOUND_JAVA=1 fi if [ -z "$FOUND_JAVA" ] ; then + if [ -e /opt-linux-x86/jre7 -a -e /opt-linux-x86/j2se7 ] ; then + J2RE_HOME=/opt-linux-x86/jre7 + JAVA_HOME=/opt-linux-x86/j2se7 + PATH=$J2RE_HOME/bin:$JAVA_HOME/bin:$PATH + export J2RE_HOME JAVA_HOME + FOUND_JAVA=1 + fi +fi + +if [ -z "$FOUND_JAVA" ] ; then if [ -e /opt-linux-x86/jre6 -a -e /opt-linux-x86/j2se6 ] ; then J2RE_HOME=/opt-linux-x86/jre6 JAVA_HOME=/opt-linux-x86/j2se6 diff --git a/src/java/com/jogamp/common/util/IOUtil.java b/src/java/com/jogamp/common/util/IOUtil.java index 3b145af..c6548e4 100644 --- a/src/java/com/jogamp/common/util/IOUtil.java +++ b/src/java/com/jogamp/common/util/IOUtil.java @@ -34,9 +34,11 @@ import java.io.Closeable; import java.io.File; import java.io.FileOutputStream; import java.io.FilePermission; +import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.io.PrintStream; import java.lang.reflect.Constructor; import java.net.URI; import java.net.URISyntaxException; @@ -1056,10 +1058,17 @@ public class IOUtil { return ".sh"; } } + private static String getShellCode() { + switch(PlatformPropsImpl.OS_TYPE) { + case WINDOWS: + return "echo off"+PlatformPropsImpl.NEWLINE; + default: + return null; + } + } private static boolean getOSHasNoexecFS() { switch(PlatformPropsImpl.OS_TYPE) { - case WINDOWS: case OPENKODE: return false; @@ -1114,6 +1123,52 @@ public class IOUtil { return true; } + public static class StreamMonitor implements Runnable { + private final InputStream[] istreams; + private final PrintStream ostream; + private final String prefix; + public StreamMonitor(final InputStream[] streams, final PrintStream ostream, final String prefix) { + this.istreams = streams; + this.ostream = ostream; + this.prefix = prefix; + new Thread(this, "StreamMonitor-"+Thread.currentThread().getName()).start(); + } + @Override + public void run() + { + final byte[] buffer = new byte[4096]; + try { + int numRead; + do { + numRead = 0; + for(int i=0; i<istreams.length; i++) { + final int numReadI = istreams[i].read(buffer); + if (numReadI > 0) { + if( null != ostream ) { + if( null != prefix ) { + ostream.write(prefix.getBytes()); + } + ostream.write(buffer, 0, numReadI); + } + numRead += numReadI; + } + } + if( null != ostream ) { + ostream.flush(); + } + } while (numRead >= 0); + } + catch (final IOException e) { + for(int i=0; i<istreams.length; i++) { + try { + istreams[i].close(); + } catch (final IOException e2) { } + } + // Should allow clean exit when process shuts down + } + } + } + /** * Returns true if the given {@code dir} * <ol> @@ -1142,6 +1197,7 @@ public class IOUtil { return true; } + final long t0 = DEBUG ? System.currentTimeMillis() : 0; File exetst; try { exetst = File.createTempFile("jogamp_exe_tst", getShellSuffix(), dir); @@ -1153,10 +1209,24 @@ public class IOUtil { } return false; } + final long t1 = DEBUG ? System.currentTimeMillis() : 0; int res = -1; if(exetst.setExecutable(true /* exec */, true /* ownerOnly */)) { + final String shellCode = getShellCode(); try { + if( isStringSet(shellCode) ) { + final FileWriter fout = new FileWriter(exetst); + fout.write(shellCode); + fout.close(); + } final Process pr = Runtime.getRuntime().exec(exetst.getCanonicalPath()); + /** + * Disable StreamMonitor, which throttles exec-test performance a lot! + * + * if( isStringSet(shellCode) ) { + new StreamMonitor(new InputStream[] { pr.getInputStream(), pr.getErrorStream() }, System.err, "Exe-Tst: "); + } + */ pr.waitFor() ; res = pr.exitValue(); } catch (final SecurityException se) { @@ -1169,9 +1239,11 @@ public class IOUtil { } } } + final long t2 = DEBUG ? System.currentTimeMillis() : 0; exetst.delete(); - if(DEBUG) { + if( DEBUG) { System.err.println("IOUtil.testDirExec(): <"+dir.getAbsolutePath()+">: res "+res); + System.err.println("IOUtil.testDirExec(): total "+(t2-t0)+"ms, create "+(t1-t0)+"ms, execute "+(t2-t1)+"ms"); } return 0 == res; } @@ -1253,6 +1325,14 @@ public class IOUtil { return tmpBaseDir; } + private static File getFile(final String fname) { + if( isStringSet(fname) ) { + return new File(fname); + } else { + return null; + } + + } /** * Returns a platform independent writable directory for temporary files * consisting of the platform's {@code temp-root} + {@link #tmpSubDir}, @@ -1295,82 +1375,102 @@ public class IOUtil { } } - final String java_io_tmpdir = PropertyAccess.getProperty(java_io_tmpdir_propkey, false); - final String user_temp; // only if diff than java_io_tmpdir + final File java_io_tmpdir = getFile( PropertyAccess.getProperty(java_io_tmpdir_propkey, false) ); + if(DEBUG) { + System.err.println("IOUtil.getTempRoot(): tempX1 <"+java_io_tmpdir+">, used "+(null!=java_io_tmpdir)); + } + + final File user_tmpdir; // only if diff than java_io_tmpdir { - String _user_temp = System.getenv("TMPDIR"); - if( !isStringSet(_user_temp) ) { - _user_temp = System.getenv("TEMP"); + String __user_tmpdir = System.getenv("TMPDIR"); + if( !isStringSet(__user_tmpdir) ) { + __user_tmpdir = System.getenv("TEMP"); } - if( isStringSet(_user_temp) && !_user_temp.equals(java_io_tmpdir) ) { - user_temp = _user_temp; + final File _user_tmpdir = getFile(__user_tmpdir); + if( null != _user_tmpdir && !_user_tmpdir.equals(java_io_tmpdir) ) { + user_tmpdir = _user_tmpdir; } else { - user_temp = null; + user_tmpdir = null; + } + if(DEBUG) { + System.err.println("IOUtil.getTempRoot(): tempX3 <"+_user_tmpdir+">, used "+(null!=user_tmpdir)); } } - final String user_home = PropertyAccess.getProperty(user_home_propkey, false); - final String xdg_cache_home; + final File user_home = getFile( PropertyAccess.getProperty(user_home_propkey, false) ); + if(DEBUG) { + System.err.println("IOUtil.getTempRoot(): tempX4 <"+user_home+">, used "+(null!=user_home)); + } + + final File xdg_cache_home; { - String _xdg_cache_home; + String __xdg_cache_home; if( getOSHasFreeDesktopXDG() ) { - _xdg_cache_home = System.getenv(XDG_CACHE_HOME_envkey); - if( !isStringSet(_xdg_cache_home) && isStringSet(user_home) ) { - _xdg_cache_home = user_home + File.separator + ".cache" ; // default + __xdg_cache_home = System.getenv(XDG_CACHE_HOME_envkey); + if( !isStringSet(__xdg_cache_home) && null != user_home ) { + __xdg_cache_home = user_home.getAbsolutePath() + File.separator + ".cache" ; // default } } else { - _xdg_cache_home = null; + __xdg_cache_home = null; + } + final File _xdg_cache_home = getFile(__xdg_cache_home); + if( null != _xdg_cache_home && !_xdg_cache_home.equals(java_io_tmpdir) ) { + xdg_cache_home = _xdg_cache_home; + } else { + xdg_cache_home = null; + } + if(DEBUG) { + System.err.println("IOUtil.getTempRoot(): tempX2 <"+_xdg_cache_home+">, used "+(null!=xdg_cache_home)); } - xdg_cache_home = _xdg_cache_home; } // 1) java.io.tmpdir/jogamp - if( null == tempRootExec && isStringSet(java_io_tmpdir) ) { + if( null == tempRootExec && null != java_io_tmpdir ) { if( Platform.OSType.MACOS == PlatformPropsImpl.OS_TYPE ) { // Bug 865: Safari >= 6.1 [OSX] May employ xattr on 'com.apple.quarantine' on 'PluginProcess.app' // We attempt to fix this issue _after_ gluegen native lib is loaded, see JarUtil.fixNativeLibAttribs(File). - tempRootExec = getSubTempDir(new File(java_io_tmpdir), tmpSubDir, false /* executable */, "tempX1"); + tempRootExec = getSubTempDir(java_io_tmpdir, tmpSubDir, false /* executable */, "tempX1"); } else { - tempRootExec = getSubTempDir(new File(java_io_tmpdir), tmpSubDir, true /* executable */, "tempX1"); + tempRootExec = getSubTempDir(java_io_tmpdir, tmpSubDir, true /* executable */, "tempX1"); } } // 2) $XDG_CACHE_HOME/jogamp - if(null == tempRootExec && isStringSet(xdg_cache_home)) { - tempRootExec = getSubTempDir(new File(xdg_cache_home), tmpSubDir, true /* executable */, "tempX2"); + if( null == tempRootExec && null != xdg_cache_home ) { + tempRootExec = getSubTempDir(xdg_cache_home, tmpSubDir, true /* executable */, "tempX2"); } // 3) $TMPDIR/jogamp - if(null == tempRootExec && isStringSet(user_temp)) { - tempRootExec = getSubTempDir(new File(user_temp), tmpSubDir, true /* executable */, "tempX3"); + if( null == tempRootExec && null != user_tmpdir ) { + tempRootExec = getSubTempDir(user_tmpdir, tmpSubDir, true /* executable */, "tempX3"); } // 4) $HOME/.jogamp - if(null == tempRootExec && isStringSet(user_home)) { - tempRootExec = getSubTempDir(new File(user_home), "." + tmpSubDir, true /* executable */, "tempX4"); + if( null == tempRootExec && null != user_home ) { + tempRootExec = getSubTempDir(user_home, "." + tmpSubDir, true /* executable */, "tempX4"); } - if(null != tempRootExec) { + if( null != tempRootExec ) { tempRootNoexec = tempRootExec; } else { // 1) java.io.tmpdir/jogamp - if( null == tempRootNoexec && isStringSet(java_io_tmpdir) ) { - tempRootNoexec = getSubTempDir(new File(java_io_tmpdir), tmpSubDir, false /* executable */, "temp01"); + if( null == tempRootNoexec && null != java_io_tmpdir ) { + tempRootNoexec = getSubTempDir(java_io_tmpdir, tmpSubDir, false /* executable */, "temp01"); } // 2) $XDG_CACHE_HOME/jogamp - if(null == tempRootNoexec && isStringSet(xdg_cache_home)) { - tempRootNoexec = getSubTempDir(new File(xdg_cache_home), tmpSubDir, false /* executable */, "temp02"); + if( null == tempRootNoexec && null != xdg_cache_home ) { + tempRootNoexec = getSubTempDir(xdg_cache_home, tmpSubDir, false /* executable */, "temp02"); } // 3) $TMPDIR/jogamp - if(null == tempRootNoexec && isStringSet(user_temp)) { - tempRootNoexec = getSubTempDir(new File(user_temp), tmpSubDir, false /* executable */, "temp03"); + if( null == tempRootNoexec && null != user_tmpdir ) { + tempRootNoexec = getSubTempDir(user_tmpdir, tmpSubDir, false /* executable */, "temp03"); } // 4) $HOME/.jogamp - if(null == tempRootNoexec && isStringSet(user_home)) { - tempRootNoexec = getSubTempDir(new File(user_home), "." + tmpSubDir, false /* executable */, "temp04"); + if( null == tempRootNoexec && null != user_home ) { + tempRootNoexec = getSubTempDir(user_home, "." + tmpSubDir, false /* executable */, "temp04"); } } diff --git a/src/java/com/jogamp/common/util/IntIntHashMap.java b/src/java/com/jogamp/common/util/IntIntHashMap.java index 954b379..f78b1e0 100644 --- a/src/java/com/jogamp/common/util/IntIntHashMap.java +++ b/src/java/com/jogamp/common/util/IntIntHashMap.java @@ -162,18 +162,19 @@ public class /*name*/IntIntHashMap/*name*/ implements Cloneable, mask, capacity, threshold, keyNotFoundValue); + final ArrayList<Entry> entries = new ArrayList<Entry>(); for(int i=table.length-1; i>=0; i--) { // single linked list -> ArrayList - final ArrayList<Entry> entries = new ArrayList<Entry>(); Entry se = table[i]; while(null != se) { entries.add(se); se = se.next; } // clone ArrayList -> single linked list (bwd) + final int count = entries.size(); Entry de_next = null; - for(int j=entries.size()-1; j>=0; j--) { - se = entries.get(j); + for(int j=count-1; j>=0; j--) { + se = entries.remove(j); if( isPrimitive ) { de_next = new Entry(se.key, se.value, de_next); } else { diff --git a/src/junit/com/jogamp/common/util/IntIntHashMapTest.java b/src/junit/com/jogamp/common/util/IntIntHashMapTest.java index ac009cb..75524ac 100644 --- a/src/junit/com/jogamp/common/util/IntIntHashMapTest.java +++ b/src/junit/com/jogamp/common/util/IntIntHashMapTest.java @@ -35,10 +35,12 @@ import java.io.IOException; import java.util.HashMap; import java.util.Iterator; import java.util.Map.Entry; + import org.junit.BeforeClass; import org.junit.Test; import com.jogamp.common.os.Platform; +import com.jogamp.junit.util.JunitTracer; import static org.junit.Assert.*; import static java.lang.System.*; @@ -52,7 +54,7 @@ import org.junit.FixMethodOrder; import org.junit.runners.MethodSorters; @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class IntIntHashMapTest { +public class IntIntHashMapTest extends JunitTracer { private static int iterations; private static IntIntUniqueRndValues pairs; diff --git a/src/junit/com/jogamp/common/util/IntObjectHashMapTest.java b/src/junit/com/jogamp/common/util/IntObjectHashMapTest.java index 11bf765..3207683 100644 --- a/src/junit/com/jogamp/common/util/IntObjectHashMapTest.java +++ b/src/junit/com/jogamp/common/util/IntObjectHashMapTest.java @@ -35,10 +35,12 @@ import java.io.IOException; import java.util.HashMap; import java.util.Iterator; import java.util.Map.Entry; + import org.junit.BeforeClass; import org.junit.Test; import com.jogamp.common.os.Platform; +import com.jogamp.junit.util.JunitTracer; import static org.junit.Assert.*; @@ -51,7 +53,7 @@ import org.junit.FixMethodOrder; import org.junit.runners.MethodSorters; @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class IntObjectHashMapTest { +public class IntObjectHashMapTest extends JunitTracer { private static int iterations; private static IntIntObjUniqueRndValues pairs; diff --git a/src/junit/com/jogamp/common/util/LongIntHashMapTest.java b/src/junit/com/jogamp/common/util/LongIntHashMapTest.java index f6ec4bc..90e54b9 100644 --- a/src/junit/com/jogamp/common/util/LongIntHashMapTest.java +++ b/src/junit/com/jogamp/common/util/LongIntHashMapTest.java @@ -35,10 +35,12 @@ import java.io.IOException; import java.util.Iterator; import java.util.HashMap; import java.util.Map.Entry; + import org.junit.BeforeClass; import org.junit.Test; import com.jogamp.common.os.Platform; +import com.jogamp.junit.util.JunitTracer; import static org.junit.Assert.*; import static java.lang.System.*; @@ -52,7 +54,7 @@ import org.junit.FixMethodOrder; import org.junit.runners.MethodSorters; @FixMethodOrder(MethodSorters.NAME_ASCENDING) -public class LongIntHashMapTest { +public class LongIntHashMapTest extends JunitTracer { private static int iterations; private static LongIntUniqueRndValues pairs; |