Browse Source

Tests für CategoryController und Coverage

Teh-Hai Julian Zheng 8 years ago
parent
commit
1b3efb1fa5
1 changed files with 48 additions and 0 deletions
  1. 48 0
      src/tests/praktiumHolonTestCategoryController.java

+ 48 - 0
src/tests/praktiumHolonTestCategoryController.java

@@ -5,11 +5,14 @@ import static org.junit.Assert.*;
 import org.junit.Before;
 import org.junit.Test;
 
+import com.sun.xml.internal.ws.policy.spi.AssertionCreationException;
+
 import classes.HolonObject;
 import classes.HolonSwitch;
 import ui.controller.CategoryController;
 import ui.controller.MultiPurposeController;
 import ui.model.Model;
+import classes.Category;
 
 
 
@@ -26,6 +29,7 @@ public class praktiumHolonTestCategoryController {
 		model = new Model();
 		mp = new MultiPurposeController(model);
 		controller = new CategoryController(model, mp);
+		
 	}
 	
 	@Test
@@ -37,5 +41,49 @@ public class praktiumHolonTestCategoryController {
 		assertFalse("A Switch should not be a Holon Object", model.getCategories().get(2).getObjects().get(1) instanceof HolonObject);
 	}
 	
+	@Test
+	public void testAddingCategories() {
+		controller.addNewCategory("University");
+		controller.addNewCategory("Hospital");
+		assertTrue("Number of Categories is not 5", model.getCategories().size() == 5);
+		controller.addNewCategory("Energy");
+		assertTrue("Number of Categories is not 6", model.getCategories().size() == 6);
+		assertTrue("Name of the Duplicate: Energy was not changed to Energy_0", model.getCategories().get(5).getName().equals("Energy_0"));
+		controller.addNewCategory("Energy");
+		assertTrue("Number of Categories is not 7", model.getCategories().size() == 7);
+		assertTrue("Name of the Duplicate: Energy was not changed to Energy_1", model.getCategories().get(6).getName().equals("Energy_1"));
+	}
+	
+	@Test
+	public void testDeletingCategories() {
+		assertTrue("Number of Categories is not 3", model.getCategories().size() == 3);
+		assertTrue("2nd Category does not Match", model.getCategories().get(1).getName().equals("Building"));
+		controller.deleteCategory("Building");
+		assertTrue("Number of Categories is not 2", model.getCategories().size() == 2);
+		assertTrue("Former 2nd Category was not deleted", model.getCategories().get(1).getName().equals("Component"));
+		controller.deleteCategory("Energy");
+		assertTrue("Number of Categories is not 1", model.getCategories().size() == 1);
+		assertTrue("1st Category was not Component", model.getCategories().get(0).getName().equals("Component"));
+	}
+	
+	@Test
+	public void testAddingAndDeletingObjects() {
+		controller.addNewHolonObject(mp.searchCategory("Energy"), "Power Plant", null, "");
+		controller.addNewHolonObject(mp.searchCategory("Energy"), "Power Plant", null, "");
+		controller.addNewHolonObject(mp.searchCategory("Energy"), "Solar Plant", null, "");
+		
+		assertTrue("Number of Objects in Energy is not 4",mp.searchCategory("Energy").getObjects().size() == 4);
+		assertTrue("Number of Object-Indices in Energy is not 4",mp.searchCategory("Energy").getObjIdx().size() == 4);
+		assertTrue("Object was not renamed to \"Power Plant_0\" ", mp.searchCategory("Energy").getObjects().get(1).getObjName().equals("Power Plant_0"));
+		assertTrue("Object was not renamed to \"Power Plant_1\" ", mp.searchCategory("Energy").getObjects().get(2).getObjName().equals("Power Plant_1"));
+		assertTrue("3th Object was not \"Power Plant_1\"", mp.searchCategory("Energy").getObjects().get(2).getName().equals("Power Plant_1"));
+		controller.deleteObject("Energy", "Power Plant_1");
+		assertTrue("3th Object was not deleted", mp.searchCategory("Energy").getObjects().get(2).getName().equals("Solar Plant"));
+		assertTrue("Number of Objects in Energy is not 3",mp.searchCategory("Energy").getObjects().size() == 3);
+		controller.addNewHolonObject(mp.searchCategory("Energy"), "Solar Plant", null, "");
+		assertTrue("Object was not renamed to \"Solar Plant_0\" ", mp.searchCategory("Energy").getObjects().get(3).getObjName().equals("Solar Plant_0"));
+		assertTrue("Number of Objects in Energy is not 4",mp.searchCategory("Energy").getObjects().size() == 4);
+	}
+	
 	
 }