From 6d37b99c14f0d5d73f293842da147127a91797b6 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Mon, 1 Apr 2019 16:43:10 +0200 Subject: [PATCH] ADD:: RemoveFriend method and tests in Server.UserService --- .../greenify/server/service/UserService.java | 20 ++++++++++++++++-- .../server/service/UserServiceTest.java | 21 +++++++++++++++---- 2 files changed, 35 insertions(+), 6 deletions(-) diff --git a/src/Server/src/main/java/greenify/server/service/UserService.java b/src/Server/src/main/java/greenify/server/service/UserService.java index f4cea39..685d618 100644 --- a/src/Server/src/main/java/greenify/server/service/UserService.java +++ b/src/Server/src/main/java/greenify/server/service/UserService.java @@ -64,21 +64,37 @@ public class UserService { } /** -<<<<<<< HEAD * Adds a friend to the friendlist of the user. * @param name the username of the user * @param friend the name of the friend you want to add. + * @throws ApplicationException if the user is not in the database. */ public void addFriend(String name, String friend) { User user = userRepository.findByName(name); User add = userRepository.findByName(friend); - if (user == null || add == null ) { + if (add == null ) { throw new ApplicationException("User does not exist"); } user.addFriend(add); userRepository.save(user); } + /** + * Removes a friend from the friendlist of the user. + * @param name the username of the user + * @param friend the name of the friend you want to remove. + * @throws ApplicationException if the user is not in the database. + */ + public void removeFriend(String name, String friend) { + User user = userRepository.findByName(name); + User remove = userRepository.findByName(friend); + if (remove == null ) { + throw new ApplicationException("User does not exist"); + } + user.removeFriend(remove); + userRepository.save(user); + } + /** * This method sets input for a user. * @param name name of the user diff --git a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java index 80631e0..61dc5c5 100644 --- a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java +++ b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java @@ -266,12 +266,25 @@ public class UserServiceTest { } @Test - public void addFriendNullFriendTest() { - assertThrows(ApplicationException.class, () -> userService.addFriend("alex", null)); + public void removeFriendTest() { + User alex = userRepository.findByName("alex"); + User lola = userRepository.findByName("lola"); + assertEquals(lola.getFriends(), alex.getFriends()); + userService.addFriend("alex", "lola"); + ArrayList test = new ArrayList(); + test.add(lola); + assertEquals(alex.getFriends(), test); + userService.removeFriend("alex", "lola"); + assertEquals(lola.getFriends(), alex.getFriends()); } @Test - public void addFriendNullUserTest() { - assertThrows(ApplicationException.class, () -> userService.addFriend(null, "password")); + public void removeFriendNullTest() { + assertThrows(ApplicationException.class, () -> userService.removeFriend("alex", null)); + } + + @Test + public void addFriendNullFriendTest() { + assertThrows(ApplicationException.class, () -> userService.addFriend("alex", null)); } }