1336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustpackage test.configuration; 2336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust 3336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport static org.testng.Assert.assertFalse; 4336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport static org.testng.Assert.assertTrue; 5336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust 6336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport org.testng.annotations.AfterClass; 7336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport org.testng.annotations.AfterMethod; 8336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport org.testng.annotations.AfterSuite; 9336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport org.testng.annotations.BeforeClass; 10336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport org.testng.annotations.BeforeMethod; 11336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustimport org.testng.annotations.Test; 12336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust 13336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beustpublic class MethodCallOrderTest { 14336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public static boolean s_beforeSuite; 15336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public static boolean s_beforeTest; 16336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public static boolean s_beforeClass; 17336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public static boolean s_beforeMethod; 18336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust 19336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust @BeforeClass 20336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public void beforeClass() { 21336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeSuite); 22336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeTest); 23336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(s_beforeClass); 24336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(s_beforeMethod); 25892b08c1f1afd198fd8ccbf804de28b7ce12f547nullin 26336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust s_beforeClass = true; 27336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust } 28892b08c1f1afd198fd8ccbf804de28b7ce12f547nullin 29336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust @AfterSuite 30336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public void cleanUp() { 31336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust s_beforeSuite = false; 32336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust s_beforeTest = false; 33336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust s_beforeClass = false; 34336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust s_beforeMethod = false; 35336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust } 36336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust 37892b08c1f1afd198fd8ccbf804de28b7ce12f547nullin 38336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust @BeforeMethod 39336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public void beforeMethod() { 40336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeSuite); 41336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeTest); 42336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeClass); 43336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(s_beforeMethod); 44336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust s_beforeMethod = true; 45336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust } 46892b08c1f1afd198fd8ccbf804de28b7ce12f547nullin 47336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust @Test 48336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public void realTest() { 49336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeSuite); 50336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeTest); 51336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeClass); 52336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(s_beforeMethod); 53336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust } 54892b08c1f1afd198fd8ccbf804de28b7ce12f547nullin 55336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust @AfterMethod 56336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public void afterMethod() { 57336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(ExternalConfigurationClass.s_afterMethod, "afterTestMethod shouldn't have been run"); 58336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(ExternalConfigurationClass.s_afterClass, "afterTestClass shouldn't have been run"); 59336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(ExternalConfigurationClass.s_afterTest, "afterTest should haven't been run"); 60336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust 61336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust ExternalConfigurationClass.s_afterMethod = true; 62336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust } 63892b08c1f1afd198fd8ccbf804de28b7ce12f547nullin 64336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust @AfterClass 65336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust public void afterClass() { 66336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertTrue(ExternalConfigurationClass.s_afterMethod, "afterTestMethod should have been run"); 67336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(ExternalConfigurationClass.s_afterClass, "afterTestClass shouldn't have been run"); 68336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust assertFalse(ExternalConfigurationClass.s_afterTest, "afterTest should haven't been run"); 69336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust ExternalConfigurationClass.s_afterClass = true; 70336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust } 71336f0ef401e9f564b8dc99d601ac80e8891ac2c1Cédric Beust} 72