From 95308fc113ea1f34adc712ef57e1ffe5e2b35c81 Mon Sep 17 00:00:00 2001
From: Tom Vahlman <tom@dsv.su.se>
Date: Tue, 28 Feb 2012 15:32:21 +0100
Subject: [PATCH] calculateTotalAvailability should be done before sorting the
 list NOT after

---
 .../java/se/su/dsv/scipro/match/GreedyMatchingAlgorithm.java    | 2 +-
 .../se/su/dsv/scipro/match/TestGreedyMatchingAlgorithm.java     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/java/se/su/dsv/scipro/match/GreedyMatchingAlgorithm.java b/src/main/java/se/su/dsv/scipro/match/GreedyMatchingAlgorithm.java
index 8aa6930b03..e0e08fc488 100644
--- a/src/main/java/se/su/dsv/scipro/match/GreedyMatchingAlgorithm.java
+++ b/src/main/java/se/su/dsv/scipro/match/GreedyMatchingAlgorithm.java
@@ -39,8 +39,8 @@ public class GreedyMatchingAlgorithm implements MatchingAlgorithm {
             matchProjectIdeas(unmatchedProjectIdeas, supervisorAvailability, pairList);      
             
             if(!pairList.isEmpty()) {
-                Collections.sort(pairList);
                 calculateTotalAvailability(pairList);
+                Collections.sort(pairList);
                 Pair foundPair = pairList.get(0);
                 for(Availability availability : supervisorAvailability) {
                     if(availability.getSupervisor().equals(foundPair.getMatch().getSupervisor()) &&
diff --git a/src/test/java/se/su/dsv/scipro/match/TestGreedyMatchingAlgorithm.java b/src/test/java/se/su/dsv/scipro/match/TestGreedyMatchingAlgorithm.java
index 9e66082e26..d76d881c70 100644
--- a/src/test/java/se/su/dsv/scipro/match/TestGreedyMatchingAlgorithm.java
+++ b/src/test/java/se/su/dsv/scipro/match/TestGreedyMatchingAlgorithm.java
@@ -636,7 +636,7 @@ public class TestGreedyMatchingAlgorithm {
     @Test
     @Transactional
     @Rollback
-    /*  three supervisors which are matched against three project ideas  */
+    /*  three supervisors are matched against three project ideas  */
     public void testIncreaseSlotForMasterSupervisor_v3() {
         List<ProjectIdea> projectIdeaList = new ArrayList<ProjectIdea>();
         List<Employee> supervisorList = new ArrayList<Employee>();