1
2
3
4
5
6
7 package org.mule.transport.jdbc.functional;
8
9 import org.mule.DefaultMuleMessage;
10 import org.mule.api.MuleMessage;
11 import org.mule.module.client.MuleClient;
12 import org.mule.transport.NullPayload;
13
14 import java.util.Collection;
15 import java.util.Map;
16
17 import org.junit.Test;
18
19 import static org.junit.Assert.assertEquals;
20 import static org.junit.Assert.assertNotNull;
21 import static org.junit.Assert.assertNull;
22 import static org.junit.Assert.assertTrue;
23
24 public class JdbcNullParamsTestCase extends AbstractJdbcFunctionalTestCase
25 {
26
27 public JdbcNullParamsTestCase()
28 {
29 setPopulateTestData(false);
30 }
31
32 @Override
33 protected String getConfigResources()
34 {
35 return "jdbc-null-params.xml";
36 }
37
38 @Test
39 public void testJdbcNullParams() throws Exception
40 {
41 MuleClient client = new MuleClient(muleContext);
42
43
44 MuleMessage reply = client.request("jdbc://getTest", 1000);
45 assertTrue(reply.getPayload() instanceof Collection);
46 assertTrue(((Collection)reply.getPayload()).isEmpty());
47
48
49
50
51 client.send("jdbc://writeTest", new DefaultMuleMessage(NullPayload.getInstance(), muleContext));
52
53
54 reply = client.request("jdbc://getTest", 1000);
55
56 assertNotNull(reply);
57 assertTrue(reply.getPayload() instanceof Collection);
58 Collection result = (Collection)reply.getPayload();
59 assertEquals(1, result.size());
60
61 Map res = (Map)result.iterator().next();
62
63
64 Integer id = (Integer)res.get("ID");
65 assertEquals(1, id.intValue());
66 assertNull(res.get("TYPE"));
67 assertNull(res.get("DATA"));
68 assertNull(res.get("RESULT"));
69 }
70 }