PraktikumHolonsTestObjectController.java 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. package tests;
  2. import static org.junit.Assert.assertTrue;
  3. import org.junit.Before;
  4. import org.junit.Test;
  5. import classes.AbstractCanvasObject;
  6. import classes.HolonObject;
  7. import ui.controller.CanvasController;
  8. import ui.controller.CategoryController;
  9. import ui.controller.Control;
  10. import ui.controller.MultiPurposeController;
  11. import ui.controller.ObjectController;
  12. import ui.model.Model;
  13. /**
  14. * Tests for the ObjectController.
  15. *
  16. * @author Gruppe14
  17. */
  18. public class PraktikumHolonsTestObjectController {
  19. protected PraktikumHolonsAdapter adapter;
  20. protected Model model;
  21. protected MultiPurposeController mp;
  22. protected CategoryController cg;
  23. protected CanvasController cvs;
  24. protected ObjectController controller;
  25. /**
  26. * Setup for the Tests.
  27. */
  28. @Before
  29. public void setUp() {
  30. adapter = new PraktikumHolonsAdapter();
  31. model = new Model();
  32. mp = new MultiPurposeController(model);
  33. cg = new CategoryController(model, mp, new Control(model));
  34. cvs = new CanvasController(model, mp);
  35. controller = new ObjectController(model, mp);
  36. }
  37. /**
  38. * Tests for the Initial HolonElements.
  39. */
  40. @Test
  41. public void testInitialHolonElements() {
  42. assertTrue("Number of Elements does not Match",
  43. ((HolonObject) mp.searchCatObj(mp.searchCat("Energy"), "Power Plant")).getElements().size() == 1);
  44. // assertTrue("Element does not Match",
  45. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Energy"), "Power Plant"), "Power").getEleName()
  46. // .equals("Power"));
  47. // assertTrue("Element does not Match",
  48. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Energy"), "Power Plant"), "Power").getEleName()
  49. // .equals("Power"));
  50. // assertTrue("Total Energy does not Match",
  51. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "PC")
  52. // .getTotalEnergy() == -750);
  53. // assertTrue("Non-Existant Element is Found",
  54. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "") == null);
  55. }
  56. /**
  57. * Tests for adding and Deleting in Categories.
  58. */
  59. @Test
  60. public void testAddingAndDeletingInCategory() {
  61. controller.addNewElementIntoCategoryObject("Building", "House", "A", 1, -10);
  62. for (int i = 2; i < 27; i++) {
  63. controller.addNewElementIntoCategoryObject("Building", "House", adapter.generate(i), i, -10);
  64. // n(n+1) / 2
  65. assertTrue("Number of Elements does not Match",
  66. ((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House")).getElements().size() == 6 + i);
  67. }
  68. // controller.deleteElementInCategory("Building", "House", "B");
  69. // controller.deleteElementInCategory("Building", "House", "D");
  70. // controller.deleteElementInCategory("Building", "House", "F");
  71. // controller.deleteElementInCategory("Building", "House", "G");
  72. // controller.deleteElementInCategory("Building", "House", "H");
  73. // controller.deleteElementInCategory("Building", "House", "I");
  74. // controller.deleteElementInCategory("Building", "House", "Z");
  75. // controller.deleteElementInCategory("Building", "House", "TV");
  76. // assertTrue("Element:B was Found",
  77. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "B") == null);
  78. // assertTrue("Element:D was Found",
  79. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "D") == null);
  80. // assertTrue("Element:F was Found",
  81. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "F") == null);
  82. // assertTrue("Element:G was Found",
  83. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "G") == null);
  84. // assertTrue("Element:H was Found",
  85. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "H") == null);
  86. // assertTrue("Element:I was Found",
  87. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "I") == null);
  88. // assertTrue("Element:Z was Found",
  89. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "Z") == null);
  90. // assertTrue("Element:TV was Found",
  91. // mp.searchEle((HolonObject) mp.searchCatObj(mp.searchCat("Building"), "House"), "TV") == null);
  92. }
  93. /**
  94. * Tests for Adding and Deleting Objects on the Canvas.
  95. */
  96. @Test
  97. public void testAddingAndDeletingInCanvas() {
  98. for (int i = 0; i < 100; i++) {
  99. cvs.addNewObject(new HolonObject(mp.searchCatObj(mp.searchCat("Building"), "House")));
  100. }
  101. // for (AbstractCpsObject cps : model.getObjectsOnCanvas()) {
  102. // for (int i = 0; i < 27; i++) {
  103. // controller.addNewElementIntoCanvasObject(cps.getId(), adapter.generate(i), 1, -100);
  104. // assertTrue("Element:" + adapter.generate(i) + " was not Created",
  105. // mp.searchEle((HolonObject) mp.searchByID(cps.getId()), adapter.generate(i)) != null);
  106. // }
  107. // assertTrue("Element:B was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "B") != null);
  108. // assertTrue("Element:D was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "D") != null);
  109. // assertTrue("Element:F was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "F") != null);
  110. // assertTrue("Element:G was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "G") != null);
  111. // assertTrue("Element:H was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "H") != null);
  112. // assertTrue("Element:I was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "I") != null);
  113. // assertTrue("Element:B was not Found", mp.searchEle((HolonObject) mp.searchByID(cps.getId()), "B") != null);
  114. // }
  115. for (AbstractCanvasObject cps : model.getObjectsOnCanvas()) {
  116. int size = model.getSelectedCpsObjects().size();
  117. controller.addSelectedObjectToSelection(cps);
  118. assertTrue("Size does not Match", model.getSelectedCpsObjects().size() == size + 1);
  119. }
  120. for (AbstractCanvasObject cps : model.getObjectsOnCanvas()) {
  121. System.out.println(model.getSelectedCpsObjects().size());
  122. int size = model.getSelectedCpsObjects().size();
  123. controller.removeSelectedObjectFromSelection(cps);
  124. assertTrue("Size does not Match", model.getSelectedCpsObjects().size() == size - 1);
  125. assertTrue("Object was not unselected", !model.getSelectedCpsObjects().contains(cps));
  126. }
  127. }
  128. }