1 package org.objectweb.celtix.bus.context; 2 3 4 5 import javax.xml.ws.handler.MessageContext; 6 import junit.framework.TestCase; 7 import org.objectweb.celtix.context.GenericMessageContext; 8 import org.objectweb.celtix.context.WebServiceContextImpl; 9 10 11 public class WebServiceContextImplTest extends TestCase { 12 13 public void tearDown() { 14 WebServiceContextImpl.clear(); 15 } 16 17 18 public void testConstructor() { 19 20 GenericMessageContext gmc = new GenericMessageContext(); 21 WebServiceContextImpl ctx = new WebServiceContextImpl(gmc); 22 assertSame(gmc, ctx.getMessageContext()); 23 } 24 25 26 public void testGetSetMessageContext() { 27 28 WebServiceContextImpl wsci = new WebServiceContextImpl(); 29 assertNull(wsci.getMessageContext()); 30 31 32 final MessageContext ctx = new GenericMessageContext(); 33 WebServiceContextImpl.setMessageContext(ctx); 34 35 assertSame(ctx, wsci.getMessageContext()); 36 37 Thread t = new Thread () { 38 public void run() { 39 WebServiceContextImpl threadLocalWSCI = new WebServiceContextImpl(); 40 41 assertNull(threadLocalWSCI.getMessageContext()); 42 43 MessageContext threadLocalCtx = new GenericMessageContext(); 44 WebServiceContextImpl.setMessageContext(threadLocalCtx); 45 46 47 assertSame(threadLocalCtx, threadLocalWSCI.getMessageContext()); 48 assertTrue(ctx != threadLocalWSCI.getMessageContext()); 49 50 } 51 }; 52 53 t.start(); 54 55 try { 56 t.join(); 57 } catch (InterruptedException e) { 58 e.printStackTrace(); 59 } 60 61 } 62 } 63 | Popular Tags |