1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.springframework.ws.soap.security.callback;
18
19 import javax.security.auth.callback.Callback;
20 import javax.security.auth.callback.CallbackHandler;
21 import javax.security.auth.callback.UnsupportedCallbackException;
22
23 import org.junit.Test;
24
25 public class CallbackHandlerChainTest {
26
27 private CallbackHandler supported = new CallbackHandler() {
28 public void handle(Callback[] callbacks) {
29 }
30 };
31
32 private CallbackHandler unsupported = new CallbackHandler() {
33 public void handle(Callback[] callbacks) throws UnsupportedCallbackException {
34 throw new UnsupportedCallbackException(callbacks[0]);
35 }
36 };
37
38 private Callback callback = new Callback() {
39 };
40
41 @Test
42 public void testSupported() throws Exception {
43 CallbackHandlerChain chain = new CallbackHandlerChain(new CallbackHandler[]{supported});
44 chain.handle(new Callback[]{callback});
45 }
46
47 @Test
48 public void testUnsupportedSupported() throws Exception {
49 CallbackHandlerChain chain = new CallbackHandlerChain(new CallbackHandler[]{unsupported, supported});
50 chain.handle(new Callback[]{callback});
51 }
52
53 @Test(expected = UnsupportedCallbackException.class)
54 public void testUnsupported() throws Exception {
55 CallbackHandlerChain chain = new CallbackHandlerChain(new CallbackHandler[]{unsupported});
56 chain.handle(new Callback[]{callback});
57 }
58 }