package core.graph;

import core.Model;
import core.graph.cell.CellType;
import org.junit.*;
import static org.junit.Assert.*;
import static org.mockito.Matchers.*;
import static org.mockito.Mockito.*;

/**
 * Created by user on 18-5-2016.
 */
public class PhylogeneticTreeTest {

    private PhylogeneticTree pt;

    private Model mockedModel;

    /**
     * Setup a new Phylogenetic Tree instance.
     */
    @Before
    public void setUp() {
        pt = new PhylogeneticTree();
        mockedModel = mock(Model.class);

        when(mockedModel.addCell(anyInt(), anyString(), any(CellType.class))).thenReturn(true);
    }

    /**
     * Test the class constructor.
     */
    @Test
    public void testConstructor() {
        assertNotNull(pt);
    }

    /**
     * Test the getModel method.
     */
    @Test
    public void testGetModel() {
        Object model = pt.getModel();
        assertEquals(Model.class, model.getClass());
    }

    /**
     * Test the getTreeFromFile method.
     */
    @Test
    public void testGetTreeFromFile() {
        net.sourceforge.olduvai.treejuxtaposer.drawer.Tree tree = pt.getTreeFromFile();
        assertNotEquals(0, tree.getLeafCount());
    }

    /**
     * Test the setup method.
     */
    @Test
    public void testSetup() {
        pt.setModel(mockedModel);
        pt.setup();
        verify(mockedModel, atLeast(1)).addCell(anyInt(), anyString(), any(CellType.class));
    }
}
@@ -274,16 +274,18 @@
 Test %7B%0A%0A
+//
     priv
@@ -309,17 +309,21 @@
 ree pt;%0A
-%0A
+//%0A//
     priv
@@ -345,25 +345,29 @@
 dModel;%0A
-%0A
+//%0A//
     /**%0A
      * S
@@ -354,24 +354,26 @@
 /%0A//    /**%0A
+//
      * Setup
@@ -407,24 +407,26 @@
 stance.%0A
+//
      */%0A
     @Bef
@@ -413,24 +413,26 @@
 .%0A//     */%0A
+//
     @Before%0A
@@ -431,16 +431,18 @@
 @Before%0A
+//
     publ
@@ -455,24 +455,26 @@
 d setUp() %7B%0A
+//
         pt =
@@ -494,24 +494,26 @@
 eticTree();%0A
+//
         mock
@@ -541,17 +541,21 @@
 class);%0A
-%0A
+//%0A//
         
@@ -642,31 +642,37 @@
 (true);%0A
+//
     %7D%0A
-%0A
+//%0A//
     /**%0A
      * T
@@ -655,32 +655,34 @@
  %7D%0A//%0A//    /**%0A
+//
      * Test the 
@@ -700,24 +700,26 @@
 ructor.%0A
+//
      */%0A
     @Tes
@@ -702,32 +702,34 @@
 ctor.%0A//     */%0A
+//
     @Test%0A    pu
@@ -714,32 +714,34 @@
  */%0A//    @Test%0A
+//
     public void 
@@ -756,24 +756,26 @@
 tructor() %7B%0A
+//
         asse
@@ -789,31 +789,37 @@
 ll(pt);%0A
+//
     %7D%0A
-%0A
+//%0A//
     /**%0A
      * T
@@ -802,32 +802,34 @@
  %7D%0A//%0A//    /**%0A
+//
      * Test the 
@@ -841,32 +841,34 @@
 del method.%0A
+//
      */%0A
     @Test%0A  
@@ -847,32 +847,34 @@
 thod.%0A//     */%0A
+//
     @Test%0A    pu
@@ -859,32 +859,34 @@
  */%0A//    @Test%0A
+//
     public void 
@@ -898,24 +898,26 @@
 etModel() %7B%0A
+//
         Obje
@@ -938,24 +938,26 @@
 getModel();%0A
+//
         asse
@@ -993,39 +993,45 @@
 etClass());%0A
+//
     %7D%0A
-%0A
+//%0A//
     /**%0A
      * Test 
@@ -1010,32 +1010,34 @@
  %7D%0A//%0A//    /**%0A
+//
      * Test the 
@@ -1056,32 +1056,34 @@
 ile method.%0A
+//
      */%0A
     @Test%0A  
@@ -1062,32 +1062,34 @@
 thod.%0A//     */%0A
+//
     @Test%0A    pu
@@ -1074,32 +1074,34 @@
  */%0A//    @Test%0A
+//
     public void 
@@ -1120,24 +1120,26 @@
 romFile() %7B%0A
+//
         net.
@@ -1210,24 +1210,26 @@
 FromFile();%0A
+//
         asse
@@ -1269,23 +1269,29 @@
 ));%0A
+//
     %7D%0A
-%0A
+//%0A//
     /**%0A
     
@@ -1286,16 +1286,18 @@
     /**%0A
+//
      * T
@@ -1318,24 +1318,26 @@
 method.%0A
+//
      */%0A
     @Tes
@@ -1328,16 +1328,18 @@
      */%0A
+//
     @Tes
@@ -1340,16 +1340,18 @@
   @Test%0A
+//
     publ
@@ -1372,16 +1372,18 @@
 tup() %7B%0A
+//
         
@@ -1408,16 +1408,18 @@
 Model);%0A
+//
         
@@ -1430,16 +1430,18 @@
 etup();%0A
+//
         
@@ -1525,15 +1525,17 @@
 lass));%0A
+//
     %7D%0A%7D

Comment test..