@SuppressWarnings({"unchecked"}) public final void testInstancesAreNotSharedBetweenContainers() { final MutablePicoContainer picoA = new DefaultPicoContainer(); final MutablePicoContainer picoB = new DefaultPicoContainer(); picoA.addAdapter( new ThreadLocalizing.ThreadLocalized( new ConstructorInjection.ConstructorInjector(List.class, ArrayList.class, null))); picoB.addAdapter( new ThreadLocalizing.ThreadLocalized( new ConstructorInjection.ConstructorInjector(List.class, ArrayList.class, null))); final List<String> hello1 = picoA.getComponent(List.class); final List hello2 = picoA.getComponent(List.class); hello1.add("foo"); assertEquals(hello1, hello2); final List hello3 = picoB.getComponent(List.class); assertEquals(0, hello3.size()); }