### Question:
ForumStructureTreeModel extends ZkTreeModel<ForumStructureItem> { public PoulpeSection getSelectedSection() { ForumStructureItem selectedData = getSelectedData(0); if (selectedData != null) { return selectedData.getSectionItem(); } return null; } ForumStructureTreeModel(@Nonnull ZkTreeNode<ForumStructureItem> root); ForumStructureTreeModel putBranch(ForumStructureItem branchToPut, ForumStructureItem destinationSection); ForumStructureTreeModel moveBranchIfSectionChanged(PoulpeBranch branch); void addIfAbsent(PoulpeSection section); PoulpeSection getSelectedSection(); ZkTreeNode<ForumStructureItem> removeBranch(@Nullable PoulpeBranch branch); ZkTreeNode<ForumStructureItem> removeSection(@Nullable PoulpeSection section); List<PoulpeSection> getSections(); void onDropNode(TreeNode<ForumStructureItem> draggedNode,
                             TreeNode<ForumStructureItem> targetNode); boolean noEffectAfterDropNode(TreeNode<ForumStructureItem> draggedNode, 
            TreeNode<ForumStructureItem> targetNode); void expandTree(); void collapseTree();  }### Answer:
@Test public void getSelectedSection() { TreeNode<ForumStructureItem> selected = sut.getChild(1); sut.setSelectedNode(selected); PoulpeSection section = selected.getData().getSectionItem(); assertEquals(sut.getSelectedSection(), section); }
@Test public void getSectionOfSelectedBranch() { TreeNode<ForumStructureItem> selected = sut.getChild(1, 1); sut.setSelectedNode(selected); PoulpeSection section = selected.getParent().getData().getSectionItem(); assertEquals(sut.getSelectedSection(), section); }
@Test public void getSelectedSectionWhenNothingIsSelected() { assertNull(sut.getSelectedSection()); }