1 /******************************************************************************
2 * Copyright (C) PicoContainer Organization. All rights reserved. *
3 * ------------------------------------------------------------------------- *
4 * The software in this package is published under the terms of the BSD *
5 * style license a copy of which has been included with this distribution in *
6 * the LICENSE.txt file. *
7 * *
8 * Idea by Rachel Davies, Original code by Aslak Hellesoy and Paul Hammant *
9 *****************************************************************************/
10
11 package picocontainer;
12
13 import junit.framework.TestCase;
14 import picocontainer.testmodel.FredImpl;
15 import picocontainer.testmodel.WilmaImpl;
16 import picocontainer.hierarchical.HierarchicalPicoContainer;
17
18 /***
19 * Can Pico host itself ?
20 */
21 public class PicoPicoTestCase extends TestCase {
22
23 public void testDefaultPicoContainer() throws PicoRegistrationException, PicoInitializationException {
24
25 HierarchicalPicoContainer pc = new HierarchicalPicoContainer.Default();
26 pc.registerComponent(HierarchicalPicoContainer.Default.class);
27 pc.instantiateComponents();
28
29 tryDefaultPicoContainer((HierarchicalPicoContainer) pc.getComponent(HierarchicalPicoContainer.Default.class));
30
31 }
32
33 private void tryDefaultPicoContainer(HierarchicalPicoContainer pc2) throws PicoRegistrationException, PicoInitializationException {
34
35 pc2.registerComponent(FredImpl.class);
36 pc2.registerComponent(WilmaImpl.class);
37
38 pc2.instantiateComponents();
39
40 assertTrue( "There should have been a Fred in the container", pc2.hasComponent( FredImpl.class ) );
41 assertTrue( "There should have been a Wilma in the container", pc2.hasComponent( WilmaImpl.class ) );
42
43 }
44
45 }
This page was automatically generated by Maven