1   package com.germinus.merlin.controller;
2   
3   import org.springframework.web.portlet.mvc.AbstractController;
4   
5   import com.germinus.merlin.BaseTestCase;
6   import com.germinus.merlin.mock.IMockMerlinFactory;
7   
8   public abstract class BaseControllerTestCase extends BaseTestCase{
9   
10  	protected String controllerName;
11  	protected String applicationContextFile;
12  	
13  	public BaseControllerTestCase() {
14  		super();
15  		
16  	}
17  	
18  	protected String[] getConfigLocations()
19  	{
20  		String[] configLocations = super.getConfigLocations();
21  		
22  		String[] controllerConfigLocations = new String[configLocations.length+1];
23  		
24  		System.arraycopy(configLocations, 0, controllerConfigLocations, 0, configLocations.length);
25  		
26  		controllerConfigLocations[controllerConfigLocations.length-1] =
27  			new String("classpath*:/context/portlet/"+getApplicationContextFile());
28  		
29  		return controllerConfigLocations;
30  	}
31  	
32  	public AbstractController loadController(){
33  		
34  		AbstractController controller =
35  			(AbstractController) applicationContext.getBean(getControllerName());
36  		
37  		return controller;
38  	}
39  
40  	/**
41  	 * @return the controllerName
42  	 */
43  	public String getControllerName() {
44  		return controllerName;
45  	}
46  
47  	/**
48  	 * @param controllerName the controllerName to set
49  	 */
50  	public void setControllerName(String controllerName) {
51  		this.controllerName = controllerName;
52  	}
53  
54  	/**
55  	 * @return the applicationContextFile
56  	 */
57  	public String getApplicationContextFile() {
58  		return applicationContextFile;
59  	}
60  
61  	/**
62  	 * @param applicationContextFile the applicationContextFile to set
63  	 */
64  	public void setApplicationContextFile(String applicationContextFile) {
65  		this.applicationContextFile = applicationContextFile;
66  	}
67  }