1
2
3
4
5
6
7 package org.mule;
8
9 import org.mule.api.MuleContext;
10 import org.mule.api.config.ThreadingProfile;
11 import org.mule.config.DefaultMuleConfiguration;
12 import org.mule.context.DefaultMuleContextBuilder;
13 import org.mule.context.notification.ServerNotificationManager;
14 import org.mule.lifecycle.MuleContextLifecycleManager;
15 import org.mule.tck.junit4.AbstractMuleTestCase;
16 import org.mule.work.MuleWorkManager;
17
18 import org.junit.Test;
19
20 import static org.junit.Assert.assertEquals;
21 import static org.junit.Assert.assertNotNull;
22
23 public class DefaultMuleContextBuilderTestCase extends AbstractMuleTestCase
24 {
25
26 @Test
27 public void testBuildMuleContextDefault()
28 {
29
30 DefaultMuleContextBuilder builder = new DefaultMuleContextBuilder();
31 MuleContext muleContext = builder.buildMuleContext();
32
33
34 assertNotNull(muleContext);
35 assertEquals(DefaultMuleConfiguration.class, muleContext.getConfiguration().getClass());
36 assertEquals(MuleContextLifecycleManager.class, muleContext.getLifecycleManager().getClass());
37 assertEquals(ServerNotificationManager.class, muleContext.getNotificationManager().getClass());
38 assertEquals(MuleWorkManager.class, muleContext.getWorkManager().getClass());
39 }
40
41 @Test
42 public void testBuildMuleContextCustom()
43 {
44
45 DefaultMuleContextBuilder builder = new DefaultMuleContextBuilder();
46 builder.setMuleConfiguration(new MyMuleConfiguration());
47 builder.setLifecycleManager(new MyLifeCycleManager());
48 builder.setNotificationManager(new MyServerNotificationManager());
49 builder.setWorkManager(new MyWorkManager(ThreadingProfile.DEFAULT_THREADING_PROFILE, "test"));
50 MuleContext muleContext = builder.buildMuleContext();
51
52
53 assertNotNull(muleContext);
54 assertEquals(MyMuleConfiguration.class, muleContext.getConfiguration().getClass());
55 assertEquals(MyLifeCycleManager.class, muleContext.getLifecycleManager().getClass());
56 assertEquals(MyServerNotificationManager.class, muleContext.getNotificationManager().getClass());
57 assertEquals(MyWorkManager.class, muleContext.getWorkManager().getClass());
58 }
59
60
61
62
63 protected MuleContext createMuleContext() throws Exception
64 {
65 return null;
66 }
67
68 static class MyLifeCycleManager extends MuleContextLifecycleManager
69 {
70 }
71
72 static class MyMuleConfiguration extends DefaultMuleConfiguration
73 {
74 }
75
76 static class MyServerNotificationManager extends ServerNotificationManager
77 {
78 }
79
80 static class MyWorkManager extends MuleWorkManager
81 {
82 public MyWorkManager(ThreadingProfile profile, String name)
83 {
84 super(profile, name, 5000);
85 }
86 }
87
88 }