*/
@Test
public void testChainInvokableMoreThanOnce() throws Exception
{
// Initialize
Addable calc = new CalculatorServiceBean();
int[] args =
{1, 2, 3};
// Define the chain
Interceptor[] interceptorChain = new Interceptor[]
{new AddOneInterceptor()};
// Make the handler
InterceptorChainInvocationHandler handler = new InterceptorChainInvocationHandler(interceptorChain, calc);
// Apply the chain
Addable newCalc = (Addable) ProxyUtils.mixinProxy(calc, handler);
// Get the result from the service
int result1 = newCalc.add(args);
// Invoke again
int result2 = newCalc.add(args);
// Calculate the expected result (adding all, plus 1)
int expected = this.add(args) + 1;
// Test