From 18c3ce0c9267af5aa8942ccc5a1be3eab821a6b1 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Sat, 23 Mar 2019 18:26:01 +0100 Subject: [PATCH 01/16] FIX: Database fix --- build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 2b6ed72..98f5661 100644 --- a/build.gradle +++ b/build.gradle @@ -18,9 +18,9 @@ apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' apply plugin: 'application' -application { - mainClassName = 'greenify.server.Application' -} +//application { +// mainClassName = 'greenify.server.Application' +//} repositories { mavenCentral() From 1cec0061784d4c0f308c37537484a9723601258c Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Mon, 25 Mar 2019 14:37:45 +0100 Subject: [PATCH 02/16] FIX: Create-drop databse. Add ManyToMany annotation --- .../java/greenify/server/data/model/User.java | 23 ++++++++++--------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/src/Server/src/main/java/greenify/server/data/model/User.java b/src/Server/src/main/java/greenify/server/data/model/User.java index 4bced0a..b1b6698 100644 --- a/src/Server/src/main/java/greenify/server/data/model/User.java +++ b/src/Server/src/main/java/greenify/server/data/model/User.java @@ -4,14 +4,8 @@ import greenify.common.ApplicationException; import greenify.server.Application; import lombok.Data; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; +import java.util.*; +import javax.persistence.*; import javax.validation.constraints.NotNull; @Entity @@ -20,7 +14,9 @@ import javax.validation.constraints.NotNull; public class User { @Id + @NotNull @GeneratedValue(strategy = GenerationType.AUTO) +// @Column(name = "id") private Long id; @NotNull @@ -31,7 +27,12 @@ public class User { private int veganMeal; - private ArrayList friends; +// @ElementCollection +// @CollectionTable(name = "friends", joinColumns = @JoinColumn(name = "id")) +// @Column(name = "friendId") + @ManyToMany + @JoinColumn + private Collection friends; public User() {} @@ -98,8 +99,8 @@ public class User { this.veganMeal = veganMeal; } - public List getFriends(){ - return this.friends; + public ArrayList getFriends(){ + return (ArrayList)this.friends; } public void addFriend(User user){ From 437267dcb92dcbfac9576c98ca88016a368241ee Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 10:24:21 +0100 Subject: [PATCH 03/16] Commit small changes before rebase --- src/Server/src/main/java/greenify/server/data/model/User.java | 3 --- src/Server/src/main/resources/application.properties | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/Server/src/main/java/greenify/server/data/model/User.java b/src/Server/src/main/java/greenify/server/data/model/User.java index b1b6698..0daf367 100644 --- a/src/Server/src/main/java/greenify/server/data/model/User.java +++ b/src/Server/src/main/java/greenify/server/data/model/User.java @@ -27,9 +27,6 @@ public class User { private int veganMeal; -// @ElementCollection -// @CollectionTable(name = "friends", joinColumns = @JoinColumn(name = "id")) -// @Column(name = "friendId") @ManyToMany @JoinColumn private Collection friends; diff --git a/src/Server/src/main/resources/application.properties b/src/Server/src/main/resources/application.properties index 3b7b07e..65fce80 100644 --- a/src/Server/src/main/resources/application.properties +++ b/src/Server/src/main/resources/application.properties @@ -2,5 +2,5 @@ spring.datasource.url=jdbc:h2:file:~/spring-boot-h2.db;DB_CLOSE_ON_EXIT=FALSE spring.datasource.username=sa spring.datasource.password= spring.datasource.driver-class-name=org.h2.Driver -spring.jpa.hibernate.ddl-auto=update +spring.jpa.hibernate.ddl-auto=create-drop spring.h2.console.enabled=true \ No newline at end of file From 28cd0d0d7f8a35887d805cc4a18b92d0cf92d7c1 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Sat, 23 Mar 2019 18:26:01 +0100 Subject: [PATCH 04/16] FIX: Database fix --- build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 2b6ed72..98f5661 100644 --- a/build.gradle +++ b/build.gradle @@ -18,9 +18,9 @@ apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' apply plugin: 'application' -application { - mainClassName = 'greenify.server.Application' -} +//application { +// mainClassName = 'greenify.server.Application' +//} repositories { mavenCentral() From a1ba2f1d7d69a5fc8859df658f269c7643858b5f Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Mon, 25 Mar 2019 14:37:45 +0100 Subject: [PATCH 05/16] FIX: Create-drop databse. Add ManyToMany annotation --- .../main/java/greenify/server/data/model/User.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/Server/src/main/java/greenify/server/data/model/User.java b/src/Server/src/main/java/greenify/server/data/model/User.java index 39f385b..bb3a5d6 100644 --- a/src/Server/src/main/java/greenify/server/data/model/User.java +++ b/src/Server/src/main/java/greenify/server/data/model/User.java @@ -13,6 +13,8 @@ import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; +import java.util.*; +import javax.persistence.*; import javax.validation.constraints.NotNull; @Entity @@ -21,7 +23,9 @@ import javax.validation.constraints.NotNull; public class User { @Id + @NotNull @GeneratedValue(strategy = GenerationType.AUTO) +// @Column(name = "id") private Long id; @NotNull @@ -36,6 +40,10 @@ public class User { @ElementCollection private Map footPrintInputs = new HashMap<>(); + @ManyToMany + @JoinColumn + private Collection friends; + public User() {} /** @@ -103,6 +111,10 @@ public class User { this.footPrintInputs = footPrintInputs; } + public ArrayList getFriends(){ + return (ArrayList)this.friends; + } + public void setFootPrint(Float footPrint) { this.footPrint = footPrint; } From 471d41a6005667556677f6528f91adf4d74dd5a7 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 10:24:21 +0100 Subject: [PATCH 06/16] Commit small changes before rebase --- src/Server/src/main/resources/application.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Server/src/main/resources/application.properties b/src/Server/src/main/resources/application.properties index 3b7b07e..65fce80 100644 --- a/src/Server/src/main/resources/application.properties +++ b/src/Server/src/main/resources/application.properties @@ -2,5 +2,5 @@ spring.datasource.url=jdbc:h2:file:~/spring-boot-h2.db;DB_CLOSE_ON_EXIT=FALSE spring.datasource.username=sa spring.datasource.password= spring.datasource.driver-class-name=org.h2.Driver -spring.jpa.hibernate.ddl-auto=update +spring.jpa.hibernate.ddl-auto=create-drop spring.h2.console.enabled=true \ No newline at end of file From 7a4a031b1dd7138c1b68c8eefb2c8c1d2dd73f90 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 10:47:12 +0100 Subject: [PATCH 07/16] Added some tests for friend methods --- .../greenify/client/rest/UserService.java | 14 ++++++++++++ .../java/greenify/server/data/model/User.java | 13 +++++++++++ .../greenify/server/service/UserService.java | 15 +++++++++++++ .../src/main/resources/application.properties | 2 +- .../greenify/server/data/model/UserTest.java | 22 +++++++++++++++++++ 5 files changed, 65 insertions(+), 1 deletion(-) diff --git a/src/Client/src/main/java/greenify/client/rest/UserService.java b/src/Client/src/main/java/greenify/client/rest/UserService.java index c993e2d..ff1b4e4 100644 --- a/src/Client/src/main/java/greenify/client/rest/UserService.java +++ b/src/Client/src/main/java/greenify/client/rest/UserService.java @@ -94,4 +94,18 @@ public class UserService { .encode().toUri(), String.class); return result; } + + @SuppressWarnings("Duplicates") + public String updaaddFriend(String name, String friend) { + HttpHeaders headers = new HttpHeaders(); + headers.set("Accept", MediaType.APPLICATION_JSON_VALUE); + UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://localhost:8080/setInput") + .queryParam("name", name) + .queryParam("friend",friend); + HttpEntity entity = new HttpEntity<>(headers); + System.out.println(builder.build().encode().toUri()); + String result = this.restTemplate.getForObject(builder.build() + .encode().toUri(), String.class); + return result; + } } diff --git a/src/Server/src/main/java/greenify/server/data/model/User.java b/src/Server/src/main/java/greenify/server/data/model/User.java index bb3a5d6..088f533 100644 --- a/src/Server/src/main/java/greenify/server/data/model/User.java +++ b/src/Server/src/main/java/greenify/server/data/model/User.java @@ -1,5 +1,6 @@ package greenify.server.data.model; +import greenify.common.ApplicationException; import greenify.server.InputValidator; import lombok.Data; @@ -14,6 +15,7 @@ import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.Table; import java.util.*; +import java.util.logging.Logger; import javax.persistence.*; import javax.validation.constraints.NotNull; @@ -57,6 +59,7 @@ public class User { this.name = name; this.password = password; this.setFootPrintInputs(InputValidator.getDefaultValues()); + this.friends = new ArrayList(); } /** @@ -115,6 +118,16 @@ public class User { return (ArrayList)this.friends; } + public void addFriend(User user){ + if(user.equals(this)){ + throw new ApplicationException("Cannot add yourself as a friend"); + } + else{ + friends.add(user); + System.out.print("Friend added!"); + } + } + public void setFootPrint(Float footPrint) { this.footPrint = footPrint; } 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 61ff0d9..4087071 100644 --- a/src/Server/src/main/java/greenify/server/service/UserService.java +++ b/src/Server/src/main/java/greenify/server/service/UserService.java @@ -59,6 +59,21 @@ public class UserService { return new UserDto(user.getId(), user.getName()); } + /** + * 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. + * @return a userDTO of the logged in user + */ + public void addFriend(String name, String friend) { + User user = userRepository.findByName(name); + User add = userRepository.findByName(friend); + if (add == null) { + throw new ApplicationException("User does not exist"); + } + user.addFriend(add); + } + /** * The method sets input value. * @param name of the user diff --git a/src/Server/src/main/resources/application.properties b/src/Server/src/main/resources/application.properties index 65fce80..3b7b07e 100644 --- a/src/Server/src/main/resources/application.properties +++ b/src/Server/src/main/resources/application.properties @@ -2,5 +2,5 @@ spring.datasource.url=jdbc:h2:file:~/spring-boot-h2.db;DB_CLOSE_ON_EXIT=FALSE spring.datasource.username=sa spring.datasource.password= spring.datasource.driver-class-name=org.h2.Driver -spring.jpa.hibernate.ddl-auto=create-drop +spring.jpa.hibernate.ddl-auto=update spring.h2.console.enabled=true \ No newline at end of file diff --git a/src/Server/src/test/java/greenify/server/data/model/UserTest.java b/src/Server/src/test/java/greenify/server/data/model/UserTest.java index 3a27fb8..b566b40 100644 --- a/src/Server/src/test/java/greenify/server/data/model/UserTest.java +++ b/src/Server/src/test/java/greenify/server/data/model/UserTest.java @@ -6,6 +6,8 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.Test; +import java.util.ArrayList; + public class UserTest { @Test public void setAndGetTest() { @@ -78,5 +80,25 @@ public class UserTest { assertEquals(first, second); assertEquals(first.hashCode(), second.hashCode()); } + + @Test + public void getFriendEmpty(){ + User first = new User(1L, "greenify", "password"); + User second = new User(1L, "merel", "password"); + assertEquals(first.getFriends(), second.getFriends()); + assertEquals(first.getFriends(), new ArrayList()); + } + + @Test + public void addFriend(){ + User first = new User(1L, "greenify", "password"); + User second = new User(1L, "merel", "password"); + assertEquals(first.getFriends(), second.getFriends()); + System.out.print(second); + first.addFriend(second); + ArrayList test = new ArrayList(); + test.add(second); + assertEquals(first.getFriends(), test); + } } From cc9f8196bcbc4cc062dab2fa7bc68debb06ddf9d Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 10:56:45 +0100 Subject: [PATCH 08/16] Added tests and method to make sure you cannot add yourself as a friend --- .../greenify/server/data/model/UserTest.java | 12 +++++++++++- .../server/service/UserServiceTest.java | 18 +++++++++++++++++- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/Server/src/test/java/greenify/server/data/model/UserTest.java b/src/Server/src/test/java/greenify/server/data/model/UserTest.java index b566b40..54cb850 100644 --- a/src/Server/src/test/java/greenify/server/data/model/UserTest.java +++ b/src/Server/src/test/java/greenify/server/data/model/UserTest.java @@ -2,8 +2,10 @@ package greenify.server.data.model; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; +import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertTrue; +import greenify.common.ApplicationException; import org.junit.Test; import java.util.ArrayList; @@ -90,7 +92,7 @@ public class UserTest { } @Test - public void addFriend(){ + public void addFriendTest(){ User first = new User(1L, "greenify", "password"); User second = new User(1L, "merel", "password"); assertEquals(first.getFriends(), second.getFriends()); @@ -100,5 +102,13 @@ public class UserTest { test.add(second); assertEquals(first.getFriends(), test); } + + @Test + public void addYourselfTest(){ + User test = new User(1L, "greenify", "password"); + assertEquals(test.getFriends(), new ArrayList()); + assertThrows(ApplicationException.class, () -> { + test.addFriend(test); + }); } } 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 bf06ce8..ddfacb1 100644 --- a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java +++ b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java @@ -18,6 +18,8 @@ import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.context.annotation.Bean; import org.springframework.test.context.junit4.SpringRunner; +import java.util.ArrayList; + @RunWith(SpringRunner.class) public class UserServiceTest { @TestConfiguration @@ -45,7 +47,9 @@ public class UserServiceTest { User alex = new User(1L, "alex", "password"); when(userRepository.findByName(alex.getName())) .thenReturn(alex); - } + User lola = new User(2L, "lola", "password"); + when(userRepository.findByName(lola.getName())) + .thenReturn(lola); } @Test public void validLoginTest() { @@ -157,4 +161,16 @@ public class UserServiceTest { userService.loginUser(null, null); }); } + + @Test + public void addFriendTest() { + 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); + } + } From 4a6d4c70433be30a5d03c4e6b5f7d58eab9adf00 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 11:07:04 +0100 Subject: [PATCH 09/16] Friend list to JSON method added --- .../main/java/greenify/server/data/model/User.java | 11 +++++++++++ .../java/greenify/server/data/model/UserTest.java | 13 +++++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/Server/src/main/java/greenify/server/data/model/User.java b/src/Server/src/main/java/greenify/server/data/model/User.java index 088f533..1edcc28 100644 --- a/src/Server/src/main/java/greenify/server/data/model/User.java +++ b/src/Server/src/main/java/greenify/server/data/model/User.java @@ -143,6 +143,17 @@ public class User { + this.password + ")"; } + public String friendsToString(){ + String result = "friends=["; + for(User u : friends){ + result += "{name=" + u.getName() + ", footprint=" + u.getFootPrint() + "}, "; + } + if(result.endsWith(", ")){ + return result.substring(0, result.lastIndexOf(",")) + "]"; + } + return result + "]"; + } + @Override public boolean equals(Object other) { if (other instanceof User) { diff --git a/src/Server/src/test/java/greenify/server/data/model/UserTest.java b/src/Server/src/test/java/greenify/server/data/model/UserTest.java index 54cb850..92b8d2c 100644 --- a/src/Server/src/test/java/greenify/server/data/model/UserTest.java +++ b/src/Server/src/test/java/greenify/server/data/model/UserTest.java @@ -96,7 +96,6 @@ public class UserTest { User first = new User(1L, "greenify", "password"); User second = new User(1L, "merel", "password"); assertEquals(first.getFriends(), second.getFriends()); - System.out.print(second); first.addFriend(second); ArrayList test = new ArrayList(); test.add(second); @@ -109,6 +108,16 @@ public class UserTest { assertEquals(test.getFriends(), new ArrayList()); assertThrows(ApplicationException.class, () -> { test.addFriend(test); - }); } + }); + } + + + @Test + public void friendsToStringTest(){ + User first = new User(1L, "greenify", "password"); + User second = new User(1L, "merel", "password"); + first.addFriend(second); + assertEquals(first.friendsToString(), "friends=[{name=merel, footprint=0.0}]"); + } } From f39aef31d0b3185e05228395245a70882e657c1b Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 11:24:10 +0100 Subject: [PATCH 10/16] Fix checkstyle errors --- .../java/greenify/server/data/model/User.java | 32 ++++++++++--------- .../greenify/server/data/model/UserTest.java | 8 ++--- .../server/service/UserServiceTest.java | 3 +- 3 files changed, 23 insertions(+), 20 deletions(-) diff --git a/src/Server/src/main/java/greenify/server/data/model/User.java b/src/Server/src/main/java/greenify/server/data/model/User.java index 1edcc28..fd916be 100644 --- a/src/Server/src/main/java/greenify/server/data/model/User.java +++ b/src/Server/src/main/java/greenify/server/data/model/User.java @@ -7,16 +7,11 @@ import lombok.Data; import java.util.HashMap; import java.util.Map; import java.util.Objects; +import java.util.ArrayList; +import java.util.Collection; -import javax.persistence.ElementCollection; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; -import java.util.*; -import java.util.logging.Logger; import javax.persistence.*; + import javax.validation.constraints.NotNull; @Entity @@ -27,7 +22,6 @@ public class User { @Id @NotNull @GeneratedValue(strategy = GenerationType.AUTO) -// @Column(name = "id") private Long id; @NotNull @@ -114,15 +108,19 @@ public class User { this.footPrintInputs = footPrintInputs; } - public ArrayList getFriends(){ + public ArrayList getFriends() { return (ArrayList)this.friends; } - public void addFriend(User user){ - if(user.equals(this)){ + /** + * Adds a friend to the friendslist of the user. + * @param user the friend you want to add. + */ + public void addFriend(User user) { + if (user.equals(this)) { throw new ApplicationException("Cannot add yourself as a friend"); } - else{ + else { friends.add(user); System.out.print("Friend added!"); } @@ -143,12 +141,16 @@ public class User { + this.password + ")"; } + /** + * Returns the name and score of the friends in JSON. Needed for the leaderboard. + * @return a JSON object of the friendlist with only names and scores. + */ public String friendsToString(){ String result = "friends=["; - for(User u : friends){ + for (User u : friends) { result += "{name=" + u.getName() + ", footprint=" + u.getFootPrint() + "}, "; } - if(result.endsWith(", ")){ + if (result.endsWith(", ")) { return result.substring(0, result.lastIndexOf(",")) + "]"; } return result + "]"; diff --git a/src/Server/src/test/java/greenify/server/data/model/UserTest.java b/src/Server/src/test/java/greenify/server/data/model/UserTest.java index 92b8d2c..dd22b40 100644 --- a/src/Server/src/test/java/greenify/server/data/model/UserTest.java +++ b/src/Server/src/test/java/greenify/server/data/model/UserTest.java @@ -84,7 +84,7 @@ public class UserTest { } @Test - public void getFriendEmpty(){ + public void getFriendEmpty() { User first = new User(1L, "greenify", "password"); User second = new User(1L, "merel", "password"); assertEquals(first.getFriends(), second.getFriends()); @@ -92,7 +92,7 @@ public class UserTest { } @Test - public void addFriendTest(){ + public void addFriendTest() { User first = new User(1L, "greenify", "password"); User second = new User(1L, "merel", "password"); assertEquals(first.getFriends(), second.getFriends()); @@ -103,7 +103,7 @@ public class UserTest { } @Test - public void addYourselfTest(){ + public void addYourselfTest() { User test = new User(1L, "greenify", "password"); assertEquals(test.getFriends(), new ArrayList()); assertThrows(ApplicationException.class, () -> { @@ -113,7 +113,7 @@ public class UserTest { @Test - public void friendsToStringTest(){ + public void friendsToStringTest() { User first = new User(1L, "greenify", "password"); User second = new User(1L, "merel", "password"); first.addFriend(second); 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 ddfacb1..dc520d9 100644 --- a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java +++ b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java @@ -49,7 +49,8 @@ public class UserServiceTest { .thenReturn(alex); User lola = new User(2L, "lola", "password"); when(userRepository.findByName(lola.getName())) - .thenReturn(lola); } + .thenReturn(lola); + } @Test public void validLoginTest() { From f11cfc804b92cada885ad2e59f2abe67d6978aaa Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 11:31:41 +0100 Subject: [PATCH 11/16] Add test for leaderboard JSON --- .../main/java/greenify/server/service/UserService.java | 10 ++++++++++ .../java/greenify/server/service/UserServiceTest.java | 9 +++++++++ 2 files changed, 19 insertions(+) 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 4087071..4449367 100644 --- a/src/Server/src/main/java/greenify/server/service/UserService.java +++ b/src/Server/src/main/java/greenify/server/service/UserService.java @@ -74,6 +74,16 @@ public class UserService { user.addFriend(add); } + /** + * Returns the friendlist of the user in JSON. + * @param name the username of the user + * @return a userDTO of the logged in user + */ + public String getLeaderboard(String name) { + User user = userRepository.findByName(name); + return user.friendsToString(); + } + /** * The method sets input value. * @param 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 dc520d9..5c07c35 100644 --- a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java +++ b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java @@ -174,4 +174,13 @@ public class UserServiceTest { assertEquals(alex.getFriends(), test); } + @Test + public void leaderboardTest() { + User alex = userRepository.findByName("alex"); + User lola = userRepository.findByName("lola"); + userService.addFriend("alex", "lola"); + assertEquals(userService.getLeaderboard("alex"), "friends=[{name=lola, footprint=0.0}]"); + + } + } From c61469476bef00e372fc91de556d307c029704f2 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 11:37:47 +0100 Subject: [PATCH 12/16] Uncommented mainClassName --- build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle b/build.gradle index 98f5661..2b6ed72 100644 --- a/build.gradle +++ b/build.gradle @@ -18,9 +18,9 @@ apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' apply plugin: 'application' -//application { -// mainClassName = 'greenify.server.Application' -//} +application { + mainClassName = 'greenify.server.Application' +} repositories { mavenCentral() From 4171b933dcfacdca7737f001d9d06e1cc9c2f065 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 11:40:24 +0100 Subject: [PATCH 13/16] FIX: Spelling error --- src/Client/src/main/java/greenify/client/rest/UserService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Client/src/main/java/greenify/client/rest/UserService.java b/src/Client/src/main/java/greenify/client/rest/UserService.java index ff1b4e4..6b92d69 100644 --- a/src/Client/src/main/java/greenify/client/rest/UserService.java +++ b/src/Client/src/main/java/greenify/client/rest/UserService.java @@ -96,7 +96,7 @@ public class UserService { } @SuppressWarnings("Duplicates") - public String updaaddFriend(String name, String friend) { + public String addFriend(String name, String friend) { HttpHeaders headers = new HttpHeaders(); headers.set("Accept", MediaType.APPLICATION_JSON_VALUE); UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://localhost:8080/setInput") From 16687316244ee3cd88ea3831cc09f9c7715733d5 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 13:49:29 +0000 Subject: [PATCH 14/16] Use assertArrayEquals instead of AssertEquals --- .../src/test/java/greenify/server/service/UserServiceTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 5c07c35..861ed65 100644 --- a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java +++ b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java @@ -1,5 +1,6 @@ package greenify.server.service; +import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -171,7 +172,7 @@ public class UserServiceTest { userService.addFriend("alex", "lola"); ArrayList test = new ArrayList(); test.add(lola); - assertEquals(alex.getFriends(), test); + assertArrayEquals(alex.getFriends(), test); } @Test From b1f3725f71802544141430d7a8a30b8cab583aa9 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 13:52:13 +0000 Subject: [PATCH 15/16] Change wrong url (setInput to addFriend) on Client userService --- src/Client/src/main/java/greenify/client/rest/UserService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Client/src/main/java/greenify/client/rest/UserService.java b/src/Client/src/main/java/greenify/client/rest/UserService.java index 6b92d69..ba726e5 100644 --- a/src/Client/src/main/java/greenify/client/rest/UserService.java +++ b/src/Client/src/main/java/greenify/client/rest/UserService.java @@ -99,7 +99,7 @@ public class UserService { public String addFriend(String name, String friend) { HttpHeaders headers = new HttpHeaders(); headers.set("Accept", MediaType.APPLICATION_JSON_VALUE); - UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://localhost:8080/setInput") + UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://localhost:8080/addFriend") .queryParam("name", name) .queryParam("friend",friend); HttpEntity entity = new HttpEntity<>(headers); From 4780ae7b118c18ec2f483cecb29abfe070ccd0b4 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Tue, 26 Mar 2019 13:56:48 +0000 Subject: [PATCH 16/16] Revert changes: AssertArrayEquals doesn't work on ArrayLists --- .../src/test/java/greenify/server/service/UserServiceTest.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) 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 861ed65..5c07c35 100644 --- a/src/Server/src/test/java/greenify/server/service/UserServiceTest.java +++ b/src/Server/src/test/java/greenify/server/service/UserServiceTest.java @@ -1,6 +1,5 @@ package greenify.server.service; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -172,7 +171,7 @@ public class UserServiceTest { userService.addFriend("alex", "lola"); ArrayList test = new ArrayList(); test.add(lola); - assertArrayEquals(alex.getFriends(), test); + assertEquals(alex.getFriends(), test); } @Test