diff --git a/src/test/java/at/ac/uibk/gitsearch/service/gitlab_events/GitlabEventServiceIT.java b/src/test/java/at/ac/uibk/gitsearch/service/gitlab_events/GitlabEventServiceIT.java
index 4ccc7856cdcfcfcc5980861c5de4ad1375980415..5ccd6feebc9de8a4ef60b6d038a7371001b8f4d4 100644
--- a/src/test/java/at/ac/uibk/gitsearch/service/gitlab_events/GitlabEventServiceIT.java
+++ b/src/test/java/at/ac/uibk/gitsearch/service/gitlab_events/GitlabEventServiceIT.java
@@ -10,6 +10,7 @@ import static org.mockito.Mockito.verify;
 import at.ac.uibk.gitsearch.GitsearchApp;
 import at.ac.uibk.gitsearch.repository.gitlab.GitLabRepository;
 import at.ac.uibk.gitsearch.repository.search.ElasticSearchRepository;
+import at.ac.uibk.gitsearch.repository.search.MetaDataRepository;
 import at.ac.uibk.gitsearch.repository.search.SearchRepositoryConstants;
 import at.ac.uibk.gitsearch.repository.search.testESService.ElasticSearchTestConfiguration;
 import at.ac.uibk.gitsearch.service.MailService;
@@ -28,8 +29,10 @@ import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
+import java.text.ParseException;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Optional;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Stream;
 import javax.el.MethodNotFoundException;
@@ -51,6 +54,8 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.boot.test.mock.mockito.MockBean;
+import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.security.core.userdetails.User;
 import org.springframework.security.test.context.support.WithMockUser;
 
 @SpringBootTest(classes = GitsearchApp.class)
@@ -67,6 +72,9 @@ public class GitlabEventServiceIT {
   @Autowired
   protected GitlabEventService eventService;
 
+  @Autowired
+  protected MetaDataRepository metaDataRepository;
+
   @MockBean
   private MailService mailService;
 
@@ -118,17 +126,25 @@ public class GitlabEventServiceIT {
 
   @Test
   @Timeout(value = 30, unit = TimeUnit.MINUTES)
-  void simplePermissionTest() throws StreamReadException, DatabindException, IOException, GitLabApiException {
+  @WithMockUser(value = "Michael Breu", authorities = "teacher/unauthenticatedteachers")
+  void simplePermissionTest() throws StreamReadException, DatabindException, IOException, GitLabApiException, ParseException {
     SystemHookEvent permissionCommitEvent = getPermissionCommitEvent();
     Mockito.reset(mailService);
     Mockito
       .when(mailService.sendEmail(Mockito.anyString(), Mockito.anyString(), Mockito.anyString(), Mockito.eq(false), Mockito.eq(true)))
       .thenReturn(Boolean.TRUE);
 
-    logger.info("starting handleGitLabEvent for {}", permissionCommitEvent);
+    logger.info("starting permissionCommitEvent for {}", permissionCommitEvent);
     eventService.handleGitLabEvent(permissionCommitEvent);
     eventService.waitForFinish();
-    logger.info("finished handleGitLabEvent for {}", permissionCommitEvent);
+
+    User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
+    metaDataRepository.getExerciseById("[274]", Optional.of(user));
+
+    final SearchResultDTO exercise = metaDataRepository.getExerciseById("[274]", Optional.of(user));
+    logger.info("finished permissionCommitEvent for {}", exercise);
+    assertThat(exercise.getProject().getGroups()).contains("teacher", "teacher/unauthenticatedteachers");
+    assertThat(exercise.getProject().getUsers()).contains("simon.priller@uibk.ac.at");
   }
 
   @Test
@@ -228,7 +244,7 @@ public class GitlabEventServiceIT {
   }
 
   @Test
-  @Timeout(value = 30, unit = TimeUnit.MINUTES)
+  @Timeout(value = 1, unit = TimeUnit.MINUTES)
   void simpleDeleteTest() throws StreamReadException, DatabindException, IOException, GitLabApiException, InterruptedException {
     assertThat(gitLabRepository.getAdminGitLabApi().getAuthToken())
       .describedAs("This test requires a valid admin access token")