From 21864cc25411503883fc1ef5fe06283f09a694d7 Mon Sep 17 00:00:00 2001
From: Daniel Gerhardt <code@dgerhardt.net>
Date: Sat, 15 Jul 2017 20:09:12 +0200
Subject: [PATCH] Setup repository mockups for testing

---
 .../java/de/thm/arsnova/ImageUtilsTest.java   |  3 +-
 .../de/thm/arsnova/config/AppConfigTest.java  |  2 +-
 .../arsnova/config/TestPersistanceConfig.java | 66 +++++++++++++++++++
 .../controller/AbstractControllerTest.java    |  3 +-
 .../thm/arsnova/services/UserServiceTest.java |  3 +-
 5 files changed, 73 insertions(+), 4 deletions(-)
 create mode 100644 src/test/java/de/thm/arsnova/config/TestPersistanceConfig.java

diff --git a/src/test/java/de/thm/arsnova/ImageUtilsTest.java b/src/test/java/de/thm/arsnova/ImageUtilsTest.java
index 5a2090d6d..5c27e1eb5 100644
--- a/src/test/java/de/thm/arsnova/ImageUtilsTest.java
+++ b/src/test/java/de/thm/arsnova/ImageUtilsTest.java
@@ -19,6 +19,7 @@ package de.thm.arsnova;
 
 import de.thm.arsnova.config.AppConfig;
 import de.thm.arsnova.config.TestAppConfig;
+import de.thm.arsnova.config.TestPersistanceConfig;
 import de.thm.arsnova.config.TestSecurityConfig;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -33,7 +34,7 @@ import static org.junit.Assert.*;
 
 @RunWith(SpringJUnit4ClassRunner.class)
 @WebAppConfiguration
-@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestSecurityConfig.class})
+@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestPersistanceConfig.class, TestSecurityConfig.class})
 @ActiveProfiles("test")
 public class ImageUtilsTest {
 
diff --git a/src/test/java/de/thm/arsnova/config/AppConfigTest.java b/src/test/java/de/thm/arsnova/config/AppConfigTest.java
index 8ad3630cc..355cd7f07 100644
--- a/src/test/java/de/thm/arsnova/config/AppConfigTest.java
+++ b/src/test/java/de/thm/arsnova/config/AppConfigTest.java
@@ -31,7 +31,7 @@ import static org.junit.Assert.assertNull;
 
 @RunWith(SpringJUnit4ClassRunner.class)
 @WebAppConfiguration
-@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestSecurityConfig.class})
+@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestPersistanceConfig.class, TestSecurityConfig.class})
 @ActiveProfiles("test")
 public class AppConfigTest extends AbstractJUnit4SpringContextTests {
 
diff --git a/src/test/java/de/thm/arsnova/config/TestPersistanceConfig.java b/src/test/java/de/thm/arsnova/config/TestPersistanceConfig.java
new file mode 100644
index 000000000..4801a8548
--- /dev/null
+++ b/src/test/java/de/thm/arsnova/config/TestPersistanceConfig.java
@@ -0,0 +1,66 @@
+package de.thm.arsnova.config;
+
+import de.thm.arsnova.persistance.*;
+import org.mockito.Mockito;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
+
+@Profile("test")
+@Configuration
+public class TestPersistanceConfig {
+	@Bean
+	public LogEntryRepository logEntryRepository() {
+		return Mockito.mock(LogEntryRepository.class);
+	}
+
+	@Bean
+	public UserRepository userRepository() {
+		return Mockito.mock(UserRepository.class);
+	}
+
+	@Bean
+	public SessionRepository sessionRepository() {
+		return Mockito.mock(SessionRepository.class);
+	}
+
+	@Bean
+	public CommentRepository commentRepository() {
+		return Mockito.mock(CommentRepository.class);
+	}
+
+	@Bean
+	public ContentRepository contentRepository() {
+		return Mockito.mock(ContentRepository.class);
+	}
+
+	@Bean
+	public AnswerRepository answerRepository() {
+		return Mockito.mock(AnswerRepository.class);
+	}
+
+	@Bean
+	public MotdRepository motdRepository() {
+		return Mockito.mock(MotdRepository.class);
+	}
+
+	@Bean
+	public MotdListRepository motdListRepository() {
+		return Mockito.mock(MotdListRepository.class);
+	}
+
+	@Bean
+	public VisitedSessionRepository visitedSessionRepository() {
+		return Mockito.mock(VisitedSessionRepository.class);
+	}
+
+	@Bean
+	public StatisticsRepository statisticsRepository() {
+		return Mockito.mock(StatisticsRepository.class);
+	}
+
+	@Bean
+	public SessionStatisticsRepository sessionStatisticsRepository() {
+		return Mockito.mock(SessionStatisticsRepository.class);
+	}
+}
diff --git a/src/test/java/de/thm/arsnova/controller/AbstractControllerTest.java b/src/test/java/de/thm/arsnova/controller/AbstractControllerTest.java
index c10aecac7..09ee64b6a 100644
--- a/src/test/java/de/thm/arsnova/controller/AbstractControllerTest.java
+++ b/src/test/java/de/thm/arsnova/controller/AbstractControllerTest.java
@@ -19,6 +19,7 @@ package de.thm.arsnova.controller;
 
 import de.thm.arsnova.config.AppConfig;
 import de.thm.arsnova.config.TestAppConfig;
+import de.thm.arsnova.config.TestPersistanceConfig;
 import de.thm.arsnova.config.TestSecurityConfig;
 import de.thm.arsnova.services.StubUserService;
 import org.junit.After;
@@ -38,7 +39,7 @@ import java.util.List;
 
 @RunWith(SpringJUnit4ClassRunner.class)
 @WebAppConfiguration
-@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestSecurityConfig.class})
+@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestPersistanceConfig.class, TestSecurityConfig.class})
 @ActiveProfiles("test")
 public abstract class AbstractControllerTest extends AbstractJUnit4SpringContextTests {
 
diff --git a/src/test/java/de/thm/arsnova/services/UserServiceTest.java b/src/test/java/de/thm/arsnova/services/UserServiceTest.java
index 78eb90c34..1d2cb8ec7 100644
--- a/src/test/java/de/thm/arsnova/services/UserServiceTest.java
+++ b/src/test/java/de/thm/arsnova/services/UserServiceTest.java
@@ -19,6 +19,7 @@ package de.thm.arsnova.services;
 
 import de.thm.arsnova.config.AppConfig;
 import de.thm.arsnova.config.TestAppConfig;
+import de.thm.arsnova.config.TestPersistanceConfig;
 import de.thm.arsnova.config.TestSecurityConfig;
 import de.thm.arsnova.entities.User;
 import org.jasig.cas.client.authentication.AttributePrincipalImpl;
@@ -52,7 +53,7 @@ import static org.junit.Assert.assertEquals;
 
 @RunWith(SpringJUnit4ClassRunner.class)
 @WebAppConfiguration
-@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestSecurityConfig.class})
+@ContextConfiguration(classes = {AppConfig.class, TestAppConfig.class, TestPersistanceConfig.class, TestSecurityConfig.class})
 @ActiveProfiles("test")
 public class UserServiceTest {
 
-- 
GitLab