package nl.joshuaslik.tudelft.SEM.model.container;

import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotEquals;

import nl.joshuaslik.tudelft.SEM.model.container.Levels;
import org.junit.Test;

public class LevelsTest {

    @Test
    public void testAmountOfLevels() {
        assertEquals(Levels.amountOfLevels(), 4);
        assertNotEquals(Levels.amountOfLevels(), 7);
    }

    @Test
    public void testGetLevel() {
//        ArrayList<Bubble> bubbles = Levels.getLevelObjects(0);
//        assertEquals(bubbles.size(), 1);
//        bubbles = Levels.getLevelObjects(1);
//        assertEquals(bubbles.size(), 2);
//        bubbles = Levels.getLevelObjects(2);
//        assertEquals(bubbles.size(), 3);
//        assertEquals(bubbles.get(1).getRadius(), 20d, 0);
//        bubbles = Levels.getLevelObjects(3);
//        assertEquals(bubbles.size(), 3);
//        assertEquals(bubbles.get(1).getRadius(), 70d, 0);
//        bubbles = Levels.getLevelObjects(4);
//        assertEquals(bubbles.size(), 4);
    }

}

@@ -150,108 +150,586 @@
 ort 
-nl.joshuaslik.tudelft.SEM.model.container.Levels;%0Aimport org.junit.Test;%0A%0Apublic class LevelsTest %7B%0A
+org.junit.Before;%0A%0Aimport nl.joshuaslik.tudelft.SEM.control.gameObjects.IGameObjects;%0Aimport nl.joshuaslik.tudelft.SEM.control.viewController.viewObjects.ICircleViewObject;%0Aimport nl.joshuaslik.tudelft.SEM.model.container.Levels;%0Aimport org.junit.Test;%0Aimport org.junit.runner.RunWith;%0Aimport org.mockito.Mock;%0Aimport org.mockito.runners.MockitoJUnitRunner;%0Aimport static org.mockito.Mockito.when;%0A%0Aimport javafx.scene.shape.Circle;%0A%0A@RunWith(MockitoJUnitRunner.class)%0Apublic class LevelsTest %7B%0A%0A%09@Mock%0A%09IGameObjects gameObjects;%0A    %0A%09@Mock%0A%09ICircleViewObject circle,circle2;%0A%09
 %0A   
@@ -926,116 +926,146 @@
 evel
+0
 () %7B%0A
-//
     
-    ArrayList%3CBubble%3E bubbles = Levels.getLevelObjects(0);%0A//        assertEquals(bubbles
+%09when(gameObjects.makeCircle(200, 500, 20)).thenReturn(circle);%0A    %09assertEquals(Levels.getLevelObjects(0, gameObjects)
 .size(),
  1);
@@ -1064,310 +1064,339 @@
 e(),
- 
 1);%0A
-//
+    %7D%0A
     
+%0A
     
-bubbles = Levels.getLevelObjects(1);%0A//
+@Test%0A    public void testGetLevel1() %7B%0A
     
+%7D%0A%0A
     
-assertEquals(bubbles.size(), 2);%0A//        bubbles = 
+@Test%0A    public void testNextLevel() %7B%0A    %09
 Levels.
-getLevelObjects(2
+setCurrentLevel(0
 );%0A
-//
     
-    assertEquals(bubbles.size(), 3);%0A//        assertEquals(bubbles.get(1).getRadius(), 20d, 0);%0A//        bubbles = Levels.getLevelObjects(3
+%09Levels.nextLevel();%0A    %09assertEquals(Levels.getCurrentLevel(),1);%0A    %7D%0A    %0A    @Test%0A    public void testLastLevel() %7B%0A    %09Levels.setCurrentLevel(4
 );%0A
-//
     
+%09Levels.nextLevel();%0A
     
+%09
 asse
@@ -1408,145 +1408,174 @@
 als(
-bubbles.size(), 3);%0A//
+Levels.getCurrentLevel(),1);%0A    %7D%0A
     
+%0A
     
-assertEquals(bubbles.get(1).getRadius(), 70d, 0);%0A//        bubbles = 
+@Test%0A    public void testUnlockedLevel() %7B%0A    %09assertEquals(Levels.getUnlockedLevel(),1);%0A    %09
 Levels.
-ge
+nex
 tLevel
-Objects(4);%0A// 
+();%0A
     
-   
+%09
 asse
@@ -1587,25 +1587,35 @@
 als(
-bubbles.size(), 4
+Levels.getUnlockedLevel(),2
 );%0A 
@@ -1619,11 +1619,10 @@
 ;%0A    %7D%0A
-%0A
 %7D%0A

edit levelTest add comments <testing, documentation