01: package org.vraptor.component;
02:
03: import javax.servlet.ServletContext;
04: import javax.servlet.http.HttpServletRequest;
05:
06: import org.vraptor.AbstractTest;
07: import org.vraptor.LogicException;
08: import org.vraptor.ValidationErrorsFactory;
09: import org.vraptor.test.MockedServletContext;
10: import org.vraptor.url.InvalidURLException;
11: import org.vraptor.url.LogicLocator;
12: import org.vraptor.url.ViewLocator;
13: import org.vraptor.validator.ValidationErrors;
14: import org.vraptor.view.ViewManager;
15:
16: public class DefaultComponentContainerTest extends AbstractTest {
17:
18: public static class MyManager implements LogicLocator {
19:
20: public MyManager(ServletContext context) {
21:
22: }
23:
24: public LogicMethod locate(HttpServletRequest req)
25: throws InvalidURLException {
26: return null;
27: }
28:
29: }
30:
31: public void testServletContextGetsRegisteredAndAccessed() {
32: MockedServletContext context = createServletContext();
33: context.setInitParameter(LogicLocator.class.getName(),
34: MyManager.class.getName());
35: DefaultComponentContainer container = new DefaultComponentContainer(
36: context);
37: assertEquals(MyManager.class, container.getLogicLocator()
38: .getClass());
39: }
40:
41: public static class MyValidationErrorsFactory implements
42: ValidationErrorsFactory {
43: public ValidationErrors newInstance() {
44: return null;
45: }
46: }
47:
48: public void testValidationErrorsFactoryGetsRegisteredAndAccessed() {
49: MockedServletContext context = createServletContext();
50: context.setInitParameter(ValidationErrorsFactory.class
51: .getName(), MyValidationErrorsFactory.class.getName());
52: DefaultComponentContainer container = new DefaultComponentContainer(
53: context);
54: assertEquals(MyValidationErrorsFactory.class, container
55: .getValidationErrorsFactory().getClass());
56: }
57:
58: public void testViewLocatorGetsRegisteredAndAccessed() {
59: MockedServletContext context = createServletContext();
60: context.setInitParameter(ViewLocator.class.getName(),
61: MyViewLocator.class.getName());
62: DefaultComponentContainer container = new DefaultComponentContainer(
63: context);
64: assertEquals(MyViewLocator.class, container.getViewLocator()
65: .getClass());
66: }
67:
68: public static class MyViewLocator implements ViewLocator {
69: public ViewManager locate(HttpServletRequest req,
70: LogicMethod method, ViewManager defaultViewManager)
71: throws InvalidURLException, LogicException {
72: return null;
73: }
74: }
75:
76: }
|