Java 类org.testng.internal.TestNGMethod 实例源码

项目:tempto    文件:RequirementsExpanderInterceptor.java   
private List<IMethodInstance> expandMethod(IMethodInstance method)
{
    List<IMethodInstance> extendedMethods = Lists.newArrayList();
    Set<Set<Requirement>> testSpecificRequirements = testSpecificRequirementsResolver.resolve(method.getMethod());
    if (testSpecificRequirements.size() == 1) {
        extendedMethods.add(new MethodInstance(new RequirementsAwareTestNGMethod(method.getMethod(), getOnlyElement(testSpecificRequirements))));
    }
    else {
        for (Set<Requirement> requirementSet : testSpecificRequirements) {
            TestNGMethod clonedMethod = (TestNGMethod) method.getMethod().clone();
            extendedMethods.add(new MethodInstance(new RequirementsAwareTestNGMethod(clonedMethod, requirementSet)));
        }
    }
    return extendedMethods;
}