View Javadoc

1   package com.atlassian.sal.core.executor;
2   
3   import com.atlassian.sal.api.executor.ThreadLocalContextManager;
4   import junit.framework.TestCase;
5   
6   public class TestThreadLocalDelegateRunnable extends TestCase
7   {
8       public void testRun() throws InterruptedException
9       {
10          final ThreadLocalContextManager<Object> manager = new StubThreadLocalContextManager();
11          Runnable delegate = new Runnable()
12          {
13              public void run()
14              {
15                  assertNotNull(manager.getThreadLocalContext());
16              }
17          };
18  
19          manager.setThreadLocalContext(new Object());
20          Thread t = new Thread(new ThreadLocalDelegateRunnable<Object>(manager, delegate));
21          t.start();
22          t.join(10000);
23          assertNotNull(manager.getThreadLocalContext());
24      }
25  }