blob: 3315140d07b2e50858107ef001f69cdbad5342d2 [file] [log] [blame]
package test.inheritance.testng471;
import org.testng.TestNG;
import org.testng.annotations.Test;
import test.InvokedMethodNameListener;
import test.SimpleBaseTest;
import static org.assertj.core.api.Assertions.assertThat;
public class TestNG471 extends SimpleBaseTest {
@Test
public void test_classes_should_not_be_skipped_when_a_after_method_fails() {
TestNG tng = create(Class1.class, Class2.class, Class3.class);
tng.setPreserveOrder(true);
tng.setVerbose(10);
InvokedMethodNameListener listener = new InvokedMethodNameListener();
tng.setPreserveOrder(true);
tng.addListener(listener);
tng.run();
assertThat(listener.getFailedMethodNames()).containsExactly("afterMethodClass1");
assertThat(listener.getSkippedMethodNames()).containsExactly("test1_2");
assertThat(listener.getSucceedMethodNames()).containsExactly(
"beforeSuperClass1",
"beforeClass1",
"beforeMethodClass1", "test1_1", // "afterMethodClass1" failed
// "beforeMethodClass1", "test1_2" and "afterMethodClass1" skipped
// "afterClass1" skipped
"beforeSuperClass1",
"beforeClass2",
"beforeMethodClass2", "test2_1", "afterMethodClass2",
"beforeMethodClass2", "test2_2", "afterMethodClass2",
"afterClass2",
"beforeSuperClass2",
"beforeClass3",
"beforeMethodClass3", "test3_1", "afterMethodClass3",
"beforeMethodClass3", "test3_2", "afterMethodClass3",
"afterClass3");
}
}