/** * @deprecated Use {@link #setPreserveOrder(Boolean)} instead */ @Deprecated public void setPreserveOrder(String preserveOrder) { setPreserveOrder(Boolean.valueOf(preserveOrder)); }
/** @deprecated Use {@link #setPreserveOrder(Boolean)} instead */ @Deprecated public void setPreserveOrder(String preserveOrder) { setPreserveOrder(Boolean.valueOf(preserveOrder)); }
private void initializeCommandLineSuites() { if (m_commandLineTestClasses != null || m_commandLineMethods != null) { if (null != m_commandLineMethods) { m_cmdlineSuites = createCommandLineSuitesForMethods(m_commandLineMethods); } else { m_cmdlineSuites = createCommandLineSuitesForClasses(m_commandLineTestClasses); } for (XmlSuite s : m_cmdlineSuites) { for (XmlTest t : s.getTests()) { t.setPreserveOrder(m_preserveOrder); } m_suites.add(s); if (m_groupByInstances != null) { s.setGroupByInstances(m_groupByInstances); } } } }
private void initializeCommandLineSuites() { if (m_commandLineTestClasses != null || m_commandLineMethods != null) { if (null != m_commandLineMethods) { m_cmdlineSuites = createCommandLineSuitesForMethods(m_commandLineMethods); } else { m_cmdlineSuites = createCommandLineSuitesForClasses(m_commandLineTestClasses); } for (XmlSuite s : m_cmdlineSuites) { for (XmlTest t : s.getTests()) { t.setPreserveOrder(m_preserveOrder); } m_suites.add(s); if (m_groupByInstances != null) { s.setGroupByInstances(m_groupByInstances); } } } }
m_currentTest.setPreserveOrder(Boolean.valueOf(preserveOrder));
m_currentTest.setPreserveOrder(Boolean.valueOf(preserveOrder));
test.setPreserveOrder(false); Assert.assertFalse(test.getPreserveOrder()); test.setPreserveOrder(true); Assert.assertTrue(test.getPreserveOrder()); test.setPreserveOrder(false); Assert.assertFalse(test.getPreserveOrder()); test.setPreserveOrder((Boolean)null); Assert.assertFalse(test.getPreserveOrder()); test.setPreserveOrder(true); Assert.assertTrue(test.getPreserveOrder()); test.setPreserveOrder((Boolean)null); Assert.assertTrue(test.getPreserveOrder()); test.setPreserveOrder((Boolean)null); Assert.assertNull(test.getPreserveOrder());
@Test public void afterClassShouldRun() { XmlSuite s = createXmlSuite("S"); XmlTest t = createXmlTest(s, "T", Main.class.getName()); XmlClass c = t.getXmlClasses().get(0); c.getIncludedMethods().add(new XmlInclude("test1")); t.setPreserveOrder(true); TestNG tng = create(); tng.setXmlSuites(Arrays.asList(new XmlSuite[] { s })); Main.m_passed = false; tng.run(); Assert.assertTrue(Main.m_passed); } }
@Test(description = "preserve-order on a factory doesn't cause an NPE") public void factoryPreserve() { TestNG tng = create(); XmlSuite suite = createXmlSuite("FactoryPreserve"); XmlTest test = createXmlTest(suite, "Test", ClassSampleFactory.class); test.setPreserveOrder(true); tng.setXmlSuites(Arrays.asList(suite)); tng.run(); }
@Test(dataProvider = "dpTests") public void preserveClassOrder(Class<?>[] tests) { TestNG tng = create(); XmlSuite suite = createXmlSuite("Suite"); XmlTest test = createXmlTest(suite, "Test", tests); test.setPreserveOrder(true); tng.setXmlSuites(Arrays.asList(suite)); InvokedMethodNameListener listener = new InvokedMethodNameListener(); tng.addListener((ITestNGListener) listener); tng.run(); assertThat(listener.getInvokedMethodNames()).hasSize(9); Iterator<String> methods = listener.getInvokedMethodNames().iterator(); for (Class<?> testClass : tests) { for (int i = 1; i <= 3; i++) { String methodName = methods.next(); Assert.assertEquals(methodName, testClass.getSimpleName().toLowerCase() + i); } } }
@Test public void testCreateDynamicGraphWithPreserveOrderAndNoParallelism() { Class<?>[] classes = new Class<?>[] {SequentialClassA.class, SequentialClassB.class}; XmlTest xmlTest = createXmlTest("suite", "test", classes); xmlTest.setPreserveOrder(true); xmlTest.setParallel(XmlSuite.ParallelMode.NONE); DynamicGraph<ITestNGMethod> graph = newGraph(xmlTest, classes); List<String> methodNames = Arrays.asList("testMethodOneSequentialClassB", "testMethodTwoSequentialClassB"); for (String methodName : methodNames) { Map<ITestNGMethod, Integer> edges = searchForMethod(methodName, graph); assertThat(extractDestinationInfoFromEdge(edges)) .contains("testMethodOneSequentialClassA", "testMethodTwoSequentialClassA"); } }
@Test(dataProvider = "dpMethods") public void preserveMethodOrder(String[] methods) { TestNG tng = create(); XmlSuite suite = createXmlSuite("Suite"); XmlTest test = createXmlTest(suite, "Test", A.class); addMethods(test.getXmlClasses().get(0), methods); test.setPreserveOrder(true); tng.setXmlSuites(Arrays.asList(suite)); InvokedMethodNameListener listener = new InvokedMethodNameListener(); tng.addListener((ITestNGListener) listener); tng.run(); assertThat(listener.getInvokedMethodNames()).containsExactly(methods); }
@Test public void orderShouldBePreservedWithDependencies() { TestNG tng = create(); XmlSuite suite = createXmlSuite("PreserveOrder"); XmlTest test = createXmlTest(suite, "Test", Chuck4Sample.class, Chuck3Sample.class); test.setPreserveOrder(true); tng.setXmlSuites(Arrays.asList(suite)); InvokedMethodNameListener listener = new InvokedMethodNameListener(); tng.addListener((ITestNGListener) listener); tng.run(); assertThat(listener.getSucceedMethodNames()).containsExactly( "c4TestOne", "c4TestTwo", "c4TestThree", "c3TestOne", "c3TestTwo", "c3TestThree" ); }
@Test public void orderShouldBePreservedInMethodsWithSameNameAndInDifferentClassesAndDifferentPackage() { TestNG tng = create(); XmlSuite s = createXmlSuite("PreserveOrder"); XmlTest t = new XmlTest(s); t.getXmlClasses().add(new XmlClass("test.testng173.ClassA")); t.getXmlClasses().add(new XmlClass("test.testng173.anotherpackage.ClassC")); t.setPreserveOrder(true); tng.setXmlSuites(Arrays.asList(s)); InvokedMethodNameListener listener = new InvokedMethodNameListener(); tng.addListener((ITestNGListener) listener); tng.run(); // bug //verifyPassedTests(tla, "test1", "test2", "testX", "test1", "test2"); assertThat(listener.getSucceedMethodNames()).containsExactly("test1", "test2", "testX", "test2", "test1"); }
@Test public void orderShouldBePreservedInMethodsWithSameNameAndInDifferentClasses() { TestNG tng = create(); XmlSuite s = createXmlSuite("PreserveOrder"); XmlTest t = new XmlTest(s); t.getXmlClasses().add(new XmlClass("test.testng173.ClassA")); t.getXmlClasses().add(new XmlClass("test.testng173.ClassB")); t.setPreserveOrder(true); tng.setXmlSuites(Arrays.asList(s)); InvokedMethodNameListener listener = new InvokedMethodNameListener(); tng.addListener((ITestNGListener) listener); tng.run(); // bug //verifyPassedTests(tla, "test1", "test2", "testX", "test1", "test2"); // Proposed fix assertThat(listener.getSucceedMethodNames()).containsExactly("test1", "test2", "testX", "test2", "test1"); }
@Test public void testOrderingWhenInvolvingCustomInterceptors() { XmlSuite suite = createXmlSuite("suite"); suite.setPreserveOrder(false); XmlTest xmlTest = createXmlTest(suite, "test", TestClassSample1.class, TestClassSample2.class); xmlTest.setPreserveOrder(false); TestNG testng = create(suite); testng.addListener(new PriorityInterceptor()); testng.addListener((ITestNGListener) new MethodOrderTracker()); testng.run(); List<String> expected = Arrays.asList( "TestClassSample2.Test3", "TestClassSample1.Test1", "TestClassSample1.Test2", "TestClassSample2.Test4" ); assertThat(MethodOrderTracker.ordered).containsExactlyElementsOf(expected); }