Program: 96238
Project: 96238
Buggy source:
/** 
 * creates the ToolTip Text
 * @param node GuiNode
 * @return String
 */
private String createToolTipText(INodePO node){
  StringBuilder toolTip=new StringBuilder();
  final WorkingLanguageBP workLangBP=WorkingLanguageBP.getInstance();
  Locale locale=workLangBP.getWorkingLanguage();
  ITestSuitePO testSuite=UINodeBP.getTestSuiteOfNode(node);
  if (node != null && isNodeActive(node)) {
    if (testSuite != null) {
      IAUTMainPO aut=testSuite.getAut();
      if (node instanceof IExecTestCasePO) {
        checkNode((IExecTestCasePO)node,aut,locale,toolTip);
      }
 else       if (node instanceof ICapPO) {
        ICapPO cap=(ICapPO)node;
        IExecTestCasePO execTC=(IExecTestCasePO)node.getParentNode().getParentNode();
        boolean overWrittenName=false;
        for (        ICompNamesPairPO pair : execTC.getCompNamesPairs()) {
          if (pair.getFirstName().equals(cap.getComponentName()) && pair.getSecondName() != null && !pair.getSecondName().equals(cap.getComponentName())) {
            overWrittenName=true;
            break;
          }
        }
        checkNode(aut,locale,cap,toolTip,overWrittenName);
      }
    }
    if (node instanceof ITestJobPO) {
      if (!isTestJobGuiValid((ITestJobPO)node)) {
        addMessage(toolTip,Messages.TestDataDecoratorTestJobIncompl);
      }
    }
 else     if (node instanceof IRefTestSuitePO) {
      if (!isRefTestSuiteGuiValid((IRefTestSuitePO)node)) {
        addMessage(toolTip,Messages.TestDataDecoratorRefTsIncompl);
      }
    }
    if (toolTip.length() == 0) {
      return super.getToolTipText(node);
    }
  }
  return toolTip.length() > 0 ? toolTip.toString() : null;
}

Fixed version (ground truth):
/** 
 * creates the ToolTip Text
 * @param node GuiNode
 * @return String
 */
private String createToolTipText(INodePO node){
  StringBuilder toolTip=new StringBuilder();
  final WorkingLanguageBP workLangBP=WorkingLanguageBP.getInstance();
  Locale locale=workLangBP.getWorkingLanguage();
  ITestSuitePO testSuite=UINodeBP.getTestSuiteOfNode(node);
  if (node != null && isNodeActive(node)) {
    if (testSuite != null) {
      IAUTMainPO aut=testSuite.getAut();
      if (node instanceof ITestSuitePO) {
        if (testSuite.getAut() != null && !workLangBP.isTestSuiteLanguage(locale,testSuite)) {
          toolTip.append(Constants.BULLET).append(Messages.TestDataDecoratorUnsupportedAUTLanguage);
        }
 else {
          checkNode(testSuite,aut,locale,toolTip);
        }
      }
 else       if (node instanceof IExecTestCasePO) {
        checkNode((IExecTestCasePO)node,aut,locale,toolTip);
      }
 else       if (node instanceof ICapPO) {
        ICapPO cap=(ICapPO)node;
        IExecTestCasePO execTC=(IExecTestCasePO)node.getParentNode().getParentNode();
        boolean overWrittenName=false;
        for (        ICompNamesPairPO pair : execTC.getCompNamesPairs()) {
          if (pair.getFirstName().equals(cap.getComponentName()) && pair.getSecondName() != null && !pair.getSecondName().equals(cap.getComponentName())) {
            overWrittenName=true;
            break;
          }
        }
        checkNode(aut,locale,cap,toolTip,overWrittenName);
      }
    }
    if (node instanceof ITestJobPO) {
      if (!isTestJobGuiValid((ITestJobPO)node)) {
        addMessage(toolTip,Messages.TestDataDecoratorTestJobIncompl);
      }
    }
 else     if (node instanceof IRefTestSuitePO) {
      if (!isRefTestSuiteGuiValid((IRefTestSuitePO)node)) {
        addMessage(toolTip,Messages.TestDataDecoratorRefTsIncompl);
      }
    }
    if (toolTip.length() == 0) {
      return super.getToolTipText(node);
    }
  }
  return toolTip.length() > 0 ? toolTip.toString() : null;
}