summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorStefan Suhren <stefan.suhren001@stud.fh-dortmund.de>2018-01-11 14:21:59 +0100
committerStefan Suhren <stefan.suhren001@stud.fh-dortmund.de>2018-01-11 14:21:59 +0100
commit5dbaceec303b67f7c8e4f64b7eb132abded9518f (patch)
tree401a289c49b1b2e73291852d20ed7840f78cafde /src
downloadLager-master.tar.gz
Lager-master.zip
Initial commitHEADmaster
Diffstat (limited to 'src')
-rw-r--r--src/main/java/Lager.java40
-rw-r--r--src/main/java/LagerGUI.java125
-rw-r--r--src/test/java/LagerTest.java215
3 files changed, 380 insertions, 0 deletions
diff --git a/src/main/java/Lager.java b/src/main/java/Lager.java
new file mode 100644
index 0000000..7661f40
--- /dev/null
+++ b/src/main/java/Lager.java
@@ -0,0 +1,40 @@
+public class Lager
+{
+ public boolean Einlieferung(String strHolzart, int iLaenge, int iAnzahl,
+ String strAuftragsnummer)
+ {
+
+ if (strHolzart.equals("Eiche") || strHolzart.equals("Buche")
+ || strHolzart.equals("Kiefer") || strHolzart.equals("Esche"))
+ {
+ }
+ else
+ {
+ return false;
+ }
+
+ if (iLaenge <= 0 || iLaenge > 500)
+ {
+ return false;
+ }
+
+ if (iAnzahl <= 0 || iAnzahl >= 10000)
+ {
+ return false;
+ }
+
+ if ('H' != strAuftragsnummer.charAt(0))
+ {
+ return false;
+ }
+
+ String sub = strAuftragsnummer.substring(1);
+
+ int i = Integer.parseInt(sub);
+
+ if (i < 1 || i > 9999)
+ return false;
+
+ return true;
+ }
+}
diff --git a/src/main/java/LagerGUI.java b/src/main/java/LagerGUI.java
new file mode 100644
index 0000000..cbf774d
--- /dev/null
+++ b/src/main/java/LagerGUI.java
@@ -0,0 +1,125 @@
+/*
+ * Generated with JinBean Java GUI Builder v0.9.7
+ * 2006-05-01 09:34:48
+ *
+ * Copyright (c) 2005 Jens Becker
+ * <a href="mailto:jb@intermitto.net">jb@intermitto.net</a>
+ *
+ * See <a href="http://jinbean.intermitto.net/">http://jinbean.intermitto.net</a>
+ * for license and details.
+ */
+
+import java.awt.*;
+import javax.swing.*;
+import java.awt.event.*;
+
+/**
+ * Place JavaDoc information for this class here.
+ */
+public class LagerGUI extends JFrame implements ActionListener
+{
+ // attributes
+ private JButton jButton3;
+ private JTextField jTextField5;
+ private JLabel jLabel7;
+ private JTextField jTextField9;
+ private JLabel jLabel11;
+ private JTextField jTextField13;
+ private JLabel jLabel15;
+ private JTextField jTextField17;
+ private JLabel jLabel19;
+
+ /**
+ * Default Constructor. Sets frame preferences and initializes the GUI.
+ */
+ public LagerGUI() {
+ // init contentPane and components
+ this.initGUI();
+
+ // frame properties
+ this.setVisible(true);
+ }
+
+ /**
+ * Create graphical components and display them.
+ */
+ private void initGUI() {
+ // components
+ jButton3 = new JButton("Einliefern");
+ jTextField5 = new JTextField();
+ jLabel7 = new JLabel("Auftragsnummer");
+ jTextField9 = new JTextField();
+ jLabel11 = new JLabel("Anzahl");
+ jTextField13 = new JTextField();
+ jLabel15 = new JLabel("Länge");
+ jTextField17 = new JTextField();
+ jLabel19 = new JLabel("Holzart");
+
+ // Properties and methods
+ this.setSize(new Dimension(306, 266));
+ this.getContentPane().add(jButton3);
+ this.getContentPane().add(jTextField5);
+ this.getContentPane().add(jLabel7);
+ this.getContentPane().add(jTextField9);
+ this.getContentPane().add(jLabel11);
+ this.getContentPane().add(jTextField13);
+ this.getContentPane().add(jLabel15);
+ this.getContentPane().add(jTextField17);
+ this.getContentPane().add(jLabel19);
+ this.getContentPane().setLayout(null);
+ this.getContentPane().setName(null);
+ this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
+ this.setMinimumSize(new Dimension(7, 27));
+ this.setName("LagerGUI");
+ this.setPreferredSize(new Dimension(306, 266));
+ this.setResizable(false);
+ this.setTitle("LagerGUI");
+ jButton3.setBounds(new Rectangle(90, 190, 100, 20));
+ jTextField5.setBounds(new Rectangle(130, 150, 80, 20));
+ jLabel7.setBounds(new Rectangle(30, 150, 90, 20));
+ jTextField9.setBounds(new Rectangle(130, 110, 80, 20));
+ jLabel11.setBounds(new Rectangle(30, 110, 90, 20));
+ jTextField13.setBounds(new Rectangle(130, 70, 80, 20));
+ jLabel15.setBounds(new Rectangle(30, 70, 90, 20));
+ jTextField17.setBounds(new Rectangle(130, 30, 80, 20));
+ jLabel19.setBounds(new Rectangle(30, 30, 80, 20));
+
+ // ActionListener
+ jButton3.addActionListener(this);
+
+ }
+
+ /**
+ * The entry point of this class when starting the class directly.
+ *
+ * @param arguments String[] command line arguments
+ */
+ public static void main(String[] arguments) {
+ new LagerGUI();
+ }
+
+ /**
+ * This operation is called when an ActionEvent occurs.
+ *
+ * @param event ActionEvent
+ */
+ public void actionPerformed(ActionEvent event)
+ {
+ boolean ret;
+ System.out.println(""+event);
+ Lager meinLager = new Lager();
+ ret = meinLager.Einlieferung(jTextField17.getText(),
+ Integer.parseInt(jTextField13.getText()),
+ Integer.parseInt(jTextField9.getText()),
+ jTextField5.getText());
+ if(ret==true)
+ {
+ jTextField17.setText("");
+ jTextField13.setText("");
+ jTextField9.setText("");
+ jTextField5.setText("");
+ }
+
+ // to get source component: event.getSource()
+ }
+}
diff --git a/src/test/java/LagerTest.java b/src/test/java/LagerTest.java
new file mode 100644
index 0000000..a56d94a
--- /dev/null
+++ b/src/test/java/LagerTest.java
@@ -0,0 +1,215 @@
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Test;
+
+/**
+ * Tests the Lager class.
+ *
+ * @author Stefan Suhren
+ */
+public class LagerTest
+{
+
+ private static final String goodHolzart = "Eiche";
+
+ private static final int goodAnzahl = 5000;
+
+ private static final int goodLaenge = 250;
+
+ private static final String goodAuftragsnummer = "H5000";
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check if null values are caught.
+ */
+ @Test
+ public void testEinlieferungArgumentsNull()
+ {
+ Lager testClass = new Lager();
+
+ assertFalse(testClass.Einlieferung(null, goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ null));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for incorrect Holzart.
+ */
+ @Test
+ public void testEinlieferungWrongHolzart()
+ {
+ Lager testClass = new Lager();
+
+ assertFalse(testClass.Einlieferung("Esche", goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ assertFalse(testClass.Einlieferung("Kastanie", goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for correct Holzart.
+ */
+ @Test
+ public void testEinlieferungCorrectHolzart()
+ {
+ Lager testClass = new Lager();
+
+ assertTrue(testClass.Einlieferung("Eiche", goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ assertTrue(testClass.Einlieferung("Buche", goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ assertTrue(testClass.Einlieferung("Kiefer", goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for incorrect Auftragsnummer.
+ */
+ @Test
+ public void testEinlieferungWrongAuftragsnummer()
+ {
+ Lager testClass = new Lager();
+
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "h123sjdf"));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H123sjdf"));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "j67df"));
+ assertFalse(
+ testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl, "h"));
+ assertFalse(
+ testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl, "j"));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "498293"));
+
+ // Test number formats
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H-1"));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H-1000"));
+
+ // Test boundaries for Auftragsnummer
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H0"));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H0000"));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H10000"));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for correct Auftragsnummer.
+ */
+ @Test
+ public void testEinlieferungCorrectAuftragsnummer()
+ {
+ Lager testClass = new Lager();
+
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H1212"));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H2323"));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H124"));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H0124"));
+
+ // Test boundaries for Auftragsnummer
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H1"));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H0001"));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ "H9999"));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for incorrect boundaries on Laenge.
+ */
+ @Test
+ public void testEinlieferungWrongBoundariesLaenge()
+ {
+ Lager testClass = new Lager();
+
+ assertFalse(testClass.Einlieferung(goodHolzart, 99, goodAnzahl,
+ goodAuftragsnummer));
+ assertFalse(testClass.Einlieferung(goodHolzart, 501, goodAnzahl,
+ goodAuftragsnummer));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for correct boundaries on Laenge.
+ */
+ @Test
+ public void testEinlieferungCorrectBoundariesAndValuesLaenge()
+ {
+ Lager testClass = new Lager();
+
+ assertTrue(testClass.Einlieferung(goodHolzart, 100, goodAnzahl,
+ goodAuftragsnummer));
+ assertTrue(testClass.Einlieferung(goodHolzart, 500, goodAnzahl,
+ goodAuftragsnummer));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for incorrect boundaries on Anzahl.
+ */
+ @Test
+ public void testEinlieferungWrongBoundariesAnzahl()
+ {
+ Lager testClass = new Lager();
+
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, 0,
+ goodAuftragsnummer));
+ assertFalse(testClass.Einlieferung(goodHolzart, goodLaenge, 10000,
+ goodAuftragsnummer));
+ }
+
+ /**
+ * Test method for
+ * {@link Lager#Einlieferung(java.lang.String, int, int, java.lang.String)}.
+ *
+ * Check for correct boundaries on Anzahl.
+ */
+ @Test
+ public void testEinlieferungCorrectBoundariesAndValuesAnzahl()
+ {
+ Lager testClass = new Lager();
+
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, 1,
+ goodAuftragsnummer));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, 9999,
+ goodAuftragsnummer));
+ assertTrue(testClass.Einlieferung(goodHolzart, goodLaenge, goodAnzahl,
+ goodAuftragsnummer));
+ }
+
+}