RelationTreeModel extends AbstractTreeTableModel implements ISemanticalRelationProvider { @Override public int getChildCount(final Object parent) { if (parent instanceof UUID) { return this.relationGroups.get(parent).size(); } return this.relationGroups.size(); } RelationTreeModel(final ISemanticalRelationProvider relationProvider); @Override List<List<RelationTemplate>> provideRelationTemplates(); @Override Object getChild(final Object parent, final int index); @Override int getChildCount(final Object parent); @Override boolean isLeaf(final Object node); @Override int getIndexOfChild(final Object parent, final Object child); @Override int getColumnCount(); @Override String getColumnName(final int columnIndex); @Override Class<?> getColumnClass(final int columnIndex); @Override boolean isCellEditable(final Object node, final int columnIndex); @Override String getValueAt(final Object node, final int columnIndex); @Override void setValueAt(final Object value, final Object node, final int column); TreePath addGroupEntry(); RelationTemplate getTemplateAtPath(final TreePath path); TreePath addTemplateEntryToGroup(final TreePath groupPath); void updateTemplateEntry(final TreePath targetPath, final RelationTemplate newState); void moveEntry(final TreePath targetPath, final boolean moveDown); void removeEntry(final TreePath targetPath);  }
@Test public void testGetChildCount() { final Object root = this.model.getRoot(); Assert.assertSame(3, this.model.getChildCount(root)); final Object groupNode1 = this.model.getChild(root, 0); final Object groupNode2 = this.model.getChild(root, 1); final Object groupNode3 = this.model.getChild(root, 2); Assert.assertSame(2, this.model.getChildCount(groupNode1)); Assert.assertSame(0, this.model.getChildCount(groupNode2)); Assert.assertSame(4, this.model.getChildCount(groupNode3)); }