This is an automated email from the git hooks/post-receive script. eugene-guest pushed a commit to annotated tag OpenBSD in repository testng.
commit 1f23509ed2d8806b5bb8c85497fe7027eeee7745 Author: cguillaume <[email protected]> Date: Fri May 8 17:10:00 2015 -0700 make guice stage configurable in suite xml tag --- src/main/java/org/testng/ISuite.java | 2 ++ src/main/java/org/testng/SuiteRunner.java | 5 +++++ src/main/java/org/testng/internal/ClassImpl.java | 12 ++++++++++-- src/main/java/org/testng/remote/SuiteDispatcher.java | 1 + src/main/java/org/testng/xml/TestNGContentHandler.java | 4 ++++ src/main/java/org/testng/xml/XmlSuite.java | 13 +++++++++++++ src/main/resources/testng-1.0.dtd | 1 + 7 files changed, 36 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/testng/ISuite.java b/src/main/java/org/testng/ISuite.java index 3ab5ed0..e5e3380 100755 --- a/src/main/java/org/testng/ISuite.java +++ b/src/main/java/org/testng/ISuite.java @@ -46,6 +46,8 @@ public interface ISuite extends IAttributes { public String getParentModule(); + public String getGuiceStage(); + /** * @return The value of this parameter, or null if none was specified. */ diff --git a/src/main/java/org/testng/SuiteRunner.java b/src/main/java/org/testng/SuiteRunner.java index 94d78d4..fef2fa5 100644 --- a/src/main/java/org/testng/SuiteRunner.java +++ b/src/main/java/org/testng/SuiteRunner.java @@ -239,6 +239,11 @@ public class SuiteRunner implements ISuite, Serializable, IInvokedMethodListener return m_suite.getParentModule(); } + @Override + public String getGuiceStage() { + return m_suite.getGuiceStage(); + } + public Injector getParentInjector() { return m_parentInjector; } diff --git a/src/main/java/org/testng/internal/ClassImpl.java b/src/main/java/org/testng/internal/ClassImpl.java index 255a7c1..04daf65 100755 --- a/src/main/java/org/testng/internal/ClassImpl.java +++ b/src/main/java/org/testng/internal/ClassImpl.java @@ -139,15 +139,23 @@ public class ClassImpl implements IClass { // Reuse the previous parent injector, if any Injector injector = suite.getParentInjector(); if (injector == null) { + String stageString = suite.getGuiceStage(); + Stage stage; + if (isStringNotEmpty(stageString)) { + stage = Stage.valueOf(stageString); + } else { + stage = Stage.DEVELOPMENT; + } + System.out.println(stage); if (m_hasParentModule) { Class<Module> parentModule = (Class<Module>) ClassHelper.forName(suite.getParentModule()); if (parentModule == null) { throw new TestNGException("Cannot load parent Guice module class: " + parentModule); } Module module = newModule(parentModule); - injector = com.google.inject.Guice.createInjector(Stage.DEVELOPMENT, module); + injector = com.google.inject.Guice.createInjector(stage, module); } else { - injector = com.google.inject.Guice.createInjector(Stage.DEVELOPMENT); + injector = com.google.inject.Guice.createInjector(stage); } suite.setParentInjector(injector); } diff --git a/src/main/java/org/testng/remote/SuiteDispatcher.java b/src/main/java/org/testng/remote/SuiteDispatcher.java index f37bafa..65a08e6 100644 --- a/src/main/java/org/testng/remote/SuiteDispatcher.java +++ b/src/main/java/org/testng/remote/SuiteDispatcher.java @@ -115,6 +115,7 @@ public class SuiteDispatcher tmpSuite.setName("Temporary suite for " + test.getName()); tmpSuite.setParallel(suite.getParallel()); tmpSuite.setParentModule(suite.getParentModule()); + tmpSuite.setGuiceStage(suite.getGuiceStage()); tmpSuite.setParameters(suite.getParameters()); tmpSuite.setThreadCount(suite.getThreadCount()); tmpSuite.setDataProviderThreadCount(suite.getDataProviderThreadCount()); diff --git a/src/main/java/org/testng/xml/TestNGContentHandler.java b/src/main/java/org/testng/xml/TestNGContentHandler.java index cfa4654..62951f3 100755 --- a/src/main/java/org/testng/xml/TestNGContentHandler.java +++ b/src/main/java/org/testng/xml/TestNGContentHandler.java @@ -164,6 +164,10 @@ public class TestNGContentHandler extends DefaultHandler { if (parentModule != null) { m_currentSuite.setParentModule(parentModule); } + String guiceStage = attributes.getValue("guice-stage"); + if (guiceStage != null) { + m_currentSuite.setGuiceStage(guiceStage); + } String configFailurePolicy = attributes.getValue("configfailurepolicy"); if (null != configFailurePolicy) { if (XmlSuite.SKIP.equals(configFailurePolicy) || XmlSuite.CONTINUE.equals(configFailurePolicy)) { diff --git a/src/main/java/org/testng/xml/XmlSuite.java b/src/main/java/org/testng/xml/XmlSuite.java index 32e0b64..4efd874 100755 --- a/src/main/java/org/testng/xml/XmlSuite.java +++ b/src/main/java/org/testng/xml/XmlSuite.java @@ -63,6 +63,7 @@ public class XmlSuite implements Serializable, Cloneable { private String m_parallel = DEFAULT_PARALLEL; private String m_parentModule = ""; + private String m_guiceStage = ""; /** Whether to SKIP or CONTINUE to re-attempt failed configuration methods. */ public static String DEFAULT_CONFIG_FAILURE_POLICY = SKIP; @@ -163,6 +164,10 @@ public class XmlSuite implements Serializable, Cloneable { return m_parentModule; } + public String getGuiceStage() { + return m_guiceStage; + } + public ITestObjectFactory getObjectFactory() { return m_objectFactory; } @@ -183,6 +188,10 @@ public class XmlSuite implements Serializable, Cloneable { m_parentModule = parentModule; } + public void setGuiceStage(String guiceStage) { + m_guiceStage = guiceStage; + } + /** * Sets the configuration failure policy. * @param configFailurePolicy the config failure policy @@ -458,6 +467,9 @@ public class XmlSuite implements Serializable, Cloneable { if (isStringNotEmpty(m_parentModule)) { p.setProperty("parent-module", getParentModule()); } + if (isStringNotEmpty(m_guiceStage)) { + p.setProperty("guice-stage", getGuiceStage()); + } XmlUtils.setProperty(p, "allow-return-values", String.valueOf(getAllowReturnValues()), DEFAULT_ALLOW_RETURN_VALUES.toString()); xsb.push("suite", p); @@ -587,6 +599,7 @@ public class XmlSuite implements Serializable, Cloneable { result.setListeners(getListeners()); result.setParallel(getParallel()); result.setParentModule(getParentModule()); + result.setGuiceStage(getGuiceStage()); result.setConfigFailurePolicy(getConfigFailurePolicy()); result.setThreadCount(getThreadCount()); result.setDataProviderThreadCount(getDataProviderThreadCount()); diff --git a/src/main/resources/testng-1.0.dtd b/src/main/resources/testng-1.0.dtd index 3e039f6..7993989 100755 --- a/src/main/resources/testng-1.0.dtd +++ b/src/main/resources/testng-1.0.dtd @@ -62,6 +62,7 @@ Cedric Beust & Alexandru Popescu verbose CDATA #IMPLIED parallel (false | methods | tests | classes | instances) "false" parent-module CDATA #IMPLIED + guice-stage CDATA #IMPLIED configfailurepolicy (skip | continue) "skip" thread-count CDATA "5" annotations CDATA #IMPLIED -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/testng.git _______________________________________________ pkg-java-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

