ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/tck/ThreadTest.java
(Generate patch)

Comparing jsr166/src/test/tck/ThreadTest.java (file contents):
Revision 1.1 by dl, Sun Aug 31 19:24:56 2003 UTC vs.
Revision 1.5 by dl, Sat Sep 20 18:20:08 2003 UTC

# Line 6 | Line 6
6   */
7  
8   import junit.framework.*;
9 import java.util.concurrent.Semaphore;
9  
10 < /**
12 < * Test java.lang.Thread
13 < *
14 < */
15 <
16 < public class ThreadTest extends TestCase {
10 > public class ThreadTest extends JSR166TestCase {
11      public static void main(String[] args) {
12          junit.textui.TestRunner.run(suite());  
13      }
# Line 28 | Line 22 | public class ThreadTest extends TestCase
22          }
23      }
24      
25 +    /**
26 +     *
27 +     */
28      public void testGetAndSetUncaughtExceptionHandler() {
29          // these must be done all at once to avoid state
30          // dependencies across tests
31          Thread current = Thread.currentThread();
32          ThreadGroup tg = current.getThreadGroup();
36        assertNull(Thread.getDefaultUncaughtExceptionHandler());
37        assertEquals(tg, current.getUncaughtExceptionHandler());
33          MyHandler eh = new MyHandler();
39        Thread.setDefaultUncaughtExceptionHandler(eh);
40        assertEquals(eh, current.getUncaughtExceptionHandler());
41        assertEquals(eh, Thread.getDefaultUncaughtExceptionHandler());
42        Thread.setDefaultUncaughtExceptionHandler(null);
43        assertNull(Thread.getDefaultUncaughtExceptionHandler());
34          assertEquals(tg, current.getUncaughtExceptionHandler());
35          current.setUncaughtExceptionHandler(eh);
36          assertEquals(eh, current.getUncaughtExceptionHandler());
37          current.setUncaughtExceptionHandler(null);
38          assertEquals(tg, current.getUncaughtExceptionHandler());
39      }
40 +
41 +    /**
42 +     *
43 +     */
44 +    public void testGetAndSetDefaultUncaughtExceptionHandler() {
45 +        assertEquals(null, Thread.getDefaultUncaughtExceptionHandler());
46 +        // failure due to securityException is OK.
47 +        // Would be nice to explicitly test both ways, but cannot yet.
48 +        try {
49 +            Thread current = Thread.currentThread();
50 +            ThreadGroup tg = current.getThreadGroup();
51 +            MyHandler eh = new MyHandler();
52 +            assertEquals(tg, current.getUncaughtExceptionHandler());
53 +            Thread.setDefaultUncaughtExceptionHandler(eh);
54 +            Thread.setDefaultUncaughtExceptionHandler(null);
55 +            assertEquals(tg, current.getUncaughtExceptionHandler());
56 +        }
57 +        catch(SecurityException ok) {
58 +        }
59 +        assertEquals(null, Thread.getDefaultUncaughtExceptionHandler());
60 +    }
61      
62      // How to test actually using UEH within junit?
63  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines