blob: abe1127f750f06bd614cf294bd2cf1e62464bb94 [file] [log] [blame]
package mailreader2;
import com.opensymphony.xwork2.XWorkTestCase;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.config.RuntimeConfiguration;
import com.opensymphony.xwork2.config.entities.ActionConfig;
import com.opensymphony.xwork2.config.entities.ResultConfig;
import com.opensymphony.xwork2.config.providers.XmlConfigurationProvider;
import java.util.Map;
public class ConfigTest extends XWorkTestCase {
protected void setUp() throws Exception {
super.setUp();
XmlConfigurationProvider c = new XmlConfigurationProvider("struts.xml");
configurationManager.addConfigurationProvider(c);
configurationManager.reload();
}
private ActionConfig assertClass(String action_name, String class_name) {
RuntimeConfiguration configuration = configurationManager.getConfiguration().getRuntimeConfiguration();
ActionConfig config = configuration.getActionConfig("", action_name);
assertNotNull(config);
assertTrue("Wrong class name: [" + config.getClassName() + "]",
class_name.equals(config.getClassName()));
return config;
}
private void assertResult(ActionConfig config, String result_name, String result_value) {
Map results = config.getResults();
ResultConfig result = (ResultConfig) results.get(result_name);
Map params = result.getParams();
String value = (String) params.get("actionName");
if (value==null)
value = (String) params.get("location");
assertTrue("Wrong result value: [" + value + "]",
result_value.equals(value));
}
public void testSubscriptionSave() throws Exception {
ActionConfig config = assertClass("subscription/Update", "mailreader2.subscription.Update");
assertResult(config, ActionSupport.SUCCESS, "registration/+Input");
assertResult(config, ActionSupport.INPUT, "/pages/subscription.jsp");
}
// */!*
public void testPrepareWildcard() throws Exception {
ActionConfig config = assertClass("logon/+Input", "mailreader2.logon.Input");
assertResult(config, ActionSupport.SUCCESS, "/pages/logon.jsp");
}
// */*
public void testExecuteWildcard() throws Exception {
ActionConfig config = assertClass("registration/Update", "mailreader2.registration.Update");
assertResult(config, ActionSupport.INPUT, "/pages/registration.jsp");
ActionConfig config2 = assertClass("logon/Retrieve", "mailreader2.logon.Retrieve");
assertResult(config2, ActionSupport.INPUT, "/pages/logon.jsp");
}
// single wildcard
public void testDisplayWildcard() throws Exception {
assertClass("Welcome", "mailreader2.Welcome");
}
}