package test.testng317;

import org.testng.annotations.Test;


public class ClassA {
  @Test
  public void sameNameA(){
    printMethod();
  }
  @Test (dependsOnMethods="sameNameA")
  public void uniqueNameB(){
    printMethod();
  }
  @Test (dependsOnMethods="uniqueNameB")
  public void uniqueNameC(){
    printMethod();
  }
  @Test (dependsOnMethods="uniqueNameC")
  public void uniqueNameD(){
    printMethod();
  }
  @Test (dependsOnMethods="uniqueNameD")
  public void sameNameE(){
    printMethod();
  }
  @Test (dependsOnMethods="sameNameE")
  public void sameNameF(){
    printMethod();
  }  
  @Test (dependsOnMethods="sameNameF")
  public void sameNameG(){
    printMethod();
  }  
  @Test (dependsOnMethods="sameNameG")
  public void sameNameH(){
    printMethod();
  }  
  
  public void nullTest(){
    printMethod();
  }
  protected void printMethod() {
    StackTraceElement[] sTrace = new Exception().getStackTrace();
    String className = sTrace[0].getClassName();
    String methodName = sTrace[1].getMethodName();
    
    System.out.printf("*********** executing --- %s %s\n", className, methodName);
    
    VerifyTest.m_methods.add(className + "." + methodName);
  }
}
