1
2
3
4
5
6
7
8
9
10 package org.mule.transformer.simple;
11
12 import org.mule.DefaultMuleMessage;
13 import org.mule.api.transformer.Transformer;
14 import org.mule.expression.ExpressionConfig;
15 import org.mule.expression.transformers.BeanBuilderTransformer;
16 import org.mule.expression.transformers.ExpressionArgument;
17 import org.mule.object.PrototypeObjectFactory;
18 import org.mule.tck.testmodels.fruit.Orange;
19 import org.mule.transformer.AbstractTransformerTestCase;
20
21 import java.util.HashMap;
22 import java.util.Map;
23
24 public class BeanBuilderTestCase extends AbstractTransformerTestCase
25 {
26 public Transformer getTransformer() throws Exception
27 {
28 BeanBuilderTransformer trans = new BeanBuilderTransformer();
29 trans.setMuleContext(muleContext);
30 PrototypeObjectFactory factory = new PrototypeObjectFactory(Orange.class);
31 muleContext.getRegistry().applyProcessorsAndLifecycle(factory);
32 trans.setBeanFactory(factory);
33 trans.addArgument(new ExpressionArgument("brand", new ExpressionConfig("", "payload", null), false));
34 trans.addArgument(new ExpressionArgument("segments", new ExpressionConfig("segments", "header", null), false));
35 trans.addArgument(new ExpressionArgument("radius", new ExpressionConfig("radius", "header", null), false));
36 trans.initialise();
37 return trans;
38 }
39
40 public Transformer getRoundTripTransformer() throws Exception
41 {
42 return null;
43 }
44
45 public Object getTestData()
46 {
47 Map props = new HashMap();
48 props.put("segments", "14");
49 props.put("radius", "5.43");
50 return new DefaultMuleMessage("Juicy", props, muleContext);
51 }
52
53 public Object getResultData()
54 {
55 return new Orange(14, 5.43, "Juicy");
56 }
57 }