use of com.opensymphony.xwork2.interceptor.Interceptor in project struts by apache.
the class XmlConfigurationProviderInterceptorParamOverridingTest method testInterceptorParamOveriding.
public void testInterceptorParamOveriding() throws Exception {
DefaultConfiguration conf = new DefaultConfiguration();
final XmlConfigurationProvider p = new StrutsXmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-interceptor-param-overriding.xml");
DefaultFileManagerFactory factory = new DefaultFileManagerFactory();
factory.setContainer(container);
factory.setFileManager(new DefaultFileManager());
p.setFileManagerFactory(factory);
conf.reloadContainer(new ArrayList<ContainerProvider>() {
{
add(new StrutsDefaultConfigurationProvider());
add(p);
}
});
RuntimeConfiguration rtConf = conf.getRuntimeConfiguration();
ActionConfig actionOne = rtConf.getActionConfig("", "actionOne");
ActionConfig actionTwo = rtConf.getActionConfig("", "actionTwo");
List<InterceptorMapping> actionOneInterceptors = actionOne.getInterceptors();
List<InterceptorMapping> actionTwoInterceptors = actionTwo.getInterceptors();
assertNotNull(actionOne);
assertNotNull(actionTwo);
assertNotNull(actionOneInterceptors);
assertNotNull(actionTwoInterceptors);
assertEquals(actionOneInterceptors.size(), 3);
assertEquals(actionTwoInterceptors.size(), 3);
InterceptorMapping actionOneInterceptorMapping1 = actionOneInterceptors.get(0);
InterceptorMapping actionOneInterceptorMapping2 = actionOneInterceptors.get(1);
InterceptorMapping actionOneInterceptorMapping3 = actionOneInterceptors.get(2);
InterceptorMapping actionTwoInterceptorMapping1 = actionTwoInterceptors.get(0);
InterceptorMapping actionTwoInterceptorMapping2 = actionTwoInterceptors.get(1);
InterceptorMapping actionTwoInterceptorMapping3 = actionTwoInterceptors.get(2);
assertNotNull(actionOneInterceptorMapping1);
assertNotNull(actionOneInterceptorMapping2);
assertNotNull(actionOneInterceptorMapping3);
assertNotNull(actionTwoInterceptorMapping1);
assertNotNull(actionTwoInterceptorMapping2);
assertNotNull(actionTwoInterceptorMapping3);
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping1.getInterceptor()).getParamOne(), "i1p1");
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping1.getInterceptor()).getParamTwo(), "i1p2");
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping2.getInterceptor()).getParamOne(), "i2p1");
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping2.getInterceptor()).getParamTwo(), null);
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping3.getInterceptor()).getParamOne(), null);
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping3.getInterceptor()).getParamTwo(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping1.getInterceptor()).getParamOne(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping1.getInterceptor()).getParamTwo(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping2.getInterceptor()).getParamOne(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping2.getInterceptor()).getParamTwo(), "i2p2");
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping3.getInterceptor()).getParamOne(), "i3p1");
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping3.getInterceptor()).getParamTwo(), "i3p2");
}
use of com.opensymphony.xwork2.interceptor.Interceptor in project struts by apache.
the class XmlConfigurationProviderInterceptorStackParamOverridingTest method testInterceptorStackParamOveriding.
public void testInterceptorStackParamOveriding() throws Exception {
DefaultConfiguration conf = new DefaultConfiguration();
final XmlConfigurationProvider p = new StrutsXmlConfigurationProvider("com/opensymphony/xwork2/config/providers/xwork-test-interceptor-stack-param-overriding.xml");
DefaultFileManagerFactory factory = new DefaultFileManagerFactory();
factory.setContainer(container);
factory.setFileManager(new DefaultFileManager());
p.setFileManagerFactory(factory);
configurationManager.addContainerProvider(p);
conf.reloadContainer(new ArrayList<ContainerProvider>() {
{
add(new StrutsDefaultConfigurationProvider());
add(p);
}
});
RuntimeConfiguration rtConf = conf.getRuntimeConfiguration();
ActionConfig actionOne = rtConf.getActionConfig("", "actionOne");
ActionConfig actionTwo = rtConf.getActionConfig("", "actionTwo");
List actionOneInterceptors = actionOne.getInterceptors();
List actionTwoInterceptors = actionTwo.getInterceptors();
assertNotNull(actionOne);
assertNotNull(actionTwo);
assertNotNull(actionOneInterceptors);
assertNotNull(actionTwoInterceptors);
assertEquals(actionOneInterceptors.size(), 3);
assertEquals(actionTwoInterceptors.size(), 3);
InterceptorMapping actionOneInterceptorMapping1 = (InterceptorMapping) actionOneInterceptors.get(0);
InterceptorMapping actionOneInterceptorMapping2 = (InterceptorMapping) actionOneInterceptors.get(1);
InterceptorMapping actionOneInterceptorMapping3 = (InterceptorMapping) actionOneInterceptors.get(2);
InterceptorMapping actionTwoInterceptorMapping1 = (InterceptorMapping) actionTwoInterceptors.get(0);
InterceptorMapping actionTwoInterceptorMapping2 = (InterceptorMapping) actionTwoInterceptors.get(1);
InterceptorMapping actionTwoInterceptorMapping3 = (InterceptorMapping) actionTwoInterceptors.get(2);
assertNotNull(actionOneInterceptorMapping1);
assertNotNull(actionOneInterceptorMapping2);
assertNotNull(actionOneInterceptorMapping3);
assertNotNull(actionTwoInterceptorMapping1);
assertNotNull(actionTwoInterceptorMapping2);
assertNotNull(actionTwoInterceptorMapping3);
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping1.getInterceptor()).getParamOne(), "i1p1");
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping1.getInterceptor()).getParamTwo(), "i1p2");
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping2.getInterceptor()).getParamOne(), "i2p1");
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping2.getInterceptor()).getParamTwo(), null);
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping3.getInterceptor()).getParamOne(), null);
assertEquals(((InterceptorForTestPurpose) actionOneInterceptorMapping3.getInterceptor()).getParamTwo(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping1.getInterceptor()).getParamOne(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping1.getInterceptor()).getParamTwo(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping2.getInterceptor()).getParamOne(), null);
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping2.getInterceptor()).getParamTwo(), "i2p2");
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping3.getInterceptor()).getParamOne(), "i3p1");
assertEquals(((InterceptorForTestPurpose) actionTwoInterceptorMapping3.getInterceptor()).getParamTwo(), "i3p2");
}
use of com.opensymphony.xwork2.interceptor.Interceptor in project struts by apache.
the class XmlConfigurationProviderInterceptorsTest method testBasicInterceptors.
public void testBasicInterceptors() throws ConfigurationException {
final String filename = "com/opensymphony/xwork2/config/providers/xwork-test-interceptors-basic.xml";
ConfigurationProvider provider = buildConfigurationProvider(filename);
// setup expectations
// the test interceptor with a parameter
Map<String, String> params = new HashMap<>();
params.put("foo", "expectedFoo");
InterceptorConfig paramsInterceptor = new InterceptorConfig.Builder("test", MockInterceptor.class.getName()).addParams(params).build();
// the default interceptor stack
InterceptorStackConfig defaultStack = new InterceptorStackConfig.Builder("defaultStack").addInterceptor(new InterceptorMapping("noop", objectFactory.buildInterceptor(noopInterceptor, new HashMap<String, String>()))).addInterceptor(new InterceptorMapping("test", objectFactory.buildInterceptor(mockInterceptor, params))).build();
// the derivative interceptor stack
InterceptorStackConfig derivativeStack = new InterceptorStackConfig.Builder("derivativeStack").addInterceptor(new InterceptorMapping("noop", objectFactory.buildInterceptor(noopInterceptor, new HashMap<String, String>()))).addInterceptor(new InterceptorMapping("test", objectFactory.buildInterceptor(mockInterceptor, params))).addInterceptor(new InterceptorMapping("logging", objectFactory.buildInterceptor(loggingInterceptor, new HashMap<String, String>()))).build();
// execute the configuration
provider.init(configuration);
provider.loadPackages();
PackageConfig pkg = configuration.getPackageConfig("default");
Map interceptorConfigs = pkg.getInterceptorConfigs();
// assertions for size
assertEquals(5, interceptorConfigs.size());
// assertions for interceptors
assertEquals(noopInterceptor, interceptorConfigs.get("noop"));
assertEquals(loggingInterceptor, interceptorConfigs.get("logging"));
assertEquals(paramsInterceptor, interceptorConfigs.get("test"));
// assertions for interceptor stacks
assertEquals(defaultStack, interceptorConfigs.get("defaultStack"));
assertEquals(derivativeStack, interceptorConfigs.get("derivativeStack"));
}
use of com.opensymphony.xwork2.interceptor.Interceptor in project struts by apache.
the class PrepareInterceptorTest method testPrefixInvocation1.
public void testPrefixInvocation1() throws Exception {
ActionProxy mockActionProxy = (ActionProxy) createMock(ActionProxy.class);
expect(mockActionProxy.getMethod()).andStubReturn("submit");
ActionInvocation mockActionInvocation = (ActionInvocation) createMock(ActionInvocation.class);
expect(mockActionInvocation.getAction()).andStubReturn(mockAction);
expect(mockActionInvocation.invoke()).andStubReturn("okok");
expect(mockActionInvocation.getProxy()).andStubReturn(mockActionProxy);
mockAction.prepareSubmit();
expectLastCall().times(1);
mockAction.prepare();
expectLastCall().times(1);
replay(mockAction, mockActionProxy, mockActionInvocation);
PrepareInterceptor interceptor = new PrepareInterceptor();
String result = interceptor.intercept(mockActionInvocation);
assertEquals("okok", result);
verify(mockAction, mockActionProxy, mockActionInvocation);
}
use of com.opensymphony.xwork2.interceptor.Interceptor in project struts by apache.
the class ValidationInterceptorPrefixMethodInvocationTest method testPrefixMethodInvocation2.
public void testPrefixMethodInvocation2() throws Exception {
method = "save";
result = "okok";
ValidationInterceptor interceptor = create();
String result = interceptor.intercept(invocation);
assertEquals("okok", result);
}
Aggregations