From 83fe918f377a08c21480394f5d47cf0220a3b6a1 Mon Sep 17 00:00:00 2001
From: Paul-Christian Volkmer <paul-christian.volkmer@mni.thm.de>
Date: Mon, 2 Jun 2014 08:35:58 +0200
Subject: [PATCH] Some changes in unit tests

---
 .../thm/arsnova/services/QuestionService.java |  1 -
 .../arsnova/services/SessionServiceTest.java  | 59 ++++++++++++++-----
 .../services/StatisticsServiceTest.java       | 13 ++--
 3 files changed, 51 insertions(+), 22 deletions(-)

diff --git a/src/main/java/de/thm/arsnova/services/QuestionService.java b/src/main/java/de/thm/arsnova/services/QuestionService.java
index 74729acd3..cc84737de 100644
--- a/src/main/java/de/thm/arsnova/services/QuestionService.java
+++ b/src/main/java/de/thm/arsnova/services/QuestionService.java
@@ -92,7 +92,6 @@ public class QuestionService implements IQuestionService {
 
 		// convert imageurl to base64 if neccessary
 		if ("grid".equals(question.getQuestionType())) {
-			final org.slf4j.Logger logger = LoggerFactory.getLogger(QuestionService.class);
 			if (question.getImage().startsWith("http")) {
 				final String base64ImageString = ImageUtils.encodeImageToString(question.getImage());
 				if (base64ImageString == null) {
diff --git a/src/test/java/de/thm/arsnova/services/SessionServiceTest.java b/src/test/java/de/thm/arsnova/services/SessionServiceTest.java
index a01f239f7..6b6ecd311 100644
--- a/src/test/java/de/thm/arsnova/services/SessionServiceTest.java
+++ b/src/test/java/de/thm/arsnova/services/SessionServiceTest.java
@@ -28,6 +28,7 @@ import static org.mockito.Mockito.when;
 
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Comparator;
 import java.util.List;
 
 import org.junit.After;
@@ -72,10 +73,10 @@ public class SessionServiceTest {
 	@Autowired
 	private StubDatabaseDao databaseDao;
 
-	private void setAuthenticated(boolean isAuthenticated, String username) {
+	private void setAuthenticated(final boolean isAuthenticated, final String username) {
 		if (isAuthenticated) {
-			List<GrantedAuthority> ga = new ArrayList<GrantedAuthority>();
-			UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(username, "secret", ga);
+			final List<GrantedAuthority> ga = new ArrayList<GrantedAuthority>();
+			final UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(username, "secret", ga);
 			SecurityContextHolder.getContext().setAuthentication(token);
 			userService.setUserAuthenticated(isAuthenticated, username);
 		} else {
@@ -101,7 +102,7 @@ public class SessionServiceTest {
 	}
 
 	@Test(expected = NotFoundException.class)
-	public void testShouldFindNonExistantSession() {
+	public void testShouldNotFindNonExistantSession() {
 		setAuthenticated(true, "ptsr00");
 		sessionService.joinSession("00000000");
 	}
@@ -116,7 +117,7 @@ public class SessionServiceTest {
 	public void testShouldNotSaveSessionIfUnauthorized() {
 		setAuthenticated(false, null);
 
-		Session session = new Session();
+		final Session session = new Session();
 		session.setActive(true);
 		session.setCreator("ptsr00");
 		session.setKeyword("11111111");
@@ -133,7 +134,7 @@ public class SessionServiceTest {
 	public void testShouldSaveSession() {
 		setAuthenticated(true, "ptsr00");
 
-		Session session = new Session();
+		final Session session = new Session();
 		session.setActive(true);
 		session.setCreator("ptsr00");
 		session.setKeyword("11111111");
@@ -147,7 +148,7 @@ public class SessionServiceTest {
 	public void testShouldUpdateSession() {
 		setAuthenticated(true, "ptsr00");
 
-		Session session = new Session();
+		final Session session = new Session();
 		session.setActive(true);
 		session.setCreator("ptsr00");
 		session.setKeyword("11111111");
@@ -161,16 +162,16 @@ public class SessionServiceTest {
 
 	@Test
 	public void testShouldDeleteAllSessionData() {
-		IDatabaseDao tempDatabase = (IDatabaseDao) ReflectionTestUtils.getField(getTargetObject(sessionService), "databaseDao");
+		final IDatabaseDao tempDatabase = (IDatabaseDao) ReflectionTestUtils.getField(getTargetObject(sessionService), "databaseDao");
 		try {
 			setAuthenticated(true, "ptsr00");
 
-			Session session = new Session();
+			final Session session = new Session();
 			session.setCreator(userService.getCurrentUser().getUsername());
-			Question q1 = new Question();
-			Question q2 = new Question();
+			final Question q1 = new Question();
+			final Question q2 = new Question();
 
-			IDatabaseDao mockDatabase = mock(IDatabaseDao.class);
+			final IDatabaseDao mockDatabase = mock(IDatabaseDao.class);
 			when(mockDatabase.getSkillQuestions(userService.getCurrentUser(), session)).thenReturn(Arrays.asList(q1, q2));
 			when(mockDatabase.getSession(anyString())).thenReturn(session);
 			ReflectionTestUtils.setField(getTargetObject(sessionService), "databaseDao", mockDatabase);
@@ -185,12 +186,40 @@ public class SessionServiceTest {
 		}
 	}
 
+	@Test
+	public void testShouldCompareSessionByName() {
+		final Session sessionA = new Session();
+		sessionA.setName("TestSessionA");
+		sessionA.setShortName("TSA");
+
+		final Session sessionB = new Session();
+		sessionB.setName("TestSessionB");
+		sessionB.setShortName("TSB");
+
+		final Comparator<Session> comp = new SessionService.SessionNameComperator();
+		assertTrue(comp.compare(sessionA, sessionB) < 0);
+	}
+
+	@Test
+	public void testShouldCompareSessionByShortName() {
+		final Session sessionA = new Session();
+		sessionA.setName("TestSessionA");
+		sessionA.setShortName("TSA");
+
+		final Session sessionB = new Session();
+		sessionB.setName("TestSessionB");
+		sessionB.setShortName("TSB");
+
+		final Comparator<Session> comp = new SessionService.SessionShortNameComperator();
+		assertTrue(comp.compare(sessionA, sessionB) < 0);
+	}
+
 	@SuppressWarnings("unchecked")
-	public static <T> T getTargetObject(Object proxy) {
-		if ((AopUtils.isJdkDynamicProxy(proxy))) {
+	public static <T> T getTargetObject(final Object proxy) {
+		if (AopUtils.isJdkDynamicProxy(proxy)) {
 			try {
 				return (T) getTargetObject(((Advised) proxy).getTargetSource().getTarget());
-			} catch (Exception e) {
+			} catch (final Exception e) {
 				throw new RuntimeException("Failed to unproxy target.", e);
 			}
 		}
diff --git a/src/test/java/de/thm/arsnova/services/StatisticsServiceTest.java b/src/test/java/de/thm/arsnova/services/StatisticsServiceTest.java
index 0e253786d..ce514f69e 100644
--- a/src/test/java/de/thm/arsnova/services/StatisticsServiceTest.java
+++ b/src/test/java/de/thm/arsnova/services/StatisticsServiceTest.java
@@ -15,7 +15,7 @@ import org.springframework.test.context.ActiveProfiles;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
-import de.thm.arsnova.dao.StubDatabaseDao;
+import de.thm.arsnova.dao.IDatabaseDao;
 import de.thm.arsnova.entities.Statistics;
 
 @RunWith(SpringJUnit4ClassRunner.class)
@@ -32,7 +32,7 @@ public class StatisticsServiceTest {
 	private final IStatisticsService statisticsService = new StatisticsService();
 
 	@Mock
-	private StubDatabaseDao databaseDao;
+	private IDatabaseDao databaseDao;
 
 	@Before
 	public final void startup() {
@@ -52,26 +52,27 @@ public class StatisticsServiceTest {
 	public final void testShouldReturnNoActiveUsers() {
 		when(databaseDao.countActiveUsers(anyInt())).thenReturn(0);
 
-		int actual = statisticsService.countActiveUsers();
+		final int actual = statisticsService.countActiveUsers();
 		assertEquals(0, actual);
 	}
 
 	@Test
 	public final void testShouldReturnCurrentActiveUsers() {
-		int actual = statisticsService.countActiveUsers();
+		final int actual = statisticsService.countActiveUsers();
 		assertEquals(42, actual);
 	}
 
 	@Test
 	public final void testShouldReturnEqualStatistics() {
-		Statistics actual = statisticsService.getStatistics();
+		final Statistics actual = statisticsService.getStatistics();
 
-		Statistics expected = new Statistics();
+		final Statistics expected = new Statistics();
 		expected.setActiveUsers(42);
 		expected.setAnswers(2014);
 		expected.setClosedSessions(1984);
 		expected.setOpenSessions(1978);
 		expected.setQuestions(123);
+		expected.setLoggedinUsers(0);
 
 		assertEquals(expected, actual);
 	}
-- 
GitLab