From 32e22a1b48bf42e371e202229a0c4bd7b1fd99b1 Mon Sep 17 00:00:00 2001 From: nikow Date: Sat, 7 Jan 2023 17:36:12 +0100 Subject: [PATCH] Factory roboterBauen() User bringt das Programm durch flasche eingaben zum einsturz. --- Roboterfabrik/src/ui/Factory.java | 33 ++++++++++++++++----------- Roboterfabrik/src/ui/FactoryTest.java | 10 +++++--- 2 files changed, 27 insertions(+), 16 deletions(-) diff --git a/Roboterfabrik/src/ui/Factory.java b/Roboterfabrik/src/ui/Factory.java index fd86cde..1fd6159 100644 --- a/Roboterfabrik/src/ui/Factory.java +++ b/Roboterfabrik/src/ui/Factory.java @@ -2,6 +2,9 @@ package ui; import java.util.ArrayList; import java.util.Scanner; + +import javax.management.loading.PrivateClassLoader; + import facade.Factorysystem; import tpe.exceptions.roboter.exceptions.RobotException; @@ -20,7 +23,6 @@ public class Factory { System.out.println(); System.out.println("========"); System.out.println("Factory Hauptmenü"); - System.out.println("0 -> Alle Roboter anzeigen"); System.out.println("1 -> Roboter bauen"); System.out.println("2 -> Roboter auswählen"); System.out.println("9 -> Beenden"); @@ -31,9 +33,6 @@ public class Factory { System.out.println(); switch (input) { - case 0: - roboterAnzeigen(); - break; case 1: roboterBauen(); break; @@ -50,17 +49,25 @@ public class Factory { } - private void roboterAnzeigen() { - - } - private void roboterBauen() { - System.out.println("Welchen Robotertyp möchten Sie haben?(R2D2(1) oder C3PO (2)"); - int auswahl = Integer.parseInt(sc.nextLine()); - + int auswahl; + String name; + while(true) { + try { + System.out.println("Welchen Robotertyp möchten Sie haben?(R2D2(1) oder C3PO (2)"); + auswahl = Integer.parseInt(sc.nextLine()); + if (auswahl == 1 || auswahl == 2) break; + } catch(Exception e) { + System.out.println("Bitte 1 oder 2 eingeben"); + } + } + + while(true) { System.out.println("Wie wollen Sie ihren Roboter nennen?"); - String name = sc.nextLine(); - + name = sc.nextLine(); + if (!name.isBlank())break; + } + int seriennummer = factorysystem.roboterAnlegen(name, auswahl); System.out.println(name + " mit der Seriennummer: " + seriennummer + " wurde erstellt."); diff --git a/Roboterfabrik/src/ui/FactoryTest.java b/Roboterfabrik/src/ui/FactoryTest.java index 9077316..f5fe07e 100644 --- a/Roboterfabrik/src/ui/FactoryTest.java +++ b/Roboterfabrik/src/ui/FactoryTest.java @@ -13,11 +13,11 @@ class FactoryTest { private static Factorysystem fs; private static Factory factory; - @BeforeAll + /*@BeforeAll static void initFactory() throws RobotException { //Factorysystem fs = new Factorysystem ("Robot Fabrik"); //Factory factory = new Factory(fs); - } + }*/ /*@Test void smoketest() { assertNull(fs); @@ -25,8 +25,12 @@ class FactoryTest { }*/ @Test - static void alleRoboterAnzeigenTest() { + static void hauptmenüTest() throws RobotException{ + Factorysystem fs = new Factorysystem ("Robot Fabrik"); + Factory ui = new Factory (fs); + + } }