1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.http.transformers;
12
13 import org.mule.DefaultMuleMessage;
14 import org.mule.api.transformer.TransformerException;
15 import org.mule.tck.junit4.AbstractMuleContextTestCase;
16
17 import java.util.List;
18 import java.util.Map;
19
20 import org.junit.Test;
21
22 import static org.junit.Assert.assertEquals;
23 import static org.junit.Assert.assertNull;
24 import static org.junit.Assert.assertTrue;
25
26 public class FormTransformerTestCase extends AbstractMuleContextTestCase
27 {
28 private FormTransformer transformer;
29
30 @Override
31 protected void doSetUp() throws Exception
32 {
33 super.doSetUp();
34
35 transformer = new FormTransformer();
36 }
37
38 @Test
39 public void testFormTransformer() throws TransformerException
40 {
41 DefaultMuleMessage msg = new DefaultMuleMessage("test1=value1&test2=value2&test3", muleContext);
42 Object result = transformer.transform(msg);
43 assertTrue(result instanceof Map);
44
45 Map<String,String> m = (Map<String,String>) result;
46 assertEquals("value1", m.get("test1"));
47 assertEquals("value2", m.get("test2"));
48 assertNull(m.get("test3"));
49 }
50
51 @Test
52 public void testMultipleValues() throws TransformerException
53 {
54 DefaultMuleMessage msg = new DefaultMuleMessage("test1=value1&test1=value2", muleContext);
55 Object result = transformer.transform(msg);
56 assertTrue(result instanceof Map);
57
58 Map<String,Object> m = (Map<String,Object>) result;
59 Object o = m.get("test1");
60 assertTrue(o instanceof List);
61
62 List list = (List) o;
63 assertTrue(list.contains("value1"));
64 assertTrue(list.contains("value2"));
65
66 }
67
68 }