Skip to content

Commit b3510ca

Browse files
Fix TestNG instrumentation to use immutable ITestResult.getName() instead of mutable ITestResult.getTestName() (#5606)
1 parent e5483b8 commit b3510ca

File tree

1 file changed

+10
-25
lines changed
  • dd-java-agent/instrumentation/testng/src/main/java/datadog/trace/instrumentation/testng

1 file changed

+10
-25
lines changed

dd-java-agent/instrumentation/testng/src/main/java/datadog/trace/instrumentation/testng/TracingListener.java

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -82,52 +82,39 @@ public void onConfigurationSkip(ITestResult result) {
8282
public void onTestStart(final ITestResult result) {
8383
String testSuiteName = result.getInstanceName();
8484
String testName =
85-
(result.getTestName() != null) ? result.getTestName() : result.getMethod().getMethodName();
86-
String testQualifier = result.getTestContext().getName();
85+
(result.getName() != null) ? result.getName() : result.getMethod().getMethodName();
8786
String testParameters = TestNGUtils.getParameters(result);
8887
List<String> groups = TestNGUtils.getGroups(result);
8988

9089
Class<?> testClass = TestNGUtils.getTestClass(result);
9190
Method testMethod = TestNGUtils.getTestMethod(result);
9291

9392
testEventsHandler.onTestStart(
94-
testSuiteName,
95-
testName,
96-
testQualifier,
97-
null,
98-
null,
99-
testParameters,
100-
groups,
101-
testClass,
102-
testMethod);
93+
testSuiteName, testName, result, null, null, testParameters, groups, testClass, testMethod);
10394
}
10495

10596
@Override
10697
public void onTestSuccess(final ITestResult result) {
10798
final String testSuiteName = result.getInstanceName();
10899
final Class<?> testClass = TestNGUtils.getTestClass(result);
109100
String testName =
110-
(result.getTestName() != null) ? result.getTestName() : result.getMethod().getMethodName();
111-
String testQualifier = result.getTestContext().getName();
101+
(result.getName() != null) ? result.getName() : result.getMethod().getMethodName();
112102
String testParameters = TestNGUtils.getParameters(result);
113-
testEventsHandler.onTestFinish(
114-
testSuiteName, testClass, testName, testQualifier, testParameters);
103+
testEventsHandler.onTestFinish(testSuiteName, testClass, testName, result, testParameters);
115104
}
116105

117106
@Override
118107
public void onTestFailure(final ITestResult result) {
119108
final String testSuiteName = result.getInstanceName();
120109
final Class<?> testClass = TestNGUtils.getTestClass(result);
121110
String testName =
122-
(result.getTestName() != null) ? result.getTestName() : result.getMethod().getMethodName();
123-
String testQualifier = result.getTestContext().getName();
111+
(result.getName() != null) ? result.getName() : result.getMethod().getMethodName();
124112
String testParameters = TestNGUtils.getParameters(result);
125113

126114
final Throwable throwable = result.getThrowable();
127115
testEventsHandler.onTestFailure(
128-
testSuiteName, testClass, testName, testQualifier, testParameters, throwable);
129-
testEventsHandler.onTestFinish(
130-
testSuiteName, testClass, testName, testQualifier, testParameters);
116+
testSuiteName, testClass, testName, result, testParameters, throwable);
117+
testEventsHandler.onTestFinish(testSuiteName, testClass, testName, result, testParameters);
131118
}
132119

133120
@Override
@@ -140,16 +127,14 @@ public void onTestSkipped(final ITestResult result) {
140127
final String testSuiteName = result.getInstanceName();
141128
final Class<?> testClass = TestNGUtils.getTestClass(result);
142129
String testName =
143-
(result.getTestName() != null) ? result.getTestName() : result.getMethod().getMethodName();
144-
String testQualifier = result.getTestContext().getName();
130+
(result.getName() != null) ? result.getName() : result.getMethod().getMethodName();
145131
String testParameters = TestNGUtils.getParameters(result);
146132

147133
// Typically the way of skipping a TestNG test is throwing a SkipException
148134
Throwable throwable = result.getThrowable();
149135
String reason = throwable != null ? throwable.getMessage() : null;
150136
testEventsHandler.onTestSkip(
151-
testSuiteName, testClass, testName, testQualifier, testParameters, reason);
152-
testEventsHandler.onTestFinish(
153-
testSuiteName, testClass, testName, testQualifier, testParameters);
137+
testSuiteName, testClass, testName, result, testParameters, reason);
138+
testEventsHandler.onTestFinish(testSuiteName, testClass, testName, result, testParameters);
154139
}
155140
}

0 commit comments

Comments
 (0)