package net.sourceforge.cruisecontrol.dashboard.web;
import net.sourceforge.cruisecontrol.dashboard.service.BuildLoopQueryService;
import net.sourceforge.cruisecontrol.dashboard.service.ConfigurationService;
import net.sourceforge.cruisecontrol.dashboard.service.DashboardXmlConfigService;
import net.sourceforge.cruisecontrol.dashboard.service.EnvironmentService;
import org.jmock.Mock;
import org.jmock.cglib.MockObjectTestCase;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import java.io.File;
public class RootFolderInterceptorTest extends MockObjectTestCase {
private RootFolderInterceptor interceptor;
private MockHttpServletResponse mockHttpServletResponse;
private MockHttpServletRequest mockHttpServletRequest;
private Mock mockConfiguration;
protected void setUp() throws Exception {
mockHttpServletResponse = new MockHttpServletResponse();
mockHttpServletRequest = new MockHttpServletRequest();
mockConfiguration =
mock(ConfigurationService.class, new Class[] {EnvironmentService.class,
DashboardXmlConfigService.class, BuildLoopQueryService.class}, new Object[] {null,
null, null});
interceptor = new RootFolderInterceptor((ConfigurationService) mockConfiguration.proxy());
}
public void testShouldReturnTrueForPreHandling() throws Exception {
assertTrue(interceptor.preHandle(null, null, null));
}
public void testReturnLogRootFolderPath() throws Exception {
File file = new File("bbb");
mockConfiguration.expects(once()).method("getLogsRoot").will(returnValue(file));
ModelAndView modelAndView = new ModelAndView();
interceptor.postHandle(mockHttpServletRequest, mockHttpServletResponse, null, modelAndView);
assertEquals(file.getAbsolutePath() + File.separatorChar, modelAndView.getModel().get("logRoot"));
}
}