1 package com.atlassian.sal.core.executor;
2
3 import com.atlassian.sal.api.executor.ThreadLocalContextManager;
4 import org.junit.Test;
5
6 import static org.junit.Assert.assertNotNull;
7
8 public class TestThreadLocalDelegateRunnable {
9
10 @Test
11 public void testRun() throws InterruptedException {
12 final ThreadLocalContextManager<Object> manager = new StubThreadLocalContextManager();
13 Runnable delegate = new Runnable() {
14 public void run() {
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 }