summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Weick <e1627760@student.tuwien.ac.at>2018-05-04 21:20:17 +0200
committerMartin Weick <e1627760@student.tuwien.ac.at>2018-05-04 21:20:17 +0200
commit378533de5be00afe20ece529c57c65d3cfc7df88 (patch)
treeec4ceb0652f40878b15504371cae71ba701ff337 /src
parent8a4b5e315274e779d2b640de054892281ad63ec3 (diff)
downloadsepm-groupproject-378533de5be00afe20ece529c57c65d3cfc7df88.tar.gz
sepm-groupproject-378533de5be00afe20ece529c57c65d3cfc7df88.tar.xz
sepm-groupproject-378533de5be00afe20ece529c57c65d3cfc7df88.zip
Implements GUI Tests for create new Vehicle
Diffstat (limited to 'src')
-rw-r--r--src/test/java/at/ac/tuwien/sepm/assignment/groupphase/vehicle/CreateNewVehicleControllerTest.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/vehicle/CreateNewVehicleControllerTest.java b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/vehicle/CreateNewVehicleControllerTest.java
index 8f35d3b..866ed74 100644
--- a/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/vehicle/CreateNewVehicleControllerTest.java
+++ b/src/test/java/at/ac/tuwien/sepm/assignment/groupphase/vehicle/CreateNewVehicleControllerTest.java
@@ -1,10 +1,22 @@
package at.ac.tuwien.sepm.assignment.groupphase.vehicle;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.when;
+
import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.service.VehicleService;
+import at.ac.tuwien.sepm.assignment.groupphase.exception.InvalidVehicleException;
+import at.ac.tuwien.sepm.assignment.groupphase.exception.ServiceException;
+import at.ac.tuwien.sepm.assignment.groupphase.util.Helper;
import at.ac.tuwien.sepm.assignment.groupphase.util.HighDpiAwareApplicationTest;
+import javafx.scene.control.DialogPane;
+import javafx.scene.input.MouseButton;
+import javafx.stage.Stage;
import org.junit.After;
+import org.junit.Assert;
import org.junit.Before;
+import org.junit.Test;
import org.testfx.api.FxToolkit;
+import org.testfx.robot.Motion;
public class CreateNewVehicleControllerTest extends HighDpiAwareApplicationTest {
@@ -22,4 +34,46 @@ public class CreateNewVehicleControllerTest extends HighDpiAwareApplicationTest
public void cleanup() throws Exception {
FxToolkit.cleanupStages();
}
+
+ @Test
+ public void testClickAddValidVehicle() throws ServiceException, InvalidVehicleException {
+
+ when(vehicleService.add(any())).thenReturn(1L);
+
+ clickOn("#btn_create", Motion.DIRECT, MouseButton.PRIMARY);
+
+ Stage alertDialog = Helper.getTopModalStage(robotContext());
+ Assert.assertNotNull(alertDialog);
+
+ DialogPane dialogPane = (DialogPane) alertDialog.getScene().getRoot();
+ Assert.assertEquals("Speichern Erfolgreich", dialogPane.getHeaderText());
+ }
+
+ @Test
+ public void testClickInvalidVehicleEx() throws ServiceException, InvalidVehicleException {
+
+ when(vehicleService.add(any())).thenThrow(InvalidVehicleException.class);
+
+ clickOn("#btn_create", Motion.DIRECT, MouseButton.PRIMARY);
+
+ Stage alertDialog = Helper.getTopModalStage(robotContext());
+ Assert.assertNotNull(alertDialog);
+
+ DialogPane dialogPane = (DialogPane) alertDialog.getScene().getRoot();
+ Assert.assertEquals("Ungültige Eingabe", dialogPane.getHeaderText());
+ }
+
+ @Test
+ public void testClickInvalidServiceEx() throws ServiceException, InvalidVehicleException {
+
+ when(vehicleService.add(any())).thenThrow(ServiceException.class);
+
+ clickOn("#btn_create", Motion.DIRECT, MouseButton.PRIMARY);
+
+ Stage alertDialog = Helper.getTopModalStage(robotContext());
+ Assert.assertNotNull(alertDialog);
+
+ DialogPane dialogPane = (DialogPane) alertDialog.getScene().getRoot();
+ Assert.assertEquals("Fehler", dialogPane.getHeaderText());
+ }
}