Package mindnotes.client

Source Code of mindnotes.client.BasicModelTest

package mindnotes.client;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;

import java.util.Iterator;

import mindnotes.shared.model.MindMap;
import mindnotes.shared.model.Node;

import org.junit.Test;

public class BasicModelTest {

  @Test
  public void testAddingNodes() {
    MindMap m = new MindMap();
    assertNotNull(m.getRootNode());
    m.getRootNode().addChildNode(new Node());
    m.getRootNode().addChildNode(new Node());
    Node n = new Node();
    m.getRootNode().addChildNode(n);
    m.getRootNode().addChildNode(n);

    assertEquals(3, m.getRootNode().getChildCount());
    checkNodeTreeIntegrity(m.getRootNode());
  }

  public void checkNodeTreeIntegrity(Node rootNode) {
    for (Node child : rootNode.getChildren()) {
      assertEquals(rootNode, child.getParent());
      checkNodeTreeIntegrity(child);
    }
  }

  @Test
  public void testInsertAfter() {
    MindMap m = new MindMap();
    assertNotNull(m.getRootNode());
    m.getRootNode().addChildNode(new Node());
    Node n = new Node();
    m.getRootNode().addChildNode(n);
    m.getRootNode().addChildNode(new Node());

    Node x = new Node();
    m.getRootNode().insertAfter(x, n);

    Iterator<Node> iterator = m.getRootNode().getChildren().iterator();
    for (int i = 0; iterator.hasNext(); i++) {
      Node next = iterator.next();
      if (next == n) {
        assertEquals(1, i);
        assertEquals(x, iterator.next());
      }

    }
    checkNodeTreeIntegrity(m.getRootNode());
  }

  @Test
  public void testInsertBefore() {
    MindMap m = new MindMap();
    assertNotNull(m.getRootNode());
    m.getRootNode().addChildNode(new Node());
    Node n = new Node();
    m.getRootNode().addChildNode(n);
    m.getRootNode().addChildNode(new Node());

    Node x = new Node();
    m.getRootNode().insertBefore(x, n);

    Iterator<Node> iterator = m.getRootNode().getChildren().iterator();
    for (int i = 0; iterator.hasNext(); i++) {
      Node next = iterator.next();
      if (next == x) {
        assertEquals(1, i);
        assertEquals(n, iterator.next());
      }

    }
    checkNodeTreeIntegrity(m.getRootNode());
  }

  @Test
  public void testRemovingNodes() {
    MindMap m = new MindMap();
    assertNotNull(m.getRootNode());
    m.getRootNode().addChildNode(new Node());
    m.getRootNode().addChildNode(new Node());
    Node n = new Node();
    m.getRootNode().addChildNode(n);
    m.getRootNode().addChildNode(n);

    m.getRootNode().removeChildNode(n);

    assertEquals(2, m.getRootNode().getChildCount());
    assertFalse(m.getRootNode().hasChildNode(n));

  }
}
TOP

Related Classes of mindnotes.client.BasicModelTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.