From 4a8ce92726027bc6de1ca79b013b970c37aa5b2d Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Tue, 6 Sep 2016 18:40:41 +0300 Subject: [PATCH] testng: fire configuration started if configuration listener is available --- .../src/org/testng/IDEARemoteTestNG.java | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java b/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java index 797b5d4776bd..a2899b663ea3 100644 --- a/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java +++ b/plugins/testng_rt/src/org/testng/IDEARemoteTestNG.java @@ -86,17 +86,16 @@ public class IDEARemoteTestNG extends TestNG { addListener((Object)new IDEATestNGSuiteListener(listener)); addListener((Object)new IDEATestNGTestListener(listener)); try { - Class aClass = Class.forName("org.testng.IDEATestNGInvokedMethodListener"); - Object invokedMethodListener = aClass.getConstructor(new Class[]{IDEATestNGRemoteListener.class}).newInstance(listener); - addListener((Object)invokedMethodListener); - } - catch (Throwable ignore){} - - try { - Class aClass = Class.forName("org.testng.IDEATestNGConfigurationListener"); - Object configurationListener = aClass.getConstructor(new Class[] {IDEATestNGRemoteListener.class}).newInstance(listener); + Class configClass = Class.forName("org.testng.IDEATestNGConfigurationListener"); + Object configurationListener = configClass.getConstructor(new Class[] {IDEATestNGRemoteListener.class}).newInstance(listener); addListener((Object)configurationListener); - aClass.getMethod("setIgnoreStarted").invoke(configurationListener); + + Class invokeClass = Class.forName("org.testng.IDEATestNGInvokedMethodListener"); + Object invokedMethodListener = invokeClass.getConstructor(new Class[]{IDEATestNGRemoteListener.class}).newInstance(listener); + addListener((Object)invokedMethodListener); + + //start with configuration started if invoke method listener was not added, otherwise with + configClass.getMethod("setIgnoreStarted").invoke(configurationListener); } catch (Throwable ignored) {} }