1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.seasar.cubby.tags;
18
19 import static org.junit.Assert.assertEquals;
20 import static org.junit.Assert.assertTrue;
21
22 import javax.servlet.http.HttpServletRequest;
23
24 import org.jdom.Element;
25 import org.junit.Before;
26 import org.junit.Test;
27 import org.seasar.cubby.internal.util.TokenHelper;
28
29 public class TokenTagTest extends SimpleTagTestCase {
30
31 private TokenTag tag;
32
33 @Before
34 public void setup() throws Exception {
35 tag = new TokenTag();
36 setupSimpleTag(tag);
37 }
38
39 @Test
40 public void doTag1() throws Exception {
41 HttpServletRequest request = (HttpServletRequest) context.getRequest();
42
43 tag.doTag();
44 Element element = getResultAsElementFromContext();
45 String message = "nameが指定されている場合";
46 assertEquals(message, 3, element.getAttributes().size());
47 assertEquals(message, "input", element.getName());
48 assertEquals(message, "hidden", element.getAttributeValue("type"));
49 assertTrue(message, element.getAttributeValue("value").length() != 0);
50 assertEquals(message, TokenHelper.DEFAULT_TOKEN_NAME, element
51 .getAttributeValue("name"));
52 assertTrue(message, TokenHelper.validateToken(request.getSession(),
53 element.getAttributeValue("value")));
54 }
55
56 @Test
57 public void doTag2() throws Exception {
58 HttpServletRequest request = (HttpServletRequest) context.getRequest();
59
60 tag.setName("cubby.token2");
61 tag.doTag();
62 Element element = getResultAsElementFromContext();
63 String message = "nameが指定されている場合";
64 assertEquals(message, 3, element.getAttributes().size());
65 assertEquals(message, "input", element.getName());
66 assertEquals(message, "hidden", element.getAttributeValue("type"));
67 assertTrue(message, element.getAttributeValue("value").length() != 0);
68 assertEquals(message, "cubby.token2", element.getAttributeValue("name"));
69 assertTrue(message, TokenHelper.validateToken(request.getSession(),
70 element.getAttributeValue("value")));
71 }
72
73 @Test
74 public void testDoTag3() throws Exception {
75 HttpServletRequest request = (HttpServletRequest) context.getRequest();
76
77 tag.setDynamicAttribute(null, "id", "token");
78 tag.doTag();
79 Element element = getResultAsElementFromContext();
80 String message = "idが指定されている場合";
81 assertEquals(message, 4, element.getAttributes().size());
82 assertEquals(message, "input", element.getName());
83 assertEquals(message, "token", element.getAttributeValue("id"));
84 assertEquals(message, "hidden", element.getAttributeValue("type"));
85 assertTrue(message, element.getAttributeValue("value").length() != 0);
86 assertEquals(message, TokenHelper.DEFAULT_TOKEN_NAME, element
87 .getAttributeValue("name"));
88 assertTrue(message, TokenHelper.validateToken(request.getSession(),
89 element.getAttributeValue("value")));
90 }
91
92 }