View Javadoc

1   /*
2    * $Id: HelloSampleTestCase.java 22387 2011-07-12 03:53:36Z dirk.olmes $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.example.hello;
12  
13  import org.mule.tck.junit4.AbstractMuleTestCase;
14  import org.mule.transformer.types.DataTypeFactory;
15  
16  import java.io.ByteArrayInputStream;
17  import java.io.InputStream;
18  
19  import org.junit.Test;
20  
21  import static org.junit.Assert.assertEquals;
22  import static org.junit.Assert.assertNotNull;
23  import static org.junit.Assert.assertNull;
24  import static org.junit.Assert.assertTrue;
25  
26  public class HelloSampleTestCase extends AbstractMuleTestCase
27  {
28  
29      @Test
30      public void testGreeter()
31      {
32          NameString name = new NameString("Fred");
33          assertNotNull(name.getName());
34          assertNull(name.getGreeting());
35          name.setName("Another Fred");
36  
37          Greeter greeter = new Greeter();
38          greeter.greet(name);
39          assertNotNull(name.getGreeting());
40      }
41  
42      @Test
43      public void testChitChatter()
44      {
45          NameString name = new NameString("Barney");
46          assertNotNull(name.getName());
47          assertNull(name.getGreeting());
48  
49          ChatString chat = new ChatString();
50          assertTrue(chat.getSize() == 0);
51          ChitChatter chitChatter = new ChitChatter();
52          chitChatter.chat(chat);
53          assertTrue(chat.getSize() > 0);
54  
55          int size = chat.getSize();
56  
57          chat.append("Blah");
58          chat.append(new StringBuffer("Blah"));
59          assertTrue(chat.toString().endsWith("BlahBlah"));
60          chat.insert(0, "Blah".toCharArray(), 0, 2);
61          chat.insert(2, "Blah".toCharArray());
62          assertTrue(chat.toString().startsWith("BlBlah"));
63          assertEquals(size + 4 + 4 + 2 + 4, chat.getSize());
64  
65      }
66  
67      @Test
68      public void testStringToNameTransformer() throws Exception
69      {
70          String temp = "Wilma";
71          StringToNameString trans = new StringToNameString();
72          Object result = trans.transform(temp);
73  
74          assertNotNull(result);
75          assertTrue(result instanceof NameString);
76  
77          NameString name = (NameString)result;
78  
79          assertNotNull(name.getName());
80          assertNull(name.getGreeting());
81  
82          result = trans.transform("Another Wilma");
83  
84          assertNotNull(result);
85          assertTrue(result instanceof NameString);
86  
87          name = (NameString)result;
88  
89          assertNotNull(name.getName());
90          assertEquals("Another Wilma", name.getName());
91      }
92  
93      @Test
94      public void testHttpRequestToNameTransformer() throws Exception
95      {
96          String temp = "whateverUrl?name=Wilma";
97          HttpRequestToNameString trans = new HttpRequestToNameString();
98          Object result = trans.transform(temp);
99  
100         assertNotNull(result);
101         assertTrue(result instanceof NameString);
102 
103         NameString name = (NameString)result;
104 
105         assertNotNull(name.getName());
106         assertNull(name.getGreeting());
107 
108         result = trans.transform("whateverUrl?street=Sonnenstrasse&name=Another%20Wilma");
109 
110         assertNotNull(result);
111         assertTrue(result instanceof NameString);
112 
113         name = (NameString)result;
114 
115         assertNotNull(name.getName());
116         assertEquals("Another Wilma", name.getName());
117     }
118     
119     @Test
120     public void testHttpRequestToNameStreamingTransformer() throws Exception
121     {
122         InputStream in = new ByteArrayInputStream("whateverUrl?name=Wilma".getBytes());
123         HttpRequestToNameString transformer = new HttpRequestToNameString();
124         Object result = transformer.transform(in);
125         
126         assertNotNull(result);
127         assertTrue(result instanceof NameString);
128         
129         NameString name = (NameString)result;
130         assertNotNull(name.getName());
131         assertNull(name.getGreeting());
132     }
133     
134     @Test
135     public void testStdinToNameTransformer() throws Exception
136     {
137         String temp = "Wilma";
138         StdinToNameString trans = new StdinToNameString();
139         Object result = trans.transform(temp);
140 
141         assertNotNull(result);
142         assertTrue(result instanceof NameString);
143 
144         NameString name = (NameString)result;
145 
146         assertNotNull(name.getName());
147         assertNull(name.getGreeting());
148 
149         result = trans.transform("Another Wilma\r\n");
150 
151         assertNotNull(result);
152         assertTrue(result instanceof NameString);
153 
154         name = (NameString)result;
155 
156         assertNotNull(name.getName());
157         assertEquals("Another Wilma", name.getName());
158     }    
159     
160     @Test
161     public void testNameToChatTransformer() throws Exception
162     {
163         NameString temp = new NameString("the other one");
164         NameStringToChatString trans = new NameStringToChatString();
165         trans.setReturnDataType(DataTypeFactory.create(ChatString.class));
166 
167         Object result = trans.transform(temp);
168         assertNotNull(result);
169         assertTrue(result instanceof ChatString);
170 
171         ChatString chat = (ChatString)result;
172 
173         assertTrue(chat.getSize() > 0);
174     }
175 
176 }