protected final void checkBindings() throws Exception {
   for (int i = 0; i < strategy.getAstCount(); i++) {
     IASTTranslationUnit ast = strategy.getAst(i);
     CNameCollector col = new CNameCollector();
     ast.accept(col);
     for (IASTName n : col.nameList) {
       assertFalse(
           "ProblemBinding for " + n.getRawSignature(),
           n.resolveBinding() instanceof IProblemBinding);
     }
   }
 }
  protected IASTName findName(String section, int len) {
    if (len == 0) len = section.length();
    for (int i = 0; i < strategy.getAstCount(); i++) {
      IASTTranslationUnit ast = strategy.getAst(i);
      final IASTNodeSelector nodeSelector = ast.getNodeSelector(null);
      final int offset = strategy.getAstSource(i).indexOf(section);
      if (offset >= 0) {
        IASTName name = nodeSelector.findName(offset, len);
        if (name == null) name = nodeSelector.findImplicitName(offset, len);
        return name;
      }
    }

    return null;
  }
 @Override
 protected void tearDown() throws Exception {
   strategy.tearDown();
   super.tearDown();
 }
 @Override
 protected void setUp() throws Exception {
   super.setUp();
   strategy.setUp();
 }
 protected IIndex getIndex() {
   return strategy.getIndex();
 }