1cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beustpackage test.dataprovider; 2cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust 39270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herrimport com.google.inject.AbstractModule; 49270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herrimport com.google.inject.name.Names; 59270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr 6cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beustimport org.testng.Assert; 79270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herrimport org.testng.annotations.Guice; 8cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beustimport org.testng.annotations.Test; 9cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust 109270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr@Guice(modules = StaticDataProviderSampleTest.InjectionProviderModule.class) 11cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beustpublic class StaticDataProviderSampleTest { 12cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust 13cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust @Test(dataProvider = "static", dataProviderClass = StaticProvider.class) 14cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust public void verifyStatic(String s) { 15cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust Assert.assertEquals(s, "Cedric"); 16cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust } 17ef0abc561a1298e449b4c90999b46b5cf031deafJulien Herr 18ef0abc561a1298e449b4c90999b46b5cf031deafJulien Herr @Test(dataProvider = "external", dataProviderClass = NonStaticProvider.class) 19ef0abc561a1298e449b4c90999b46b5cf031deafJulien Herr public void verifyExternal(String s) { 20ef0abc561a1298e449b4c90999b46b5cf031deafJulien Herr Assert.assertEquals(s, "Cedric"); 21ef0abc561a1298e449b4c90999b46b5cf031deafJulien Herr } 229270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr 235816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr @Test(dataProvider = "injection", dataProviderClass = FieldInjectionProvider.class) 245816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr public void verifyFieldInjection(String s) { 255816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr Assert.assertEquals(s, "Cedric"); 265816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr } 275816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr 285816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr @Test(dataProvider = "injection", dataProviderClass = ConstructorInjectionProvider.class) 295816aa6e67aa9ae07024c7cbf99f6ea845e59990Julien Herr public void verifyConstructorInjection(String s) { 309270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr Assert.assertEquals(s, "Cedric"); 319270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr } 329270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr 339270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr public static class InjectionProviderModule extends AbstractModule { 349270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr 359270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr @Override 369270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr protected void configure() { 379270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr bind(String.class).annotatedWith(Names.named("test")).toInstance("Cedric"); 389270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr } 399270c7a2b3898b4cb6048a69fc958530ab2fd825Julien Herr } 40cdcf09f422217a51b2fce91c78026af65a36aa30Cédric Beust} 41