PraktikumHolonsTestClasses.java 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. package tests;
  2. import classes.*;
  3. import classes.IdCounter.CounterType;
  4. import utility.Vector2Int;
  5. import org.junit.Test;
  6. import java.util.ArrayList;
  7. import static org.junit.Assert.assertTrue;
  8. /**
  9. * Test for the Classes.
  10. *
  11. * @author Gruppe14
  12. */
  13. public class PraktikumHolonsTestClasses {
  14. /**
  15. * Test for the Categories.
  16. */
  17. @Test
  18. public void testCategory() {
  19. Category test1 = new Category("Test1");
  20. Category test2 = new Category("Test2");
  21. HolonObject obj1 = new HolonObject("Test Object");
  22. ArrayList<AbstractCanvasObject> arr = new ArrayList<>();
  23. assertTrue("Name not correct", test1.getName().equals("Test1"));
  24. assertTrue("Name not correct", test2.getName().equals("Test2"));
  25. assertTrue("Name should not be the same", !test1.getName().equals(test2.getName()));
  26. assertTrue("Should be empty", test1.getObjects().size() == 0);
  27. test1.getObjects().add(obj1);
  28. assertTrue("Should not be empty", test1.getObjects().size() == 1);
  29. assertTrue("Should be empty", test2.getObjects().size() == 0);
  30. test1.setObjects(arr);
  31. assertTrue("Should be empty", test1.getObjects().size() == 0);
  32. arr.add(obj1);
  33. test2.setObjects(arr);
  34. arr = new ArrayList<>();
  35. assertTrue("Shoud be empty", arr.isEmpty());
  36. arr = test2.getObjects();
  37. assertTrue("Shoud not be empty", !arr.isEmpty());
  38. }
  39. /**
  40. * Test for HolonObject.
  41. */
  42. @Test
  43. public void testHolonObject() {
  44. HolonObject test1 = new HolonObject("Test1");
  45. HolonObject test2 = new HolonObject("Test2");
  46. HolonObject test3 = new HolonObject(test1);
  47. HolonElement ele = new HolonElement(test1, "Element", 1, 10, IdCounter.nextId(CounterType.Element));
  48. ArrayList<HolonElement> arr = new ArrayList<>();
  49. assertTrue("Should be Empty", test1.getElements().isEmpty());
  50. test1.setElements(arr);
  51. assertTrue("Should be Empty", test1.getElements().isEmpty());
  52. arr.add(ele);
  53. arr.add(ele);
  54. assertTrue("Should be Empty", test2.getElements().isEmpty());
  55. test2.setElements(arr);
  56. assertTrue("Should not be Empty", !test2.getElements().isEmpty());
  57. assertTrue("Current Energy not corrent", test2.getEnergyAtTimeStep(20) == 20);
  58. String str = test2.toStringElements();
  59. assertTrue("String not corrent", str.equals("Element, Element"));
  60. test2.deleteElement(0);
  61. test2.addElement(ele);
  62. assertTrue("Should be Empty", test3.getElements().isEmpty());
  63. test3.setElements(test2.copyElements(test2.getElements()));
  64. assertTrue("Element not Found", test3.searchElement("Element") != null);
  65. test1.setElements(new ArrayList<>());
  66. }
  67. /**
  68. * Test for HolonSwitch.
  69. */
  70. // @Test
  71. // public void testHolonSwitch() {
  72. // HolonSwitch test1 = new HolonSwitch("Test1");
  73. // HolonSwitch test2 = new HolonSwitch(test1);
  74. //
  75. // assertTrue("Manuel Mode is on", !test2.getManualMode());
  76. // test2.switchState();
  77. // assertTrue(test2.isWorking());
  78. // assertTrue(test2.isWorking(1));
  79. // test2.setManualMode(true);
  80. // test2.switchState();
  81. // test2.switchState();
  82. // assertTrue(test2.isWorking());
  83. // assertTrue(test2.isWorking(1));
  84. // assertTrue("Manuel Mode is off", test2.getManualMode());
  85. // assertTrue("ManuelActive is off", test2.getActiveManual());
  86. // test2.switchState();
  87. // assertTrue("ManuelActive is on", !test2.getActiveManual());
  88. // test2.switchState();
  89. // assertTrue("ManuelActive is off", test2.getActiveManual());
  90. // assertTrue(test1.getGraphPoints() != test2.getGraphPoints());
  91. // test2.setGraphPoints(test1.getGraphPoints());
  92. // assertTrue(test1.getGraphPoints() == test2.getGraphPoints());
  93. // }
  94. /**
  95. * Test for CpsEdge.
  96. */
  97. @Test
  98. public void testCpsEdge() {
  99. Node node1 = new Node("Node1");
  100. Node node2 = new Node("Node2");
  101. Node node3 = new Node("Node3");
  102. Edge edge1 = new Edge(node1, node2, 100);
  103. Edge edge2 = new Edge(node2, node3);
  104. node1 = (Node) edge1.getB();
  105. node2 = (Node) edge2.getA();
  106. assertTrue("Not Same", node1 == node2);
  107. edge2.setTags(new ArrayList<>());
  108. edge1.setTags(new ArrayList<>());
  109. assertTrue("Tags not Empty", edge2.getTags().isEmpty());
  110. edge2.addTag(1);
  111. assertTrue("Tags not Empty", edge1.getTags().isEmpty());
  112. assertTrue("Tags Empty", !edge2.getTags().isEmpty());
  113. edge1.setTags(edge2.getTags());
  114. assertTrue("Tags Empty", !edge1.getTags().isEmpty());
  115. }
  116. /**
  117. * Test for HolonElement.
  118. */
  119. @Test
  120. public void testHolonElement() {
  121. HolonElement ele1 = new HolonElement(null, "TV", 2, -20f, IdCounter.nextId(CounterType.Element));
  122. HolonElement ele2 = new HolonElement(null, "Fridge", 1, -50f, IdCounter.nextId(CounterType.Element));
  123. assertTrue("Array not empty", ele1.getEnergyAtTimeStep(0) == -40);
  124. assertTrue("Array not empty", ele1.getEnergyAtTimeStep(2) == -40);
  125. assertTrue("Name not correct", ele1.getEleName().equals("TV"));
  126. ele1.setEleName(ele2.getEleName());
  127. assertTrue("Name not correct", ele1.getEleName().equals("Fridge"));
  128. assertTrue("Amount not correct", ele2.getAmount() == 1);
  129. ele2.setAmount(5);
  130. assertTrue("Amount not correct", ele2.getAmount() == 5);
  131. assertTrue("Total Energy not Correct", ele2.getMaximumEnergy() == ele2.getAmount() * ele2.getEnergyPerElement());
  132. }
  133. /**
  134. * Test for Position.
  135. */
  136. @Test
  137. public void testPosition() {
  138. Vector2Int pos1 = new Vector2Int(100, 200);
  139. Vector2Int pos2 = new Vector2Int();
  140. assertTrue("Wrong coordinates", pos1.getX() == 100 && pos1.getY() == 200);
  141. assertTrue("Are the Same", pos1.getX() != pos2.getX());
  142. assertTrue("not (-1,-1)", pos2.getX() == -1 && pos2.getY() == -1);
  143. }
  144. }