From acfa33e6c238694960d79226eef4963b9cf9164e Mon Sep 17 00:00:00 2001
From: jovanovk <kevin.jovanovic@reutlingen-university.de>
Date: Tue, 2 Jun 2020 11:17:37 +0200
Subject: [PATCH] Test etc added

---
 phonebook/.gitattributes                      |   6 +
 phonebook/.gitignore                          | 216 ++++++++++++++++++
 phonebook/bin/main/io/fp/phonebook/App.class  | Bin 1959 -> 0 bytes
 .../bin/main/io/fp/phonebook/PhoneBook.class  | Bin 3898 -> 0 bytes
 .../io/fp/phonebook/PhoneBookException.class  | Bin 442 -> 0 bytes
 .../test/io/fp/phonebook/PhoneBookTest.class  | Bin 5446 -> 0 bytes
 phonebook/build.gradle                        |  12 +-
 phonebook/gradle/wrapper/gradle-wrapper.jar   | Bin 55616 -> 58694 bytes
 .../gradle/wrapper/gradle-wrapper.properties  |   2 +-
 phonebook/gradlew                             |  29 +--
 phonebook/gradlew.bat                         |   3 +
 phonebook/settings.gradle                     |   4 +-
 .../java/io/fp/phonebook/PhoneBookTest.java   | 122 ----------
 .../src/test/java/io/fp/phonebook/test.keep   |   0
 14 files changed, 246 insertions(+), 148 deletions(-)
 create mode 100644 phonebook/.gitattributes
 create mode 100644 phonebook/.gitignore
 delete mode 100644 phonebook/bin/main/io/fp/phonebook/App.class
 delete mode 100644 phonebook/bin/main/io/fp/phonebook/PhoneBook.class
 delete mode 100644 phonebook/bin/main/io/fp/phonebook/PhoneBookException.class
 delete mode 100644 phonebook/bin/test/io/fp/phonebook/PhoneBookTest.class
 delete mode 100644 phonebook/src/test/java/io/fp/phonebook/PhoneBookTest.java
 create mode 100644 phonebook/src/test/java/io/fp/phonebook/test.keep

diff --git a/phonebook/.gitattributes b/phonebook/.gitattributes
new file mode 100644
index 0000000..00a51af
--- /dev/null
+++ b/phonebook/.gitattributes
@@ -0,0 +1,6 @@
+#
+# https://help.github.com/articles/dealing-with-line-endings/
+#
+# These are explicitly windows files and should use crlf
+*.bat           text eol=crlf
+
diff --git a/phonebook/.gitignore b/phonebook/.gitignore
new file mode 100644
index 0000000..f198ec5
--- /dev/null
+++ b/phonebook/.gitignore
@@ -0,0 +1,216 @@
+# Created by https://www.gitignore.io/api/java,gradle,eclipse,intellij,visualstudiocode
+# Edit at https://www.gitignore.io/?templates=java,gradle,eclipse,intellij,visualstudiocode
+
+### Eclipse ###
+.metadata
+bin/
+tmp/
+*.tmp
+*.bak
+*.swp
+*~.nib
+local.properties
+.settings/
+.loadpath
+.recommenders
+
+# External tool builders
+.externalToolBuilders/
+
+# Locally stored "Eclipse launch configurations"
+*.launch
+
+# PyDev specific (Python IDE for Eclipse)
+*.pydevproject
+
+# CDT-specific (C/C++ Development Tooling)
+.cproject
+
+# CDT- autotools
+.autotools
+
+# Java annotation processor (APT)
+.factorypath
+
+# PDT-specific (PHP Development Tools)
+.buildpath
+
+# sbteclipse plugin
+.target
+
+# Tern plugin
+.tern-project
+
+# TeXlipse plugin
+.texlipse
+
+# STS (Spring Tool Suite)
+.springBeans
+
+# Code Recommenders
+.recommenders/
+
+# Annotation Processing
+.apt_generated/
+
+# Scala IDE specific (Scala & Java development for Eclipse)
+.cache-main
+.scala_dependencies
+.worksheet
+
+### Eclipse Patch ###
+# Eclipse Core
+.project
+
+# JDT-specific (Eclipse Java Development Tools)
+.classpath
+
+# Annotation Processing
+.apt_generated
+
+.sts4-cache/
+
+### Intellij ###
+# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
+# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
+
+# User-specific stuff
+.idea/**/workspace.xml
+.idea/**/tasks.xml
+.idea/**/usage.statistics.xml
+.idea/**/dictionaries
+.idea/**/shelf
+
+# Generated files
+.idea/**/contentModel.xml
+
+# Sensitive or high-churn files
+.idea/**/dataSources/
+.idea/**/dataSources.ids
+.idea/**/dataSources.local.xml
+.idea/**/sqlDataSources.xml
+.idea/**/dynamic.xml
+.idea/**/uiDesigner.xml
+.idea/**/dbnavigator.xml
+
+# Gradle
+.idea/**/gradle.xml
+.idea/**/libraries
+
+# Gradle and Maven with auto-import
+# When using Gradle or Maven with auto-import, you should exclude module files,
+# since they will be recreated, and may cause churn.  Uncomment if using
+# auto-import.
+# .idea/modules.xml
+# .idea/*.iml
+# .idea/modules
+# *.iml
+# *.ipr
+
+# CMake
+cmake-build-*/
+
+# Mongo Explorer plugin
+.idea/**/mongoSettings.xml
+
+# File-based project format
+*.iws
+
+# IntelliJ
+out/
+
+# mpeltonen/sbt-idea plugin
+.idea_modules/
+
+# JIRA plugin
+atlassian-ide-plugin.xml
+
+# Cursive Clojure plugin
+.idea/replstate.xml
+
+# Crashlytics plugin (for Android Studio and IntelliJ)
+com_crashlytics_export_strings.xml
+crashlytics.properties
+crashlytics-build.properties
+fabric.properties
+
+# Editor-based Rest Client
+.idea/httpRequests
+
+# Android studio 3.1+ serialized cache file
+.idea/caches/build_file_checksums.ser
+
+### Intellij Patch ###
+# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
+
+# *.iml
+# modules.xml
+# .idea/misc.xml
+# *.ipr
+
+# Sonarlint plugin
+.idea/**/sonarlint/
+
+# SonarQube Plugin
+.idea/**/sonarIssues.xml
+
+# Markdown Navigator plugin
+.idea/**/markdown-navigator.xml
+.idea/**/markdown-navigator/
+
+### Java ###
+# Compiled class file
+*.class
+
+# Log file
+*.log
+
+# BlueJ files
+*.ctxt
+
+# Mobile Tools for Java (J2ME)
+.mtj.tmp/
+
+# Package Files #
+*.jar
+*.war
+*.nar
+*.ear
+*.zip
+*.tar.gz
+*.rar
+
+# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
+hs_err_pid*
+
+### VisualStudioCode ###
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+
+### VisualStudioCode Patch ###
+# Ignore all local history of files
+.history
+
+### Gradle ###
+.gradle
+build/
+
+# Ignore Gradle GUI config
+gradle-app.setting
+
+# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
+!gradle-wrapper.jar
+
+# Cache of project
+.gradletasknamecache
+
+# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898
+# gradle/wrapper/gradle-wrapper.properties
+
+### Gradle Patch ###
+**/build/
+
+# End of https://www.gitignore.io/api/java,gradle,eclipse,intellij,visualstudiocode
\ No newline at end of file
diff --git a/phonebook/bin/main/io/fp/phonebook/App.class b/phonebook/bin/main/io/fp/phonebook/App.class
deleted file mode 100644
index de2da0176f6859bc578771cb4631221f04a705d8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1959
zcmaJ?OLN;)7(Lf^BE?l`Z0FUcp=t{>soR*Q;nkFuIHVBBi#i0-@{;WvM~N+YWI5CP
z1bzuKtSAeo(^8mW!7!}&0SpT^%&=k40ytNa6DKKbbalUb@3}|keBY;^{(kf=fGIc{
zVgec4&27|k^-b52Mc3WV&D84}5(0f&){d2{T23XmT-=f+U!ePj?b!ZJf%w??nm}UK
zEz2b0=rPcRZh?~vwj-CCwW9P^tzuOQq!-+hRb8_@Tg{_j!r!zT0s{+Axq6zgHOqDc
z2FLC#98f6up6yho$JaEZ1Wp}2xuWRjNk54`^yugp&=>8}rfue>hCzYU0o1(X%Zl`p
z7{IWBQ#dW4?O4^OT;5Q(&X0Fo8||G|uxAX6;#q;-k|!-+&bp3oDOJYDIu1lUJE^xZ
z#@BS10?9?o^KHjmvHT>?<2el%=)wWLx%(wq_ifiP@O&U@onP)3c-Qu-XO(0RE@E86
z*dd1syA5B~3|vB%?zm0T8VFfYsg)3btZUOct_V!cG#eGGD9sh=HC)H6*}h5JYSJ?&
zCnwFOQ#L)>@T(M1MhnhF5;<Je@M4?nVPFH3xJDrZvQ^qQ@Dx>)doKwL9eivkSH5Xi
z%hJ>F3Uh49s>$nSk_q~nN~>#1`e_3<@VY=xMfxFUfs36N>}!173Wapbz#Et$xK*!9
zrz~)#^Kd)2j-8EoQM6h5rj%f2Hx#)(%o(_ix0v&alFGhlRp7#ZV>f-fnkz`3`80)j
zMe3a+T*6YD?##hM8U-g83@l=aDek-BqCo%H@gv-u!-{gITgM&dcH8!fY*;m4Hq3mp
zv`J(8uxj9au%tD9jVdFW)CLSWyPhx0i&j0r{7_-8AMv=&oLPR4?zHa;^U5)+e}4C*
z!F+Pe9cEm+HiOGQHt>m(a<D9`(wB1%Yh5;$H)cYsb$li;dKfRr(|yPQrD&j}a%A`b
zWjDXuVGTQr<yF{tGM&{KnJ*A4UKJQQ)|2)-3p<lwM~liT=!^TM%C+90La9*D<TP+=
zvfwtolDuuJPN=i5PN>AkIj}_8fq@v`*f{yrILmPq9J?;<L4Ob|C;3#%;DHl-8sP?x
zy_|iHXK<1c9u_}vA3;UtG5Xf`*mtw(O!pHEtjGJ@hZriXCsOhI!An;v{=0f<VI-SA
zn+W!#@aujk6NSX$eyF`md=rJfV0XRT!nv>ULYm_Q$H$mjPrtl}SF<5l3)fq?na=Z(
z?F_xy!rLvp8y;$5SwXxP&ay3#)d!43@w-txooV5tLo1&~EA6|i|G|4eiF8P8vfIX?
zB)yA4KD!vzaTz_h#poRhEGeu_X=|*ACQ|qkX?%qY9-<%L^LOzhhVV0n@eBVNzu`3g
zzzF`r8TvCSbp9IBI2+hxhE||VL_ilOuz?C$*hr9tP2aZ|&mi^>r!fuN8ZQ(Y&L_C3
J%B2`;{{je{@H+qi

diff --git a/phonebook/bin/main/io/fp/phonebook/PhoneBook.class b/phonebook/bin/main/io/fp/phonebook/PhoneBook.class
deleted file mode 100644
index e6b23d6e2d1991ad97666ad9f2a07a484d690d3c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 3898
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
bhbeY4g<o?og17J+{;HcIgWuxqMDu?D^Ym&T

diff --git a/phonebook/bin/main/io/fp/phonebook/PhoneBookException.class b/phonebook/bin/main/io/fp/phonebook/PhoneBookException.class
deleted file mode 100644
index 6a792f5fd24fd3c2853dd0181f1871ce266831cf..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 442
zcmah_Jx>Bb5Pfq3XATeqfy7Q@;YZ?G*g+^nO)wW@f?mIz>#=(5lKU|J0e_H{iG@GF
z-alhu98RMJh0V;ow{PCe?AzzdD}Y0EY*>U%W!#&YJDV6S$Hv^b7xU_ftCNR7&QfKx
zjRK*0EAE9G2_3q>4}^LmV<jSA#t93rhQ|atBUA@QC#le>FQQBqAMJx-?_>H-DD{+9
zX`j&A_Wle<X{>bE-SG*9fw`6rmatNRgEFD!DJ{>l=~%{>VjM|A!!rSo6g-&m4_Qbj
zDj{rn|DV$(*i)G#BFxPe)*v_|lf{8NRr7J3#Sht^_h19WdxGOSiYRfm8Ch87iak)~
tSYf8moW;4cyZ4OhQ?99TbaJ-Ay-m~^x4%_bMS~IRnP1DjT8u2TzW^&@Y4-pC

diff --git a/phonebook/bin/test/io/fp/phonebook/PhoneBookTest.class b/phonebook/bin/test/io/fp/phonebook/PhoneBookTest.class
deleted file mode 100644
index 2e78c5b0846fab5a3a0f567131f9b08b0e2984d5..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 5446
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

diff --git a/phonebook/build.gradle b/phonebook/build.gradle
index 037b0dc..214ea8e 100644
--- a/phonebook/build.gradle
+++ b/phonebook/build.gradle
@@ -3,14 +3,14 @@
  *
  * This generated file contains a sample Java project to get you started.
  * For more details take a look at the Java Quickstart chapter in the Gradle
- * User Manual available at https://docs.gradle.org/5.6.1/userguide/tutorial_java_projects.html
+ * User Manual available at https://docs.gradle.org/6.3/userguide/tutorial_java_projects.html
  */
 
 plugins {
     // Apply the java plugin to add support for Java
     id 'java'
 
-    // Apply the application plugin to add support for building a CLI application
+    // Apply the application plugin to add support for building a CLI application.
     id 'application'
 }
 
@@ -22,17 +22,17 @@ repositories {
 
 dependencies {
     // This dependency is used by the application.
-    implementation 'com.google.guava:guava:28.0-jre'
+    implementation 'com.google.guava:guava:28.2-jre'
 
     // Use JUnit Jupiter API for testing.
-    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.4.2'
+    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0'
 
     // Use JUnit Jupiter Engine for testing.
-    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.4.2'
+    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.6.0'
 }
 
 application {
-    // Define the main class for the application
+    // Define the main class for the application.
     mainClassName = 'io.fp.phonebook.App'
 }
 
diff --git a/phonebook/gradle/wrapper/gradle-wrapper.jar b/phonebook/gradle/wrapper/gradle-wrapper.jar
index 5c2d1cf016b3885f6930543d57b744ea8c220a1a..490fda8577df6c95960ba7077c43220e5bb2c0d9 100644
GIT binary patch
delta 22806
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
Z!$zsDgoO%|(a?lZ=Qe6kxv{^r{{!uYR<-~D

delta 19980
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
Z5H)%VJiSWIAOn$sbP+#;Q{V4m{s)AkOUM8K

diff --git a/phonebook/gradle/wrapper/gradle-wrapper.properties b/phonebook/gradle/wrapper/gradle-wrapper.properties
index 59b5f89..a4b4429 100644
--- a/phonebook/gradle/wrapper/gradle-wrapper.properties
+++ b/phonebook/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
diff --git a/phonebook/gradlew b/phonebook/gradlew
index 83f2acf..2fe81a7 100644
--- a/phonebook/gradlew
+++ b/phonebook/gradlew
@@ -154,19 +154,19 @@ if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
         else
             eval `echo args$i`="\"$arg\""
         fi
-        i=$((i+1))
+        i=`expr $i + 1`
     done
     case $i in
-        (0) set -- ;;
-        (1) set -- "$args0" ;;
-        (2) set -- "$args0" "$args1" ;;
-        (3) set -- "$args0" "$args1" "$args2" ;;
-        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
-        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
-        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
-        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
-        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
-        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+        0) set -- ;;
+        1) set -- "$args0" ;;
+        2) set -- "$args0" "$args1" ;;
+        3) set -- "$args0" "$args1" "$args2" ;;
+        4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+        8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+        9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
     esac
 fi
 
@@ -175,14 +175,9 @@ save () {
     for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
     echo " "
 }
-APP_ARGS=$(save "$@")
+APP_ARGS=`save "$@"`
 
 # Collect all arguments for the java command, following the shell quoting and substitution rules
 eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
 
-# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
-if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
-  cd "$(dirname "$0")"
-fi
-
 exec "$JAVACMD" "$@"
diff --git a/phonebook/gradlew.bat b/phonebook/gradlew.bat
index 9618d8d..62bd9b9 100644
--- a/phonebook/gradlew.bat
+++ b/phonebook/gradlew.bat
@@ -29,6 +29,9 @@ if "%DIRNAME%" == "" set DIRNAME=.
 set APP_BASE_NAME=%~n0
 set APP_HOME=%DIRNAME%
 
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
 @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
 set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
 
diff --git a/phonebook/settings.gradle b/phonebook/settings.gradle
index 3397444..43621cc 100644
--- a/phonebook/settings.gradle
+++ b/phonebook/settings.gradle
@@ -4,7 +4,7 @@
  * The settings file is used to specify which projects to include in your build.
  *
  * Detailed information about configuring a multi-project build in Gradle can be found
- * in the user manual at https://docs.gradle.org/5.6.1/userguide/multi_project_builds.html
+ * in the user manual at https://docs.gradle.org/6.3/userguide/multi_project_builds.html
  */
 
-rootProject.name = 'phonebook'
+rootProject.name = 'campus'
diff --git a/phonebook/src/test/java/io/fp/phonebook/PhoneBookTest.java b/phonebook/src/test/java/io/fp/phonebook/PhoneBookTest.java
deleted file mode 100644
index 2f3bf03..0000000
--- a/phonebook/src/test/java/io/fp/phonebook/PhoneBookTest.java
+++ /dev/null
@@ -1,122 +0,0 @@
-package io.fp.phonebook;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
-
-import java.util.Map;
-import java.util.Set;
-
-
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
-public class PhoneBookTest {
-	PhoneBook phoneBook;
-	Integer[] numbers = { 1, 2, 3 };
-
-	@BeforeEach
-	public void setUp() {
-		phoneBook = new PhoneBook();
-	}
-
-	@Test
-	public void testCreateContactArray() {
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person", numbers);
-			for (int i = 0; i < numbers.length; i++) {
-				assertEquals(true, phoneBook.getPhoneNumbers("Person").contains(numbers[i]));
-			}
-			assertEquals(3, phoneBook.getPhoneNumbers("Person").size());
-
-		});
-	}
-
-	@Test
-	public void testCreateContactArrayTwoTimes() throws PhoneBookException {
-		assertThrows(PhoneBookException.class, () -> {
-		phoneBook.createContact("Person", numbers);
-		phoneBook.createContact("Person", numbers);
-		});
-	}
-
-	@Test
-	public void testCreateContactSingleNumber() { 
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person", 1);
-			assertEquals(true, phoneBook.getPhoneNumbers("Person").contains(1));
-			assertEquals(1, phoneBook.getPhoneNumbers("Person").size());
-
-		});
-	}
-	
-	@Test
-	public void testDeleteEntryByPhoneNumber() {
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person1", numbers);
-			phoneBook.createContact("Person2", 4);
-			String deletedPerson = phoneBook.deleteEntryByPhoneNumber(1);
-			assertEquals("Person1", deletedPerson);
-			assertEquals(true, phoneBook.getPhoneNumbers("Person1").contains(2));
-			assertEquals(true, phoneBook.getPhoneNumbers("Person1").contains(3));
-			assertEquals(true, phoneBook.getPhoneNumbers("Person2").contains(4));
-			assertEquals(2, phoneBook.getPhoneNumbers("Person1").size());
-			assertEquals(1, phoneBook.getPhoneNumbers("Person2").size());
-		});
-	}
-
-	@Test
-	public void testDeleteEntriesOfAPerson() {
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person1", numbers);
-			phoneBook.createContact("Person2", 4);
-			Set<Integer> deletedSet = phoneBook.deleteEntriesOfAPerson("Person1");
-
-			for (int i = 0; i < numbers.length; i++) {
-				assertEquals(true, deletedSet.contains(numbers[i]));
-			}
-			assertEquals(true, phoneBook.getPhoneNumbers("Person2").contains(4));
-			assertEquals(1, phoneBook.getPhoneNumbers("Person2").size());
-			assertEquals(0, phoneBook.getPhoneNumbers("Person1").size());
-		});
-	}
-
-	@Test
-	public void testDeleteEntriesOfAPersonUnknownPerson() {
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person1", numbers);
-			Set<Integer> deletedSet = phoneBook.deleteEntriesOfAPerson("Person2");
-			for (int i = 0; i < numbers.length; i++) {
-				assertEquals(true, phoneBook.getPhoneNumbers("Person1").contains(numbers[i]));
-			}
-			assertEquals(3, phoneBook.getPhoneNumbers("Person1").size());
-			assertEquals(0, deletedSet.size());
-		});
-	}
-
-	@Test
-	public void testDeleteEntryByPhoneNumberUnknownNumber() {
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person", numbers);
-			String deletedPerson = phoneBook.deleteEntryByPhoneNumber(4);
-			assertEquals(null, deletedPerson);
-			for (int i = 0; i < numbers.length; i++) {
-				assertEquals(true, phoneBook.getPhoneNumbers("Person").contains(numbers[i]));
-			}
-			assertEquals(3, phoneBook.getPhoneNumbers("Person").size());
-		});
-	}
-
-	@Test
-	public void testGetMap() {
-		assertDoesNotThrow(()-> {
-			phoneBook.createContact("Person", numbers);
-			Map<Integer, String> phoneBookMap = phoneBook.getBook();
-			assertEquals("Person", phoneBookMap.get(1));
-			assertEquals("Person", phoneBookMap.get(2));
-			assertEquals("Person", phoneBookMap.get(3));
-			assertEquals(3, phoneBookMap.size());
-		});
-	}
-
-}
diff --git a/phonebook/src/test/java/io/fp/phonebook/test.keep b/phonebook/src/test/java/io/fp/phonebook/test.keep
new file mode 100644
index 0000000..e69de29
-- 
GitLab