From 11469e9314b8b8dd398a0ae5034007fc3ba2e668 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Wo=C5=BAniak?= Date: Wed, 13 Jan 2021 14:13:26 +0100 Subject: [PATCH] Checkpoint: ExchangeServiceTest MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Marcin Woźniak --- .../com/plannaplan/services/ExchangeService.java | 13 +++++++------ .../plannaplan/services/ExchangeServiceTest.java | 13 ++++++++++--- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java b/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java index c87c0fa..d3e9e8d 100644 --- a/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java +++ b/buisnesslogic/src/main/java/com/plannaplan/services/ExchangeService.java @@ -78,7 +78,7 @@ public class ExchangeService { } public void performExchange() { - final Set matchData = this.getMatches(); + final List matchData = this.getMatches(); final List performedAssignmentExchanges = new ArrayList<>(); matchData.forEach( m -> { final Assignment assignmentOne = m.getAssignmentOne(); @@ -114,16 +114,17 @@ public class ExchangeService { }); } - public Set getMatches(){ + public List getMatches(){ final List matches = this.repo.getMatches().stream().map(m -> { final Exchange exchangeOne = (Exchange) m[0]; final Exchange exchangeTwo = (Exchange) m[1]; return new MatchData(exchangeOne, exchangeTwo); - }).collect(Collectors.toList()); - Set filterMatches = new TreeSet<>((m1, m2) -> m1.compare(m2)); - filterMatches.addAll(matches); - return filterMatches; + final Set uniqData = new HashSet<>(matches); + final List matchDataListSorted = uniqData.stream().sorted((m1, m2) -> -1 * m1.compare(m2)) + .collect(Collectors.toList()); + + return matchDataListSorted; } } diff --git a/buisnesslogic/src/test/java/com/plannaplan/services/ExchangeServiceTest.java b/buisnesslogic/src/test/java/com/plannaplan/services/ExchangeServiceTest.java index bc68185..d71dba7 100644 --- a/buisnesslogic/src/test/java/com/plannaplan/services/ExchangeServiceTest.java +++ b/buisnesslogic/src/test/java/com/plannaplan/services/ExchangeServiceTest.java @@ -68,7 +68,7 @@ public class ExchangeServiceTest { this.exchangeService.save(new Exchange(assignmentUser1, group2)); this.exchangeService.save(new Exchange(assignmentUser2, group1)); - final Set uniqList = this.exchangeService.getMatches(); + final List uniqList = this.exchangeService.getMatches(); assertTrue(uniqList.size() == 1); } @@ -117,9 +117,13 @@ public class ExchangeServiceTest { this.exchangeService.performExchange(); user1 = this.userService.getById(user1Id).get(); + Thread.sleep(1000); user2 = this.userService.getById(user2Id).get(); + Thread.sleep(1000); user3 = this.userService.getById(user3Id).get(); + Thread.sleep(1000); user4 = this.userService.getById(user4Id).get(); + Thread.sleep(1000); final List listGroupsOfUser1 = user1.getStudentRegisteredGrups().stream().map(Groups::getId) .collect(Collectors.toList()); @@ -160,9 +164,13 @@ public class ExchangeServiceTest { this.assignmentService.callAcceptAlgorythm(); this.exchangeService.save(new Exchange(assignmentUser1, group2)); + Thread.sleep(1000); this.exchangeService.save(new Exchange(assignmentUser2, group1)); + Thread.sleep(1000); this.exchangeService.save(new Exchange(assignmentUser1, group3)); + Thread.sleep(1000); this.exchangeService.save(new Exchange(assignmentUser1, group4)); + Thread.sleep(1000); this.exchangeService.performExchange(); @@ -176,8 +184,7 @@ public class ExchangeServiceTest { assertTrue(listGroupsOfUser1.contains(group2.getId())); assertTrue(listGroupsOfUser2.contains(group1.getId())); - int size = this.exchangeService.getAllExchanges().size(); - assertTrue(this.exchangeService.getAllExchanges().size() == 1); + assertTrue(this.exchangeService.getAllExchanges().size() == 2); } @Test