Signed-off-by: Tomek Grabiec <tgrab...@gmail.com> --- Makefile | 1 + regression/jvm/MultithreadingTest.java | 66 ++++++++++++++++++++++++++++++++ regression/run-suite.sh | 1 + 3 files changed, 68 insertions(+), 0 deletions(-) create mode 100644 regression/jvm/MultithreadingTest.java
diff --git a/Makefile b/Makefile index 5f65093..f1add54 100644 --- a/Makefile +++ b/Makefile @@ -247,6 +247,7 @@ REGRESSION_TEST_SUITE_CLASSES = \ regression/jvm/LongArithmeticTest.class \ regression/jvm/MethodInvocationAndReturnTest.class \ regression/jvm/MethodInvocationExceptionsTest.class \ + regression/jvm/MultithreadingTest.class \ regression/jvm/ObjectArrayTest.class \ regression/jvm/ObjectCreationAndManipulationExceptionsTest.class \ regression/jvm/ObjectCreationAndManipulationTest.class \ diff --git a/regression/jvm/MultithreadingTest.java b/regression/jvm/MultithreadingTest.java new file mode 100644 index 0000000..2f4c368 --- /dev/null +++ b/regression/jvm/MultithreadingTest.java @@ -0,0 +1,66 @@ +/* + * Copyright (C) 2009 Tomasz Grabiec + * + * This file is released under the GPL version 2 with the following + * clarification and special exception: + * + * Linking this library statically or dynamically with other modules is + * making a combined work based on this library. Thus, the terms and + * conditions of the GNU General Public License cover the whole + * combination. + * + * As a special exception, the copyright holders of this library give you + * permission to link this library with independent modules to produce an + * executable, regardless of the license terms of these independent + * modules, and to copy and distribute the resulting executable under terms + * of your choice, provided that you also meet, for each linked independent + * module, the terms and conditions of the license of that module. An + * independent module is a module which is not derived from or based on + * this library. If you modify this library, you may extend this exception + * to your version of the library, but you are not obligated to do so. If + * you do not wish to do so, delete this exception statement from your + * version. + * + * Please refer to the file LICENSE for details. + */ +package jvm; + +/** + * @author Tomasz Grabiec + */ +public class MultithreadingTest extends TestCase { + public static void testMainThread() { + Thread main = Thread.currentThread(); + + assertObjectEquals("main", main.getName()); + } + + static class TestThread extends Thread { + public boolean thread_run = false; + + public void run() { + thread_run = true; + } + }; + + public static void testThreadIsExecuted() { + TestThread t; + + t = new TestThread(); + + t.start(); + + try { + t.join(); + } catch (InterruptedException e) { + fail(); + } + + assertTrue(t.thread_run); + } + + public static void main(String []args) { + testMainThread(); + testThreadIsExecuted(); + } +} diff --git a/regression/run-suite.sh b/regression/run-suite.sh index f286ebf..02e5126 100755 --- a/regression/run-suite.sh +++ b/regression/run-suite.sh @@ -70,6 +70,7 @@ if [ -z "$CLASS_LIST" ]; then run_java jvm.LongArithmeticTest 0 run_java jvm.MethodInvocationAndReturnTest 0 run_java jvm.MethodInvocationExceptionsTest 0 + run_java jvm.MultithreadingTest 0 run_java jvm.ObjectArrayTest 0 run_java jvm.ObjectCreationAndManipulationExceptionsTest 0 run_java jvm.ObjectCreationAndManipulationTest 0 -- 1.6.0.6 ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Jatovm-devel mailing list Jatovm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jatovm-devel