1
2
3
4
5
6
7
8
9
10
11 package org.mule.test.components;
12
13 import org.mule.api.service.Service;
14 import org.mule.tck.FunctionalTestCase;
15 import org.mule.tck.testmodels.fruit.Orange;
16
17 public class ServiceDescriptorTestCase extends FunctionalTestCase
18 {
19 protected String getConfigResources()
20 {
21 return "org/mule/test/components/service-factory-functional-test.xml";
22 }
23
24 public void testGenericObjectFactory() throws Exception
25 {
26 Service c = muleContext.getRegistry().lookupService("orange1");
27
28 Object service = getComponent(c);
29 assertTrue("Service should be an Orange", service instanceof Orange);
30
31 assertEquals(new Integer(10), ((Orange) service).getSegments());
32 }
33
34 public void testGenericObjectFactoryWithProperties() throws Exception
35 {
36 Service c = muleContext.getRegistry().lookupService("orange2");
37
38
39 Object service = getComponent(c);
40 assertTrue("Service should be an Orange", service instanceof Orange);
41 assertEquals(new Integer(8), ((Orange) service).getSegments());
42 assertEquals("Florida Sunny", ((Orange) service).getBrand());
43
44
45 service = getComponent(c);
46 assertTrue("Service should be an Orange", service instanceof Orange);
47 assertEquals(new Integer(8), ((Orange) service).getSegments());
48 assertEquals("Florida Sunny", ((Orange) service).getBrand());
49 }
50
51 public void testSingletonObjectFactory() throws Exception
52 {
53 Service c = muleContext.getRegistry().lookupService("orange3");
54 Object service = getComponent(c);
55 assertTrue("Service should be an Orange", service instanceof Orange);
56
57 assertEquals(new Integer(10), ((Orange) service).getSegments());
58 }
59
60 public void testSpringSingleton() throws Exception
61 {
62 Service c = muleContext.getRegistry().lookupService("orange4");
63 Object service = getComponent(c);
64 assertTrue("Service should be an Orange", service instanceof Orange);
65
66 assertEquals(new Integer(10), ((Orange) service).getSegments());
67 }
68
69 public void testSpringFactoryBean() throws Exception
70 {
71 Service c = muleContext.getRegistry().lookupService("orange5");
72 Object service = getComponent(c);
73 assertNotNull(service);
74 assertTrue("Service should be an Orange but is: " + service.getClass(), service instanceof Orange);
75 assertEquals(new Integer(8), ((Orange) service).getSegments());
76 assertEquals("Florida Sunny", ((Orange) service).getBrand());
77 }
78
79 public void testPojoAsFactoryBean() throws Exception
80 {
81 Service c = muleContext.getRegistry().lookupService("orange6");
82 Object service = getComponent(c);
83 assertNotNull(service);
84 assertTrue("Service should be an Orange but is: " + service.getClass(), service instanceof Orange);
85 assertEquals("Florida Sunny", ((Orange) service).getBrand());
86 }
87 }