From d882ce775ef423c17f94116f0f5cf304f0e2f7ae Mon Sep 17 00:00:00 2001 From: aditya-qapitol <62279158+aditya-qapitol@users.noreply.github.com> Date: Thu, 28 Jan 2021 16:22:44 +0530 Subject: [PATCH] Issue 2467 (#2468) * https://github.com/cbeust/testng/issues/2467 * https://github.com/cbeust/testng/issues/2467; test case for bug * https://github.com/cbeust/testng/issues/2467; updated CHANGES.txt --- CHANGES.txt | 1 + src/main/java/org/testng/xml/XmlTest.java | 1 + src/test/java/org/testng/xml/XmlTestTest.java | 12 ++++++++++++ 3 files changed, 14 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 6ac043f189..7696e50a02 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ Current +Fixed: GITHUB-2467: XmlTest does not copy the xmlClasses during clone (C.V.Aditya) Fixed: GITHUB-2296: Fix for assertEquals not working for sets as order is not guaranteed. (Prashant Maroti) Fixed: GITHUB-2465: Fix bux where Strings.join returns empty String Fixed: GITHUB-1632: throwing SkipException sets iTestResult status to Failure instead of Skip (Julien Herr & Krishnan Mahadevan) diff --git a/src/main/java/org/testng/xml/XmlTest.java b/src/main/java/org/testng/xml/XmlTest.java index 85a417683a..12e16c876b 100644 --- a/src/main/java/org/testng/xml/XmlTest.java +++ b/src/main/java/org/testng/xml/XmlTest.java @@ -429,6 +429,7 @@ public Object clone() { result.setParameters(getLocalParameters()); result.setXmlPackages(getXmlPackages()); result.setTimeOut(getTimeOut()); + result.setXmlClasses(getXmlClasses()); Map> metagroups = getMetaGroups(); for (Map.Entry> group : metagroups.entrySet()) { diff --git a/src/test/java/org/testng/xml/XmlTestTest.java b/src/test/java/org/testng/xml/XmlTestTest.java index ce6a1cadf8..b5a724c4e6 100644 --- a/src/test/java/org/testng/xml/XmlTestTest.java +++ b/src/test/java/org/testng/xml/XmlTestTest.java @@ -5,6 +5,7 @@ import org.testng.annotations.Test; import org.testng.collections.Maps; import test.SimpleBaseTest; +import test.junitreports.SimpleTestSample; import java.util.Collections; import java.util.Map; @@ -33,6 +34,17 @@ public Object[][] getData() { return new Object[][] {{newSetOfParameters(null, "value")}, {newSetOfParameters("foo", null)}}; } + @Test(description = "GITHUB-2467") + public void testXMLClassesInCloneMethod() { + XmlSuite xmlSuite = createXmlSuite("suite"); + XmlTest xmlTest = createXmlTest(xmlSuite, "test"); + createXmlClass(xmlTest, SimpleTestSample.class); + XmlTest copyXmlTest = (XmlTest) xmlTest.clone(); + Assert.assertNotNull(copyXmlTest); + Assert.assertNotNull(copyXmlTest.getXmlClasses()); + Assert.assertEquals(xmlTest.getXmlClasses().size(), copyXmlTest.getXmlClasses().size()); + } + private static Map newSetOfParameters(String key, String value) { Map map = Maps.newHashMap(); map.put(key, value);