1 package org.apache.turbine.services;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import static org.junit.Assert.assertEquals;
23 import static org.junit.Assert.assertNotNull;
24 import static org.junit.Assert.fail;
25
26 import java.util.Locale;
27
28 import org.apache.fulcrum.cache.GlobalCacheService;
29 import org.apache.fulcrum.crypto.CryptoService;
30 import org.apache.fulcrum.factory.FactoryService;
31 import org.apache.fulcrum.intake.IntakeService;
32 import org.apache.fulcrum.localization.LocalizationService;
33 import org.apache.fulcrum.mimetype.MimeTypeService;
34 import org.apache.turbine.services.avaloncomponent.AvalonComponentService;
35 import org.apache.turbine.test.BaseTestCase;
36 import org.apache.turbine.util.TurbineConfig;
37 import org.junit.AfterClass;
38 import org.junit.BeforeClass;
39 import org.junit.Test;
40
41
42
43
44
45
46
47
48
49
50 public class LoadingComponentsTest extends BaseTestCase
51 {
52 private static TurbineConfig tc = null;
53
54 @BeforeClass
55 public static void setUp() throws Exception
56 {
57 tc = new TurbineConfig(".", "/conf/test/TestFulcrumComponents.properties");
58 tc.initialize();
59 }
60 @AfterClass
61 public static void tearDown() throws Exception
62 {
63 if (tc != null)
64 {
65 tc.dispose();
66 }
67 }
68
69
70
71
72
73
74
75 @Test public void testLoadingByAvalonComponentService() throws Exception
76 {
77 AvalonComponentService avalonComponentService =
78 (AvalonComponentService) TurbineServices.getInstance().getService(
79 AvalonComponentService.SERVICE_NAME);
80
81 assertNotNull(avalonComponentService);
82
83 GlobalCacheService dgcs = (GlobalCacheService)avalonComponentService.lookup(GlobalCacheService.ROLE);
84 assertNotNull(dgcs);
85 CryptoService cs = (CryptoService)avalonComponentService.lookup(CryptoService.ROLE);
86 assertNotNull(cs);
87 LocalizationService ls = (LocalizationService)avalonComponentService.lookup(LocalizationService.ROLE);
88 assertNotNull(ls);
89 IntakeService intake = (IntakeService)avalonComponentService.lookup(IntakeService.ROLE);
90 assertNotNull(intake);
91 FactoryService fs = (FactoryService)avalonComponentService.lookup(FactoryService.ROLE);
92 assertNotNull(fs);
93 MimeTypeService mimetype = (MimeTypeService)avalonComponentService.lookup(MimeTypeService.ROLE);
94 assertNotNull(mimetype);
95
96 }
97
98
99
100
101
102
103
104
105 @Test public void testLoadingByTurbineServices() throws Exception
106 {
107 ServiceManager serviceManager = TurbineServices.getInstance();
108
109 GlobalCacheService gcs = (GlobalCacheService)serviceManager.getService(GlobalCacheService.ROLE);
110 assertNotNull(gcs);
111 CryptoService cs = (CryptoService)serviceManager.getService(CryptoService.ROLE);
112 assertNotNull(cs);
113 LocalizationService ls = (LocalizationService)serviceManager.getService(LocalizationService.ROLE);
114 assertNotNull(ls);
115 IntakeService intake = (IntakeService)serviceManager.getService(IntakeService.ROLE);
116 assertNotNull(intake);
117 FactoryService fs = (FactoryService)serviceManager.getService(FactoryService.ROLE);
118 assertNotNull(fs);
119 MimeTypeService mimetype = (MimeTypeService)serviceManager.getService(MimeTypeService.ROLE);
120 assertNotNull(mimetype);
121 }
122
123
124
125
126
127 @Test public void testLookupUnknownService() throws Exception
128 {
129 ServiceManager serviceManager = TurbineServices.getInstance();
130
131 try
132 {
133 serviceManager.getService("foo");
134 fail("We expect an InstantiationException");
135 }
136 catch (InstantiationException e)
137 {
138
139 return;
140 }
141 catch (Throwable t)
142 {
143 fail("We expect an InstantiationException");
144 }
145 }
146
147
148
149
150
151
152
153 @Test public void testAvalonComponentServiceShutdown() throws Exception
154 {
155 ServiceManager serviceManager = TurbineServices.getInstance();
156 serviceManager.shutdownService(AvalonComponentService.SERVICE_NAME);
157
158 MimeTypeService mimeTypeService = (MimeTypeService) serviceManager.getService(MimeTypeService.class.getName());
159 assertNotNull(mimeTypeService);
160
161 Locale locale = new Locale("en", "US");
162 String s = mimeTypeService.getCharSet(locale);
163 assertEquals("ISO-8859-1", s);
164 }
165
166 }