From ddfe2f3c51a2faaadcb689b49d24bf47b5fc5343 Mon Sep 17 00:00:00 2001
From: Paul-Christian Volkmer <paul-christian.volkmer@mni.thm.de>
Date: Mon, 26 May 2014 08:37:08 +0200
Subject: [PATCH] Added some comtroller tests

---
 .../AudienceQuestionController.java           |  4 ++--
 .../controller/FeedbackControllerTest.java    | 12 ++++++++++-
 .../LecturerQuestionControllerTest.java       | 20 +++++++++++++++++++
 .../controller/SessionControllerTest.java     | 20 +++++++++++++++++++
 4 files changed, 53 insertions(+), 3 deletions(-)

diff --git a/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java b/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java
index cd6badd8..89f8ee6c 100644
--- a/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java
+++ b/src/main/java/de/thm/arsnova/controller/AudienceQuestionController.java
@@ -54,7 +54,7 @@ public class AudienceQuestionController extends AbstractController {
 			@RequestParam final String sessionkey,
 			final HttpServletResponse response
 			) {
-		response.addHeader("X-Deprecated-API", "1");
+		response.addHeader(X_DEPRECATED_API, "1");
 
 		return questionService.getInterposedCount(sessionkey);
 	}
@@ -64,7 +64,7 @@ public class AudienceQuestionController extends AbstractController {
 			@RequestParam("sessionkey") final String sessionkey,
 			final HttpServletResponse response
 			) {
-		response.addHeader("X-Deprecated-API", "1");
+		response.addHeader(X_DEPRECATED_API, "1");
 
 		return questionService.getInterposedReadingCount(sessionkey);
 	}
diff --git a/src/test/java/de/thm/arsnova/controller/FeedbackControllerTest.java b/src/test/java/de/thm/arsnova/controller/FeedbackControllerTest.java
index ee8364a3..e0eab605 100644
--- a/src/test/java/de/thm/arsnova/controller/FeedbackControllerTest.java
+++ b/src/test/java/de/thm/arsnova/controller/FeedbackControllerTest.java
@@ -2,6 +2,7 @@ package de.thm.arsnova.controller;
 
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.header;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
 
 import org.junit.Before;
@@ -68,6 +69,15 @@ public class FeedbackControllerTest {
 	public void testShouldReturnFeedback() throws Exception {
 		userService.setUserAuthenticated(true);
 		mockMvc.perform(get("/session/87654321/feedback").accept(MediaType.APPLICATION_JSON))
-		.andExpect(status().isOk());
+		.andExpect(status().isOk())
+		.andExpect(content().string("{\"values\":[0,0,0,0]}"));
+	}
+
+	@Test
+	public void testShouldReturnXDeprecatedApiHeaderForFeedback() throws Exception {
+		userService.setUserAuthenticated(true);
+		mockMvc.perform(get("/session/87654321/feedback").accept(MediaType.APPLICATION_JSON))
+		.andExpect(status().isOk())
+		.andExpect(header().string(AbstractController.X_DEPRECATED_API, "1"));
 	}
 }
diff --git a/src/test/java/de/thm/arsnova/controller/LecturerQuestionControllerTest.java b/src/test/java/de/thm/arsnova/controller/LecturerQuestionControllerTest.java
index cd68100c..23833aed 100644
--- a/src/test/java/de/thm/arsnova/controller/LecturerQuestionControllerTest.java
+++ b/src/test/java/de/thm/arsnova/controller/LecturerQuestionControllerTest.java
@@ -1,6 +1,8 @@
 package de.thm.arsnova.controller;
 
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.header;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
 
 import java.util.ArrayList;
@@ -83,4 +85,22 @@ public class LecturerQuestionControllerTest {
 		mockMvc.perform(get("/lecturerquestion/").param("sessionkey", "12345678").param("preparationquestionsonly", "true"))
 		.andExpect(status().isUnauthorized());
 	}
+
+	@Test
+	public void testShouldReturnQuestionCount() throws Exception {
+		setAuthenticated(true, "somebody");
+
+		mockMvc.perform(get("/lecturerquestion/count").param("sessionkey", "12345678").param("lecturequestionsonly", "true"))
+		.andExpect(status().isOk())
+		.andExpect(content().string("0"));
+	}
+
+	@Test
+	public void testShouldReturnXDeprecatedApiHeaderForQuestionCount() throws Exception {
+		setAuthenticated(true, "somebody");
+
+		mockMvc.perform(get("/lecturerquestion/count").param("sessionkey", "12345678").param("lecturequestionsonly", "true"))
+		.andExpect(status().isOk())
+		.andExpect(header().string(AbstractController.X_DEPRECATED_API, "1"));
+	}
 }
diff --git a/src/test/java/de/thm/arsnova/controller/SessionControllerTest.java b/src/test/java/de/thm/arsnova/controller/SessionControllerTest.java
index 61668ec3..a6e46b1c 100644
--- a/src/test/java/de/thm/arsnova/controller/SessionControllerTest.java
+++ b/src/test/java/de/thm/arsnova/controller/SessionControllerTest.java
@@ -2,6 +2,8 @@ package de.thm.arsnova.controller;
 
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.header;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
 
 import java.util.ArrayList;
@@ -117,4 +119,22 @@ public class SessionControllerTest {
 		mockMvc.perform(get("/session/"))
 		.andExpect(status().isNotImplemented());
 	}
+
+	@Test
+	public void testShouldReturnActiveUserCount() throws Exception {
+		setAuthenticated(false, "ptsr00");
+
+		mockMvc.perform(get("/session/12345678/activeusercount"))
+		.andExpect(status().isOk())
+		.andExpect(content().string("0"));
+	}
+
+	@Test
+	public void testShouldReturnXDeprecatedApiHeaderForActiveUserCount() throws Exception {
+		setAuthenticated(false, "ptsr00");
+
+		mockMvc.perform(get("/session/12345678/activeusercount"))
+		.andExpect(status().isOk())
+		.andExpect(header().string(AbstractController.X_DEPRECATED_API, "1"));
+	}
 }
-- 
GitLab