@Test
public void testInsertRowIsAfterGrandChildren() {

  DummyComponentGroup root =
    new DummyComponentGroup(0, myModel, false).setChildren(
      new DummyComponentGroup(1, myModel, false).setChildren(
        new DummyComponentGroup(2, myModel, false).setChildren(
          new DummyComponent(3, myModel, true),
          new DummyComponent(4, myModel, false))));
  myTreePaths = buildDummyTreePathArray(root);
  DummyTree tree = new DummyTree();
  NlComponent receiver = root.getChild(0);
  when(myModel.canAddComponents(eq(myDragged), eq(receiver), any())).thenReturn(false);
  when(myModel.canAddComponents(eq(myDragged), eq(receiver), any(), anyBoolean())).thenReturn(false);
  assertFalse(myModel.canAddComponents(myDragged, receiver, null));
  NlDropInsertionPicker picker = new NlDropInsertionPicker(tree);
  NlDropInsertionPicker.Result result = picker.findInsertionPointAt(new Point(15, 15), myDragged);
  assertEquals(root, result.receiver);
  assertNull(result.nextComponent);
  assertEquals(4, result.row);
  assertEquals(-1, result.depth);
}