1 package org.seasar.cubby.action.impl; 2 3 import javax.servlet.http.HttpServletRequest; 4 5 import org.seasar.cubby.action.ActionErrors; 6 import org.seasar.extension.unit.S2TestCase; 7 8 public class ActionErrorsImplTest extends S2TestCase { 9 10 private ActionErrors actionErrors; 11 12 @Override 13 protected void setUp() throws Exception { 14 include(this.getClass().getName().replaceAll("\\.", "/") + ".dicon"); 15 } 16 17 public void testRequestAttributes() { 18 HttpServletRequest request = this.getRequest(); 19 assertSame(actionErrors, request.getAttribute("errors")); 20 assertSame(actionErrors.getActionErrors(), request.getAttribute("actionErrors")); 21 assertSame(actionErrors.getFieldErrors(), request.getAttribute("fieldErrors")); 22 assertSame(actionErrors.getAllErrors(), request.getAttribute("allErrors")); 23 } 24 25 public void testIsEmpty1() { 26 assertTrue(actionErrors.isEmpty()); 27 actionErrors.addActionError("error1"); 28 assertFalse(actionErrors.isEmpty()); 29 } 30 31 public void testIsEmpty2() { 32 assertTrue(actionErrors.isEmpty()); 33 actionErrors.addFieldError("field1", "error1"); 34 assertFalse(actionErrors.isEmpty()); 35 } 36 37 public void testAdd() { 38 actionErrors.addActionError("error1"); 39 assertEquals(1, actionErrors.getActionErrors().size()); 40 assertEquals("error1", actionErrors.getActionErrors().get(0)); 41 assertEquals(1, actionErrors.getAllErrors().size()); 42 assertEquals("error1", actionErrors.getAllErrors().get(0)); 43 44 actionErrors.addFieldError("field1", "error2"); 45 assertTrue(actionErrors.hasFieldError("field1")); 46 assertFalse(actionErrors.hasFieldError("field2")); 47 assertEquals(1, actionErrors.getFieldErrors().get("field1").size()); 48 assertEquals("error2", actionErrors.getFieldErrors().get("field1").get(0)); 49 assertEquals(2, actionErrors.getAllErrors().size()); 50 assertEquals("error1", actionErrors.getAllErrors().get(0)); 51 assertEquals("error2", actionErrors.getAllErrors().get(1)); 52 53 actionErrors.addActionError("error3"); 54 assertEquals(2, actionErrors.getActionErrors().size()); 55 assertEquals("error1", actionErrors.getActionErrors().get(0)); 56 assertEquals("error3", actionErrors.getActionErrors().get(1)); 57 assertEquals(3, actionErrors.getAllErrors().size()); 58 assertEquals("error1", actionErrors.getAllErrors().get(0)); 59 assertEquals("error2", actionErrors.getAllErrors().get(1)); 60 assertEquals("error3", actionErrors.getAllErrors().get(2)); 61 62 actionErrors.addFieldError("field1", "error4"); 63 actionErrors.addFieldError("field2", "error5"); 64 assertTrue(actionErrors.hasFieldError("field1")); 65 assertTrue(actionErrors.hasFieldError("field2")); 66 assertEquals(2, actionErrors.getFieldErrors().get("field1").size()); 67 assertEquals("error2", actionErrors.getFieldErrors().get("field1").get(0)); 68 assertEquals("error4", actionErrors.getFieldErrors().get("field1").get(1)); 69 assertEquals(1, actionErrors.getFieldErrors().get("field2").size()); 70 assertEquals("error5", actionErrors.getFieldErrors().get("field2").get(0)); 71 assertEquals(5, actionErrors.getAllErrors().size()); 72 assertEquals("error1", actionErrors.getAllErrors().get(0)); 73 assertEquals("error2", actionErrors.getAllErrors().get(1)); 74 assertEquals("error3", actionErrors.getAllErrors().get(2)); 75 assertEquals("error4", actionErrors.getAllErrors().get(3)); 76 assertEquals("error5", actionErrors.getAllErrors().get(4)); 77 } 78 }