001 package org.picocontainer.defaults.issues; 002 003 import junit.framework.Assert; 004 import junit.framework.TestCase; 005 import org.picocontainer.MutablePicoContainer; 006 import org.picocontainer.defaults.DefaultPicoContainer; 007 008 public class Issue0196TestCase extends TestCase { 009 public static class Descriptor { 010 public static class DescriptorData { 011 } 012 } 013 public static class DescriptorDep { 014 public DescriptorDep(Descriptor.DescriptorData[] datas) { 015 Assert.assertEquals(3, datas.length); 016 Assert.assertNull(datas[0]); 017 Assert.assertNull(datas[1]); 018 Assert.assertNull(datas[2]); 019 } 020 } 021 022 public void testShouldAllowRegistrationOfArrayAsInstance() { 023 MutablePicoContainer pico = new DefaultPicoContainer(); 024 025 Descriptor.DescriptorData[] datas = new Descriptor.DescriptorData[3]; 026 027 pico.registerComponentInstance(datas); 028 pico.registerComponentImplementation(DescriptorDep.class); 029 030 DescriptorDep descriptorDep = (DescriptorDep) pico.getComponentInstanceOfType(DescriptorDep.class); 031 032 assertNotNull(descriptorDep); 033 } 034 }