1 16 17 package com.google.inject; 18 19 import junit.framework.TestCase; 20 21 24 public class BoundInstanceInjectionTest extends TestCase { 25 26 public void testInstancesAreInjected() throws CreationException { 27 final O o = new O(); 28 29 Injector injector = Guice.createInjector(new AbstractModule() { 30 protected void configure() { 31 bind(O.class).toInstance(o); 32 bind(int.class).toInstance(5); 33 } 34 }); 35 36 assertEquals(5, o.fromMethod); 37 } 38 39 static class O { 40 int fromMethod; 41 @Inject 42 void setInt(int i) { 43 this.fromMethod = i; 44 } 45 } 46 47 public void testProvidersAreInjected() throws CreationException { 48 Injector injector = Guice.createInjector(new AbstractModule() { 49 protected void configure() { 50 bind(O.class).toProvider(new Provider<O>() { 51 @Inject int i; 52 public O get() { 53 O o = new O(); 54 o.setInt(i); 55 return o; 56 } 57 }); 58 bind(int.class).toInstance(5); 59 } 60 }); 61 62 assertEquals(5, injector.getInstance(O.class).fromMethod); 63 } 64 65 } 66 | Popular Tags |