From c9486d352c0795b42e88e7ce6e2c82275f8a5e69 Mon Sep 17 00:00:00 2001
From: "Dr. Martin Goik" <goik@hdm-stuttgart.de>
Date: Wed, 1 Jan 2020 21:42:36 +0100
Subject: [PATCH] Re-ordering + package-info

---
 ...StringHelper.java => _1_StringHelper.java} |  4 +-
 .../{MathHelper.java => _2_MathHelper.java}   |  2 +-
 .../{ArrayHelper.java => _3_ArrayHelper.java} |  2 +-
 .../mi/sd1/aufgabe1/package-info.java         | 15 ++++
 .../mi/sd1/aufgabe2/Artikel.java              |  2 +-
 .../mi/sd1/aufgabe2/package-info.java         | 15 ++++
 .../mi/sd1/test/ShowReachedPoints.java        | 14 ++--
 .../test/aufgabe1/Test_1_StringHelper.java    | 83 +++++++++++++++++++
 .../sd1/test/aufgabe1/Test_2_MathHelper.java  | 51 ++++++++++++
 .../sd1/test/aufgabe1/Test_3_ArrayHelper.java | 59 +++++++++++++
 .../sd1/test/aufgabe1/Test_ArrayHelper.java   | 59 -------------
 .../mi/sd1/test/aufgabe1/Test_MathHelper.java | 51 ------------
 .../sd1/test/aufgabe1/Test_StringHelper.java  | 83 -------------------
 .../mi/sd1/test/helper/ReflectClass.java      |  4 +-
 .../sd1/test/helper/ReflectConstructor.java   | 14 ++--
 .../mi/sd1/test/helper/ReflectMethod.java     |  2 +-
 .../mi/sd1/test/helper/ReflectionHelper.java  |  3 +-
 ...StringHelper.java => _1_StringHelper.java} |  2 +-
 .../{MathHelper.java => _2_MathHelper.java}   |  2 +-
 .../{ArrayHelper.java => _3_ArrayHelper.java} |  2 +-
 .../mi/sd1/aufgabe1/package-info.java         | 15 ++++
 .../mi/sd1/aufgabe2/package-info.java         | 15 ++++
 .../test/aufgabe1/Test_1_StringHelper.java    | 83 +++++++++++++++++++
 .../sd1/test/aufgabe1/Test_2_MathHelper.java  | 51 ++++++++++++
 .../sd1/test/aufgabe1/Test_3_ArrayHelper.java | 59 +++++++++++++
 .../sd1/test/aufgabe1/Test_ArrayHelper.java   | 59 -------------
 .../mi/sd1/test/aufgabe1/Test_MathHelper.java | 51 ------------
 .../sd1/test/aufgabe1/Test_StringHelper.java  | 83 -------------------
 28 files changed, 471 insertions(+), 414 deletions(-)
 rename Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/{StringHelper.java => _1_StringHelper.java} (98%)
 rename Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/{MathHelper.java => _2_MathHelper.java} (98%)
 rename Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/{ArrayHelper.java => _3_ArrayHelper.java} (98%)
 create mode 100644 Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java
 create mode 100644 Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java
 create mode 100644 Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java
 create mode 100644 Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java
 create mode 100644 Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java
 delete mode 100644 Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java
 delete mode 100644 Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java
 delete mode 100644 Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java
 rename Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/{StringHelper.java => _1_StringHelper.java} (98%)
 rename Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/{MathHelper.java => _2_MathHelper.java} (98%)
 rename Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/{ArrayHelper.java => _3_ArrayHelper.java} (98%)
 create mode 100644 Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java
 create mode 100644 Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java
 create mode 100644 Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java
 create mode 100644 Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java
 create mode 100644 Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java
 delete mode 100644 Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java
 delete mode 100644 Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java
 delete mode 100644 Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java

diff --git a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/StringHelper.java b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_StringHelper.java
similarity index 98%
rename from Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/StringHelper.java
rename to Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_StringHelper.java
index 73f3b740c..63e66f6f0 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/StringHelper.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_StringHelper.java
@@ -3,7 +3,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe1;
 /**
  * Hilfsmethode für String Operationen.
  */
-public class StringHelper {
+public class _1_StringHelper {
 
   /**
    * <p>Berechne den Stundenlohn gemäß den nachfolgenden Regeln in der angegebenen Reihenfolge:</p>
@@ -50,4 +50,4 @@ public class StringHelper {
   static public boolean hatMindestlaenge(final String s, final int mindestlaenge) {
     return false; // TODO: Implementiere mich!
   }
-}
\ No newline at end of file
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/MathHelper.java b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_2_MathHelper.java
similarity index 98%
rename from Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/MathHelper.java
rename to Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_2_MathHelper.java
index 458b45de9..b20b0063e 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/MathHelper.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_2_MathHelper.java
@@ -4,7 +4,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe1;
 /**
  * Spezielle Berechnungsmethoden.
  */
-public class MathHelper {
+public class _2_MathHelper {
 
   /**
    * <p>Die Summe aller ungeraden Werte zweier Argumente. Gerade Werte werden
diff --git a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/ArrayHelper.java b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_3_ArrayHelper.java
similarity index 98%
rename from Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/ArrayHelper.java
rename to Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_3_ArrayHelper.java
index 9b503d828..c474ad396 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/ArrayHelper.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_3_ArrayHelper.java
@@ -5,7 +5,7 @@ import java.util.Arrays;
 /**
  * Hilfsmethoden für Arrays.
  */
-public class ArrayHelper {
+public class _3_ArrayHelper {
 
   /**
    * <p>Enthält ein Array ganzzahliger Werte mindestens einen mehrfach auftretenden Wert? Beispiele:</p>
diff --git a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java
new file mode 100644
index 000000000..47b67d7f7
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Dieser Aufgabenteil enthält im Wesentlichen statische Methoden, deren Implementierung noch korrigiert werden muss.
+ *
+ * <p>Hinweise:</p>
+ *
+ * <ul>
+ *     <li><code>mvn javadoc:javadoc</code> entweder in der Shell oder über die IDE ausführen.</li>
+ *
+ *     <li>Korrespondierende Unit Tests sowie die Klasse <code>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</code>
+ *         aus dem Test Zweig des Projekts ausführen.</li>
+ *
+ * </ul>
+ *
+ */
+package de.hdm_stuttgart.mi.sd1.aufgabe1;
diff --git a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Artikel.java b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Artikel.java
index 719f4eb32..5a1684a2d 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Artikel.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/Artikel.java
@@ -5,4 +5,4 @@ package de.hdm_stuttgart.mi.sd1.aufgabe2;
  */
 public class Artikel {
   // TODO: Implementiere mich gemäß Aufgabenbeschreibung!
-}
\ No newline at end of file
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java
new file mode 100644
index 000000000..6ac909302
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Exam/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Weitere gemäß Dokumentation zu implementierende Skelettklassen.
+ *
+ * <p>Hinweise:</p>
+ *
+ * <ul>
+ *     <li><code>mvn javadoc:javadoc</code> entweder in der Shell oder über die IDE ausführen.</li>
+ *
+ *     <li>Korrespondierende Unit Tests sowie die Klasse <code>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</code>
+ *         aus dem Test Zweig des Projekts ausführen.</li>
+ *
+ * </ul>
+ *
+ */
+package de.hdm_stuttgart.mi.sd1.aufgabe2;
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ShowReachedPoints.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ShowReachedPoints.java
index 354714e4d..bc68013ab 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ShowReachedPoints.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ShowReachedPoints.java
@@ -1,9 +1,9 @@
 package de.hdm_stuttgart.mi.sd1.test;
 
 import de.hdm_stuttgart.mi.exam.unitmarking.RunTests;
-import de.hdm_stuttgart.mi.sd1.test.aufgabe1.Test_ArrayHelper;
-import de.hdm_stuttgart.mi.sd1.test.aufgabe1.Test_MathHelper;
-import de.hdm_stuttgart.mi.sd1.test.aufgabe1.Test_StringHelper;
+import de.hdm_stuttgart.mi.sd1.test.aufgabe1.Test_3_ArrayHelper;
+import de.hdm_stuttgart.mi.sd1.test.aufgabe1.Test_2_MathHelper;
+import de.hdm_stuttgart.mi.sd1.test.aufgabe1.Test_1_StringHelper;
 import de.hdm_stuttgart.mi.sd1.test.aufgabe2.Test_Artikel;
 
 public class ShowReachedPoints {
@@ -16,11 +16,11 @@ public class ShowReachedPoints {
   public static void main(String[] args) {
     RunTests.exec(
       "Aufgabe 1"
-            , Test_StringHelper.class
-            , Test_MathHelper.class
-            , Test_ArrayHelper.class
+            , Test_1_StringHelper.class
+            , Test_2_MathHelper.class
+            , Test_3_ArrayHelper.class
       );
 
     RunTests.exec("Aufgabe 2", Test_Artikel.class);
   }
-}
\ No newline at end of file
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java
new file mode 100644
index 000000000..ef7133717
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java
@@ -0,0 +1,83 @@
+package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
+import de.hdm_stuttgart.mi.sd1.aufgabe1._1_StringHelper;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@SuppressWarnings({"UnusedDeclaration"})
+public class Test_1_StringHelper extends ExaminationTestDefaults {
+
+  @Test @Marking(points = 4) public void test_050_testMindestlaengeNull() {
+    try {
+      Assert.assertTrue(_1_StringHelper.hatMindestlaenge(null, 0));
+      for (int i = 1; i <= 100; i++) {
+        Assert.assertFalse(_1_StringHelper.hatMindestlaenge(null, i));
+      }
+    } catch (final NullPointerException e) {
+      Assert.fail("Ein null String darf nicht zu einer NullPointerException führen");
+    }
+
+  }
+
+  @Test @Marking(points = 5) public void test_060_mindestLaenge() {
+
+    final String[] tests = {"", "Eva", "Anton", "Mal sehen!", "Und noch ein wenig länger als alle Anderen!!"};
+
+    for (final String s: tests) {
+      for (int i = 0; i <= s.length(); i++) {
+        Assert.assertTrue(_1_StringHelper.hatMindestlaenge(s, i));
+      }
+      for (int i = 1 + s.length(); i < s.length() + 300; i++) {
+        Assert.assertFalse(_1_StringHelper.hatMindestlaenge(s, i));
+      }
+    }
+  }
+
+  @Test public void test_100_stundenlohn_null() {
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, false, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, true, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, false, true));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, true, true));
+  }
+
+  @Test public void test_120_stundenlohn_invalid() {
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Do.", false, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Sa", true, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Monday", false, true));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Phantasie", true, true));
+  }
+
+  @Test public void test_130_stundenlohn_standard() {
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Montag", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Dienstag", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Mittwoch", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Donnerstag", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Freitag", false, false));
+    Assert.assertEquals(20, _1_StringHelper.berechneStundenlohn("Samstag", false, false));
+    Assert.assertEquals(20, _1_StringHelper.berechneStundenlohn("Sonntag", false, false));
+  }
+
+  @Test public void test_140_stundenlohn_Feiertag_Tagschicht() {
+    Assert.assertEquals(25, _1_StringHelper.berechneStundenlohn("Montag", false, true));
+    Assert.assertEquals(25, _1_StringHelper.berechneStundenlohn("Sonntag", false, true));
+
+    Assert.assertEquals(25 + 10, _1_StringHelper.berechneStundenlohn("Montag", true, true));
+    Assert.assertEquals(25 + 10, _1_StringHelper.berechneStundenlohn("Sonntag", true, true));
+  }
+
+  @Test public void test_140_stundenlohn_normal_Nachtschicht() {
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Montag", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Dienstag", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Mittwoch", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Donnerstag", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Freitag", true, false));
+    Assert.assertEquals(2 * 20, _1_StringHelper.berechneStundenlohn("Samstag", true, false));
+    Assert.assertEquals(2 * 20, _1_StringHelper.berechneStundenlohn("Sonntag", true, false));
+  }
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java
new file mode 100644
index 000000000..373fa742a
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java
@@ -0,0 +1,51 @@
+package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
+import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
+import de.hdm_stuttgart.mi.sd1.aufgabe1._2_MathHelper;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@SuppressWarnings({"UnusedDeclaration"})
+public class Test_2_MathHelper extends ExaminationTestDefaults {
+
+  /**
+   * Zwei gerade Werte.
+   */
+  @Test @Marking(points = 4) public void test_100_nullUngeradeWerte() {
+    Assert.assertEquals(0, _2_MathHelper.summeUngeraderWerte(224, -418));
+    Assert.assertEquals(0, _2_MathHelper.summeUngeraderWerte(-418, 224));
+  }
+  /**
+   * Gerade und ungerade gemischt.
+   */
+  @Test @Marking(points = 4) public void test_110_einUngeraderWert() {
+    Assert.assertEquals(-419, _2_MathHelper.summeUngeraderWerte(224, -419));
+    Assert.assertEquals(-3, _2_MathHelper.summeUngeraderWerte(-3, 224));
+  }
+  /**
+   * Zwei ungerade Werte.
+   */
+  @Test @Marking(points = 4) public void test_120_zweiUngeradeWerte() {
+    Assert.assertEquals(-14, _2_MathHelper.summeUngeraderWerte(-17, 3));
+    Assert.assertEquals(-4, _2_MathHelper.summeUngeraderWerte(3, -7));
+  }
+
+  @Test @Marking(points = 3) public void test_200_testHarmonisch() {
+    Assert.assertEquals(1.,                 _2_MathHelper.harmonisch(1),    1.E-14);
+  }
+  @Test @Marking(points = 3) public void test_210_testHarmonisch() {
+    Assert.assertEquals(1.5,                _2_MathHelper.harmonisch(2),    1.E-14);
+    Assert.assertEquals(1.8333333333333333, _2_MathHelper.harmonisch(3),    1.E-14);
+
+    Assert.assertEquals(2.9289682539682538, _2_MathHelper.harmonisch(10),   1.E-14);
+    Assert.assertEquals(3.597739657143682,  _2_MathHelper.harmonisch(20),   1.E-14);
+    Assert.assertEquals(4.499205338329425,  _2_MathHelper.harmonisch(50),   1.E-14);
+  }
+  @Test public void test_220_testHarmonisch() {
+    Assert.assertEquals(10.480728217229327, _2_MathHelper.harmonisch(20000),1.E-12);
+  }
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java
new file mode 100644
index 000000000..d84fe2847
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java
@@ -0,0 +1,59 @@
+package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
+import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
+import de.hdm_stuttgart.mi.sd1.aufgabe1._3_ArrayHelper;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@SuppressWarnings({"UnusedDeclaration"})
+public class Test_3_ArrayHelper extends ExaminationTestDefaults {
+
+  // Teste int[] Parameter
+  @Test public void test_380_testNull() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate((int[]) null));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
+  }
+  @Test public void test_400_testKeinDuplikat_0() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{0}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
+  }
+  @Test @Marking(points = 3) public void test_410_testKeinDuplikat_1() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{1}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 1}));
+  }
+  @Test @Marking(points = 2) public void test_420_testKeinDuplikat_2() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{-1, 2}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 4}));
+  }
+
+  @Test @Marking(points = 2) public void test_430_testKeinDuplikat_6() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{-1, 2, 5, 9, -30, 0}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{2, 4, 3, 0, 1, 2}));
+  }
+  @Test @Marking(points = 2) public void test_440_testNull() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate((int[]) null));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{0, 0}));
+  }
+
+  // Teste Object[] parameter
+  @Test @Marking(points = 2) public void test_500_string_testNull() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate((String[]) null));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new String[]{
+            new String("ab"), "ab"}));
+  }
+
+  @Test @Marking(points = 2) public void test_520_string_testNullEnthalten() {
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new String[]{
+        new String("ab"), null, "ab"}));
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new String[]{null, null, null}));
+  }
+
+  @Test @Marking(points = 2) public void test_530_string_testHeterogen() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new Object[]{"test", new StringBuffer("test")}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new Object[]{new String("test"), new String("test")}));
+  }
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java
deleted file mode 100644
index c11b3f4dd..000000000
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
-import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
-import de.hdm_stuttgart.mi.sd1.aufgabe1.ArrayHelper;
-import org.junit.Assert;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.junit.runners.MethodSorters;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@SuppressWarnings({"UnusedDeclaration"})
-public class Test_ArrayHelper extends ExaminationTestDefaults {
-
-  // Teste int[] Parameter
-  @Test public void test_380_testNull() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate((int[]) null));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
-  }
-  @Test public void test_400_testKeinDuplikat_0() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{0}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
-  }
-  @Test @Marking(points = 3) public void test_410_testKeinDuplikat_1() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{1}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 1}));
-  }
-  @Test @Marking(points = 2) public void test_420_testKeinDuplikat_2() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{-1, 2}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 4}));
-  }
-
-  @Test @Marking(points = 2) public void test_430_testKeinDuplikat_6() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{-1, 2, 5, 9, -30, 0}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{2, 4, 3, 0, 1, 2}));
-  }
-  @Test @Marking(points = 2) public void test_440_testNull() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate((int[]) null));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{0, 0}));
-  }
-
-  // Teste Object[] parameter
-  @Test @Marking(points = 2) public void test_500_string_testNull() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate((String[]) null));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new String[]{
-            new String("ab"), "ab"}));
-  }
-
-  @Test @Marking(points = 2) public void test_520_string_testNullEnthalten() {
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new String[]{
-        new String("ab"), null, "ab"}));
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new String[]{null, null, null}));
-  }
-
-  @Test @Marking(points = 2) public void test_530_string_testHeterogen() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new Object[]{"test", new StringBuffer("test")}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new Object[]{new String("test"), new String("test")}));
-  }
-}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java
deleted file mode 100644
index efc34778c..000000000
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
-import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
-import de.hdm_stuttgart.mi.sd1.aufgabe1.MathHelper;
-import org.junit.Assert;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.junit.runners.MethodSorters;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@SuppressWarnings({"UnusedDeclaration"})
-public class Test_MathHelper extends ExaminationTestDefaults {
-
-  /**
-   * Zwei gerade Werte.
-   */
-  @Test @Marking(points = 4) public void test_100_nullUngeradeWerte() {
-    Assert.assertEquals(0, MathHelper.summeUngeraderWerte(224, -418));
-    Assert.assertEquals(0, MathHelper.summeUngeraderWerte(-418, 224));
-  }
-  /**
-   * Gerade und ungerade gemischt.
-   */
-  @Test @Marking(points = 4) public void test_110_einUngeraderWert() {
-    Assert.assertEquals(-419, MathHelper.summeUngeraderWerte(224, -419));
-    Assert.assertEquals(-3, MathHelper.summeUngeraderWerte(-3, 224));
-  }
-  /**
-   * Zwei ungerade Werte.
-   */
-  @Test @Marking(points = 4) public void test_120_zweiUngeradeWerte() {
-    Assert.assertEquals(-14, MathHelper.summeUngeraderWerte(-17, 3));
-    Assert.assertEquals(-4, MathHelper.summeUngeraderWerte(3, -7));
-  }
-
-  @Test @Marking(points = 3) public void test_200_testHarmonisch() {
-    Assert.assertEquals(1.,                 MathHelper.harmonisch(1),    1.E-14);
-  }
-  @Test @Marking(points = 3) public void test_210_testHarmonisch() {
-    Assert.assertEquals(1.5,                MathHelper.harmonisch(2),    1.E-14);
-    Assert.assertEquals(1.8333333333333333, MathHelper.harmonisch(3),    1.E-14);
-
-    Assert.assertEquals(2.9289682539682538, MathHelper.harmonisch(10),   1.E-14);
-    Assert.assertEquals(3.597739657143682,  MathHelper.harmonisch(20),   1.E-14);
-    Assert.assertEquals(4.499205338329425,  MathHelper.harmonisch(50),   1.E-14);
-  }
-  @Test public void test_220_testHarmonisch() {
-    Assert.assertEquals(10.480728217229327, MathHelper.harmonisch(20000),1.E-12);
-  }
-}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java
deleted file mode 100644
index 6a273ddbe..000000000
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
-import de.hdm_stuttgart.mi.sd1.aufgabe1.StringHelper;
-import org.junit.Assert;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.junit.runners.MethodSorters;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@SuppressWarnings({"UnusedDeclaration"})
-public class Test_StringHelper extends ExaminationTestDefaults {
-
-  @Test @Marking(points = 4) public void test_050_testMindestlaengeNull() {
-    try {
-      Assert.assertTrue(StringHelper.hatMindestlaenge(null, 0));
-      for (int i = 1; i <= 100; i++) {
-        Assert.assertFalse(StringHelper.hatMindestlaenge(null, i));
-      }
-    } catch (final NullPointerException e) {
-      Assert.fail("Ein null String darf nicht zu einer NullPointerException führen");
-    }
-
-  }
-
-  @Test @Marking(points = 5) public void test_060_mindestLaenge() {
-
-    final String[] tests = {"", "Eva", "Anton", "Mal sehen!", "Und noch ein wenig länger als alle Anderen!!"};
-
-    for (final String s: tests) {
-      for (int i = 0; i <= s.length(); i++) {
-        Assert.assertTrue(StringHelper.hatMindestlaenge(s, i));
-      }
-      for (int i = 1 + s.length(); i < s.length() + 300; i++) {
-        Assert.assertFalse(StringHelper.hatMindestlaenge(s, i));
-      }
-    }
-  }
-
-  @Test public void test_100_stundenlohn_null() {
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, false, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, true, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, false, true));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, true, true));
-  }
-
-  @Test public void test_120_stundenlohn_invalid() {
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Do.", false, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Sa", true, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Monday", false, true));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Phantasie", true, true));
-  }
-
-  @Test public void test_130_stundenlohn_standard() {
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Montag", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Dienstag", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Mittwoch", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Donnerstag", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Freitag", false, false));
-    Assert.assertEquals(20, StringHelper.berechneStundenlohn("Samstag", false, false));
-    Assert.assertEquals(20, StringHelper.berechneStundenlohn("Sonntag", false, false));
-  }
-
-  @Test public void test_140_stundenlohn_Feiertag_Tagschicht() {
-    Assert.assertEquals(25, StringHelper.berechneStundenlohn("Montag", false, true));
-    Assert.assertEquals(25, StringHelper.berechneStundenlohn("Sonntag", false, true));
-
-    Assert.assertEquals(25 + 10, StringHelper.berechneStundenlohn("Montag", true, true));
-    Assert.assertEquals(25 + 10, StringHelper.berechneStundenlohn("Sonntag", true, true));
-  }
-
-  @Test public void test_140_stundenlohn_normal_Nachtschicht() {
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Montag", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Dienstag", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Mittwoch", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Donnerstag", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Freitag", true, false));
-    Assert.assertEquals(2 * 20, StringHelper.berechneStundenlohn("Samstag", true, false));
-    Assert.assertEquals(2 * 20, StringHelper.berechneStundenlohn("Sonntag", true, false));
-  }
-}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectClass.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectClass.java
index 4d0cd1532..b30b8e432 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectClass.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectClass.java
@@ -121,7 +121,5 @@ public class ReflectClass<T> {
       default:
         return "Unknown modifier value " + modifier;
     }
-
   }
-
-}
\ No newline at end of file
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectConstructor.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectConstructor.java
index cd5e3bdca..e7361b661 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectConstructor.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectConstructor.java
@@ -9,17 +9,17 @@ public class ReflectConstructor<T> {
 		Constructor<?> constructorTmp = null;
 		String tmpMsg = null;
 		if (null == reflectClass.classZ) {
-			tmpMsg = "Folgefehler: Klasse '" + reflectClass.className + "' nicht definiert"; 
+			tmpMsg = "Folgefehler: Klasse '" + reflectClass.className + "' nicht definiert";
 		} else {
-		try {
-			constructorTmp = reflectClass.classZ.getConstructor(argumentMeta);
-		} catch (final NoSuchMethodException | SecurityException e) {
-			tmpMsg = "Kein Konstruktor '" +
+			try {
+				constructorTmp = reflectClass.classZ.getConstructor(argumentMeta);
+			} catch (final NoSuchMethodException | SecurityException e) {
+				tmpMsg = "Kein Konstruktor '" +
 						reflectClass.classZ.getSimpleName() + "(" +
 						ReflectClass.formatArguments(argumentMeta) +
-						")' in Klasse '" + 
+						")' in Klasse '" +
 						reflectClass.className + "' gefunden";
-		}
+			}
 		}
 		constructor = (Constructor<T>) constructorTmp;
 		msg = tmpMsg;
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectMethod.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectMethod.java
index 79e7e1e2c..ed4cc3b39 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectMethod.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectMethod.java
@@ -121,4 +121,4 @@ public class ReflectMethod<T> {
       return null;
     }
   }
-}
\ No newline at end of file
+}
diff --git a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectionHelper.java b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectionHelper.java
index 45a138ea1..b435f2d8c 100644
--- a/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectionHelper.java
+++ b/Klausuren/Sd1/2018summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/helper/ReflectionHelper.java
@@ -22,5 +22,4 @@ public class ReflectionHelper {
 	public final ReflectClass<Artikel> artikel_Klasse;
 	public final ReflectConstructor<Artikel> artikel_new_Bez_id_preis;
 	public final ReflectMethod artikel_toString, artikel_equals;
-
-}
\ No newline at end of file
+}
diff --git a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/StringHelper.java b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_StringHelper.java
similarity index 98%
rename from Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/StringHelper.java
rename to Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_StringHelper.java
index 63a3d09ac..ee291627f 100644
--- a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/StringHelper.java
+++ b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_1_StringHelper.java
@@ -3,7 +3,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe1;
 /**
  * Hilfsmethode für String Operationen.
  */
-public class StringHelper {
+public class _1_StringHelper {
 
   /**
    * <p>Berechne den Stundenlohn gemäß den nachfolgenden Regeln in der angegebenen Reihenfolge:</p>
diff --git a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/MathHelper.java b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_2_MathHelper.java
similarity index 98%
rename from Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/MathHelper.java
rename to Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_2_MathHelper.java
index c384dbcf2..34d89d244 100644
--- a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/MathHelper.java
+++ b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_2_MathHelper.java
@@ -4,7 +4,7 @@ package de.hdm_stuttgart.mi.sd1.aufgabe1;
 /**
  * Spezielle Berechnungsmethoden.
  */
-public class MathHelper {
+public class _2_MathHelper {
 
   static private int wertFallsUngerade(int wert) {
     if (0 == wert % 2) {
diff --git a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/ArrayHelper.java b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_3_ArrayHelper.java
similarity index 98%
rename from Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/ArrayHelper.java
rename to Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_3_ArrayHelper.java
index 0abe68f14..209f21706 100644
--- a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/ArrayHelper.java
+++ b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/_3_ArrayHelper.java
@@ -5,7 +5,7 @@ import java.util.Arrays;
 /**
  * Hilfsmethoden für Arrays.
  */
-public class ArrayHelper {
+public class _3_ArrayHelper {
 
   /**
    * <p>Enthält ein Array ganzzahliger Werte mindestens einen mehrfach auftretenden Wert? Beispiele:</p>
diff --git a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java
new file mode 100644
index 000000000..e0285e2ab
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe1/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Dieser Aufgabenteil enthält im Wesentlichen statische Methoden, deren Implementierung noch korrigiert werden muss.
+ *
+ * <p>Hinweise:</p>
+ *
+ * <ul>
+ *     <li><code>mvn javadoc:javadoc</code> entweder in der Shell oder über die IDE ausführen.</li>
+ *
+ *     <li>Korrespondierende Unit Tests sowie die Klasse <code>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</code>
+ *         aus dem Test Zweig des Projekts ausführen.</li>
+ *
+ * </ul>
+ *
+ */
+package de.hdm_stuttgart.mi.sd1.aufgabe1;
\ No newline at end of file
diff --git a/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java
new file mode 100644
index 000000000..a7e5ca8d5
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Solve/src/main/java/de/hdm_stuttgart/mi/sd1/aufgabe2/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Weitere gemäß Dokumentation zu implementierende Skelettklassen.
+ *
+ * <p>Hinweise:</p>
+ *
+ * <ul>
+ *     <li><code>mvn javadoc:javadoc</code> entweder in der Shell oder über die IDE ausführen.</li>
+ *
+ *     <li>Korrespondierende Unit Tests sowie die Klasse <code>de.hdm_stuttgart.mi.sd1.test.ShowReachedPoints</code>
+ *         aus dem Test Zweig des Projekts ausführen.</li>
+ *
+ * </ul>
+ *
+ */
+package de.hdm_stuttgart.mi.sd1.aufgabe2;
\ No newline at end of file
diff --git a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java
new file mode 100644
index 000000000..ef7133717
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_1_StringHelper.java
@@ -0,0 +1,83 @@
+package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
+import de.hdm_stuttgart.mi.sd1.aufgabe1._1_StringHelper;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@SuppressWarnings({"UnusedDeclaration"})
+public class Test_1_StringHelper extends ExaminationTestDefaults {
+
+  @Test @Marking(points = 4) public void test_050_testMindestlaengeNull() {
+    try {
+      Assert.assertTrue(_1_StringHelper.hatMindestlaenge(null, 0));
+      for (int i = 1; i <= 100; i++) {
+        Assert.assertFalse(_1_StringHelper.hatMindestlaenge(null, i));
+      }
+    } catch (final NullPointerException e) {
+      Assert.fail("Ein null String darf nicht zu einer NullPointerException führen");
+    }
+
+  }
+
+  @Test @Marking(points = 5) public void test_060_mindestLaenge() {
+
+    final String[] tests = {"", "Eva", "Anton", "Mal sehen!", "Und noch ein wenig länger als alle Anderen!!"};
+
+    for (final String s: tests) {
+      for (int i = 0; i <= s.length(); i++) {
+        Assert.assertTrue(_1_StringHelper.hatMindestlaenge(s, i));
+      }
+      for (int i = 1 + s.length(); i < s.length() + 300; i++) {
+        Assert.assertFalse(_1_StringHelper.hatMindestlaenge(s, i));
+      }
+    }
+  }
+
+  @Test public void test_100_stundenlohn_null() {
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, false, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, true, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, false, true));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn(null, true, true));
+  }
+
+  @Test public void test_120_stundenlohn_invalid() {
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Do.", false, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Sa", true, false));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Monday", false, true));
+    Assert.assertEquals(-1, _1_StringHelper.berechneStundenlohn("Phantasie", true, true));
+  }
+
+  @Test public void test_130_stundenlohn_standard() {
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Montag", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Dienstag", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Mittwoch", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Donnerstag", false, false));
+    Assert.assertEquals(15, _1_StringHelper.berechneStundenlohn("Freitag", false, false));
+    Assert.assertEquals(20, _1_StringHelper.berechneStundenlohn("Samstag", false, false));
+    Assert.assertEquals(20, _1_StringHelper.berechneStundenlohn("Sonntag", false, false));
+  }
+
+  @Test public void test_140_stundenlohn_Feiertag_Tagschicht() {
+    Assert.assertEquals(25, _1_StringHelper.berechneStundenlohn("Montag", false, true));
+    Assert.assertEquals(25, _1_StringHelper.berechneStundenlohn("Sonntag", false, true));
+
+    Assert.assertEquals(25 + 10, _1_StringHelper.berechneStundenlohn("Montag", true, true));
+    Assert.assertEquals(25 + 10, _1_StringHelper.berechneStundenlohn("Sonntag", true, true));
+  }
+
+  @Test public void test_140_stundenlohn_normal_Nachtschicht() {
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Montag", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Dienstag", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Mittwoch", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Donnerstag", true, false));
+    Assert.assertEquals(2 * 15, _1_StringHelper.berechneStundenlohn("Freitag", true, false));
+    Assert.assertEquals(2 * 20, _1_StringHelper.berechneStundenlohn("Samstag", true, false));
+    Assert.assertEquals(2 * 20, _1_StringHelper.berechneStundenlohn("Sonntag", true, false));
+  }
+}
diff --git a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java
new file mode 100644
index 000000000..373fa742a
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_2_MathHelper.java
@@ -0,0 +1,51 @@
+package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
+import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
+import de.hdm_stuttgart.mi.sd1.aufgabe1._2_MathHelper;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@SuppressWarnings({"UnusedDeclaration"})
+public class Test_2_MathHelper extends ExaminationTestDefaults {
+
+  /**
+   * Zwei gerade Werte.
+   */
+  @Test @Marking(points = 4) public void test_100_nullUngeradeWerte() {
+    Assert.assertEquals(0, _2_MathHelper.summeUngeraderWerte(224, -418));
+    Assert.assertEquals(0, _2_MathHelper.summeUngeraderWerte(-418, 224));
+  }
+  /**
+   * Gerade und ungerade gemischt.
+   */
+  @Test @Marking(points = 4) public void test_110_einUngeraderWert() {
+    Assert.assertEquals(-419, _2_MathHelper.summeUngeraderWerte(224, -419));
+    Assert.assertEquals(-3, _2_MathHelper.summeUngeraderWerte(-3, 224));
+  }
+  /**
+   * Zwei ungerade Werte.
+   */
+  @Test @Marking(points = 4) public void test_120_zweiUngeradeWerte() {
+    Assert.assertEquals(-14, _2_MathHelper.summeUngeraderWerte(-17, 3));
+    Assert.assertEquals(-4, _2_MathHelper.summeUngeraderWerte(3, -7));
+  }
+
+  @Test @Marking(points = 3) public void test_200_testHarmonisch() {
+    Assert.assertEquals(1.,                 _2_MathHelper.harmonisch(1),    1.E-14);
+  }
+  @Test @Marking(points = 3) public void test_210_testHarmonisch() {
+    Assert.assertEquals(1.5,                _2_MathHelper.harmonisch(2),    1.E-14);
+    Assert.assertEquals(1.8333333333333333, _2_MathHelper.harmonisch(3),    1.E-14);
+
+    Assert.assertEquals(2.9289682539682538, _2_MathHelper.harmonisch(10),   1.E-14);
+    Assert.assertEquals(3.597739657143682,  _2_MathHelper.harmonisch(20),   1.E-14);
+    Assert.assertEquals(4.499205338329425,  _2_MathHelper.harmonisch(50),   1.E-14);
+  }
+  @Test public void test_220_testHarmonisch() {
+    Assert.assertEquals(10.480728217229327, _2_MathHelper.harmonisch(20000),1.E-12);
+  }
+}
diff --git a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java
new file mode 100644
index 000000000..d84fe2847
--- /dev/null
+++ b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_3_ArrayHelper.java
@@ -0,0 +1,59 @@
+package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
+
+import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
+import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
+import de.hdm_stuttgart.mi.sd1.aufgabe1._3_ArrayHelper;
+import org.junit.Assert;
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+@SuppressWarnings({"UnusedDeclaration"})
+public class Test_3_ArrayHelper extends ExaminationTestDefaults {
+
+  // Teste int[] Parameter
+  @Test public void test_380_testNull() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate((int[]) null));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
+  }
+  @Test public void test_400_testKeinDuplikat_0() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{0}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
+  }
+  @Test @Marking(points = 3) public void test_410_testKeinDuplikat_1() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{1}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 1}));
+  }
+  @Test @Marking(points = 2) public void test_420_testKeinDuplikat_2() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{-1, 2}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 4}));
+  }
+
+  @Test @Marking(points = 2) public void test_430_testKeinDuplikat_6() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new int[]{-1, 2, 5, 9, -30, 0}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{2, 4, 3, 0, 1, 2}));
+  }
+  @Test @Marking(points = 2) public void test_440_testNull() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate((int[]) null));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new int[]{0, 0}));
+  }
+
+  // Teste Object[] parameter
+  @Test @Marking(points = 2) public void test_500_string_testNull() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate((String[]) null));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new String[]{
+            new String("ab"), "ab"}));
+  }
+
+  @Test @Marking(points = 2) public void test_520_string_testNullEnthalten() {
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new String[]{
+        new String("ab"), null, "ab"}));
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new String[]{null, null, null}));
+  }
+
+  @Test @Marking(points = 2) public void test_530_string_testHeterogen() {
+    Assert.assertFalse(_3_ArrayHelper.enthaeltDuplikate(new Object[]{"test", new StringBuffer("test")}));
+    Assert.assertTrue(_3_ArrayHelper.enthaeltDuplikate(new Object[]{new String("test"), new String("test")}));
+  }
+}
diff --git a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java
deleted file mode 100644
index c11b3f4dd..000000000
--- a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_ArrayHelper.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
-import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
-import de.hdm_stuttgart.mi.sd1.aufgabe1.ArrayHelper;
-import org.junit.Assert;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.junit.runners.MethodSorters;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@SuppressWarnings({"UnusedDeclaration"})
-public class Test_ArrayHelper extends ExaminationTestDefaults {
-
-  // Teste int[] Parameter
-  @Test public void test_380_testNull() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate((int[]) null));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
-  }
-  @Test public void test_400_testKeinDuplikat_0() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{0}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 1}));
-  }
-  @Test @Marking(points = 3) public void test_410_testKeinDuplikat_1() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{1}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 1}));
-  }
-  @Test @Marking(points = 2) public void test_420_testKeinDuplikat_2() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{-1, 2}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{1, 4, 4}));
-  }
-
-  @Test @Marking(points = 2) public void test_430_testKeinDuplikat_6() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new int[]{-1, 2, 5, 9, -30, 0}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{2, 4, 3, 0, 1, 2}));
-  }
-  @Test @Marking(points = 2) public void test_440_testNull() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate((int[]) null));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new int[]{0, 0}));
-  }
-
-  // Teste Object[] parameter
-  @Test @Marking(points = 2) public void test_500_string_testNull() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate((String[]) null));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new String[]{
-            new String("ab"), "ab"}));
-  }
-
-  @Test @Marking(points = 2) public void test_520_string_testNullEnthalten() {
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new String[]{
-        new String("ab"), null, "ab"}));
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new String[]{null, null, null}));
-  }
-
-  @Test @Marking(points = 2) public void test_530_string_testHeterogen() {
-    Assert.assertFalse(ArrayHelper.enthaeltDuplikate(new Object[]{"test", new StringBuffer("test")}));
-    Assert.assertTrue(ArrayHelper.enthaeltDuplikate(new Object[]{new String("test"), new String("test")}));
-  }
-}
diff --git a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java
deleted file mode 100644
index efc34778c..000000000
--- a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_MathHelper.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
-import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
-import de.hdm_stuttgart.mi.sd1.aufgabe1.MathHelper;
-import org.junit.Assert;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.junit.runners.MethodSorters;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@SuppressWarnings({"UnusedDeclaration"})
-public class Test_MathHelper extends ExaminationTestDefaults {
-
-  /**
-   * Zwei gerade Werte.
-   */
-  @Test @Marking(points = 4) public void test_100_nullUngeradeWerte() {
-    Assert.assertEquals(0, MathHelper.summeUngeraderWerte(224, -418));
-    Assert.assertEquals(0, MathHelper.summeUngeraderWerte(-418, 224));
-  }
-  /**
-   * Gerade und ungerade gemischt.
-   */
-  @Test @Marking(points = 4) public void test_110_einUngeraderWert() {
-    Assert.assertEquals(-419, MathHelper.summeUngeraderWerte(224, -419));
-    Assert.assertEquals(-3, MathHelper.summeUngeraderWerte(-3, 224));
-  }
-  /**
-   * Zwei ungerade Werte.
-   */
-  @Test @Marking(points = 4) public void test_120_zweiUngeradeWerte() {
-    Assert.assertEquals(-14, MathHelper.summeUngeraderWerte(-17, 3));
-    Assert.assertEquals(-4, MathHelper.summeUngeraderWerte(3, -7));
-  }
-
-  @Test @Marking(points = 3) public void test_200_testHarmonisch() {
-    Assert.assertEquals(1.,                 MathHelper.harmonisch(1),    1.E-14);
-  }
-  @Test @Marking(points = 3) public void test_210_testHarmonisch() {
-    Assert.assertEquals(1.5,                MathHelper.harmonisch(2),    1.E-14);
-    Assert.assertEquals(1.8333333333333333, MathHelper.harmonisch(3),    1.E-14);
-
-    Assert.assertEquals(2.9289682539682538, MathHelper.harmonisch(10),   1.E-14);
-    Assert.assertEquals(3.597739657143682,  MathHelper.harmonisch(20),   1.E-14);
-    Assert.assertEquals(4.499205338329425,  MathHelper.harmonisch(50),   1.E-14);
-  }
-  @Test public void test_220_testHarmonisch() {
-    Assert.assertEquals(10.480728217229327, MathHelper.harmonisch(20000),1.E-12);
-  }
-}
diff --git a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java b/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java
deleted file mode 100644
index 6a273ddbe..000000000
--- a/Klausuren/Sd1/2018summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/aufgabe1/Test_StringHelper.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package de.hdm_stuttgart.mi.sd1.test.aufgabe1;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.Marking;
-import de.hdm_stuttgart.mi.sd1.aufgabe1.StringHelper;
-import org.junit.Assert;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.junit.runners.MethodSorters;
-
-import de.hdm_stuttgart.mi.exam.unitmarking.ExaminationTestDefaults;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@SuppressWarnings({"UnusedDeclaration"})
-public class Test_StringHelper extends ExaminationTestDefaults {
-
-  @Test @Marking(points = 4) public void test_050_testMindestlaengeNull() {
-    try {
-      Assert.assertTrue(StringHelper.hatMindestlaenge(null, 0));
-      for (int i = 1; i <= 100; i++) {
-        Assert.assertFalse(StringHelper.hatMindestlaenge(null, i));
-      }
-    } catch (final NullPointerException e) {
-      Assert.fail("Ein null String darf nicht zu einer NullPointerException führen");
-    }
-
-  }
-
-  @Test @Marking(points = 5) public void test_060_mindestLaenge() {
-
-    final String[] tests = {"", "Eva", "Anton", "Mal sehen!", "Und noch ein wenig länger als alle Anderen!!"};
-
-    for (final String s: tests) {
-      for (int i = 0; i <= s.length(); i++) {
-        Assert.assertTrue(StringHelper.hatMindestlaenge(s, i));
-      }
-      for (int i = 1 + s.length(); i < s.length() + 300; i++) {
-        Assert.assertFalse(StringHelper.hatMindestlaenge(s, i));
-      }
-    }
-  }
-
-  @Test public void test_100_stundenlohn_null() {
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, false, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, true, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, false, true));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn(null, true, true));
-  }
-
-  @Test public void test_120_stundenlohn_invalid() {
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Do.", false, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Sa", true, false));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Monday", false, true));
-    Assert.assertEquals(-1, StringHelper.berechneStundenlohn("Phantasie", true, true));
-  }
-
-  @Test public void test_130_stundenlohn_standard() {
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Montag", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Dienstag", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Mittwoch", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Donnerstag", false, false));
-    Assert.assertEquals(15, StringHelper.berechneStundenlohn("Freitag", false, false));
-    Assert.assertEquals(20, StringHelper.berechneStundenlohn("Samstag", false, false));
-    Assert.assertEquals(20, StringHelper.berechneStundenlohn("Sonntag", false, false));
-  }
-
-  @Test public void test_140_stundenlohn_Feiertag_Tagschicht() {
-    Assert.assertEquals(25, StringHelper.berechneStundenlohn("Montag", false, true));
-    Assert.assertEquals(25, StringHelper.berechneStundenlohn("Sonntag", false, true));
-
-    Assert.assertEquals(25 + 10, StringHelper.berechneStundenlohn("Montag", true, true));
-    Assert.assertEquals(25 + 10, StringHelper.berechneStundenlohn("Sonntag", true, true));
-  }
-
-  @Test public void test_140_stundenlohn_normal_Nachtschicht() {
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Montag", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Dienstag", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Mittwoch", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Donnerstag", true, false));
-    Assert.assertEquals(2 * 15, StringHelper.berechneStundenlohn("Freitag", true, false));
-    Assert.assertEquals(2 * 20, StringHelper.berechneStundenlohn("Samstag", true, false));
-    Assert.assertEquals(2 * 20, StringHelper.berechneStundenlohn("Sonntag", true, false));
-  }
-}
-- 
GitLab