1 16 package test.chains; 17 18 import junit.framework.Test; 19 import junit.framework.TestCase; 20 import junit.framework.TestSuite; 21 import org.apache.axis.AxisFault; 22 import org.apache.axis.Handler; 23 import org.apache.axis.InternalException; 24 import org.apache.axis.MessageContext; 25 import org.apache.axis.SimpleChain; 26 import org.apache.axis.handlers.BasicHandler; 27 28 public class TestSimpleChain extends TestCase 29 { 30 public TestSimpleChain (String name) { 31 super(name); 32 } 33 34 public static Test suite() { 35 return new TestSuite(TestSimpleChain.class); 36 } 37 38 protected void setup() { 39 } 40 41 private class TestHandler extends BasicHandler { 42 public TestHandler() {} 43 public void invoke(MessageContext msgContext) throws AxisFault {} 44 } 45 46 public void testSimpleChainAddHandler() 47 { 48 SimpleChain c = new SimpleChain(); 49 50 Handler h1 = new TestHandler(); 51 assertTrue("Empty chain has a handler", !c.contains(h1)); 52 53 c.addHandler(h1); 54 assertTrue("Added handler not in chain", c.contains(h1)); 55 } 56 57 public void testSimpleChainAddHandlerAfterInvoke() 58 { 59 try { 60 SimpleChain c = new SimpleChain(); 61 Handler h1 = new TestHandler(); 62 c.addHandler(h1); 63 64 MessageContext mc = new MessageContext(null); 66 c.invoke(mc); 67 68 boolean oldLogging = InternalException.getLogging(); 70 InternalException.setLogging(false); 71 72 try { 73 Handler h2 = new TestHandler(); 74 c.addHandler(h2); 75 assertTrue("Handler added after chain invoked", false); 76 } catch (Exception e) { 77 } 79 80 InternalException.setLogging(oldLogging); 82 } catch (AxisFault af) { 83 assertTrue("Unexpected exception", false); 84 } 85 } 86 } 87 | Popular Tags |