diff --git a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoService.java b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoService.java
index 1bd8c29b51978c104f872170ec625ecc30784f19..2704cedcc91bf20582886c7a3beaac41f01e187f 100644
--- a/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoService.java
+++ b/src/main/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoService.java
@@ -8,6 +8,7 @@ import ntnu.idatt2016.v233.SmartMat.entity.group.UserGroupAsso;
 import ntnu.idatt2016.v233.SmartMat.entity.user.User;
 import ntnu.idatt2016.v233.SmartMat.repository.group.GroupRepository;
 import ntnu.idatt2016.v233.SmartMat.repository.group.UserGroupAssoRepository;
+import ntnu.idatt2016.v233.SmartMat.repository.user.UserRepository;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -19,6 +20,7 @@ public class UserGroupAssoService {
 
     private UserGroupAssoRepository userGroupAssoRepository;
     private GroupRepository groupRepository;
+    private final UserRepository userRepository;
 
     public void save(User user, Group group, boolean primaryGroup) {
         UserGroupAsso userGroupTable1 = new UserGroupAsso();
@@ -35,6 +37,9 @@ public class UserGroupAssoService {
         user.addGroup(userGroupTable1);
         group.addUser(userGroupTable1);
 
+        groupRepository.save(group);
+        userRepository.save(user);
+
     }
 
     /**
diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoServiceTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoServiceTest.java
index ace9e77b5f58719144341314e420615051286201..57d207c850fbdefa78023197afb42e163ef72853 100644
--- a/src/test/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoServiceTest.java
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/service/group/UserGroupAssoServiceTest.java
@@ -4,60 +4,61 @@ import ntnu.idatt2016.v233.SmartMat.entity.group.Group;
 import ntnu.idatt2016.v233.SmartMat.entity.group.UserGroupId;
 import ntnu.idatt2016.v233.SmartMat.entity.group.UserGroupAsso;
 import ntnu.idatt2016.v233.SmartMat.entity.user.User;
+import ntnu.idatt2016.v233.SmartMat.repository.group.GroupRepository;
 import ntnu.idatt2016.v233.SmartMat.repository.group.UserGroupAssoRepository;
+import ntnu.idatt2016.v233.SmartMat.repository.user.UserRepository;
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 import org.mockito.junit.jupiter.MockitoExtension;
 
-import static org.junit.jupiter.api.Assertions.*;
 import static org.mockito.Mockito.*;
 
 @ExtendWith(MockitoExtension.class)
-class UserGroupAssoServiceTest {
+public class UserGroupAssoServiceTest {
 
     @Mock
-    UserGroupAssoRepository userGroupAssoRepository;
+    private UserGroupAssoRepository userGroupAssoRepository;
 
-    @InjectMocks
-    UserGroupAssoService userGroupAssoService;
-
-    @Test
-    void save() {
-
-        UserGroupAsso tempAsso = new UserGroupAsso();
-
-        User user = new User();
-        user.setFirstName("test");
-        user.setLastName("test");
-        user.setUsername("test");
-
-        Group tempgroup = new Group();
-        tempgroup.setGroupName("test");
-
-        tempAsso.setId(UserGroupId.builder().username(user.getUsername())
-                .groupId(tempgroup.getGroupId()).build());
-        tempAsso.setGroup(tempgroup);
-        tempAsso.setUser(user);
-        tempAsso.setPrimaryGroup(true);
-
-        tempgroup.addUser(tempAsso);
-        user.addGroup(tempAsso);
-
-
-        when(userGroupAssoRepository.save(tempAsso))
-                .thenReturn(tempAsso);
-
-
-        userGroupAssoService.save(user, tempgroup, true);
-
-        //make sure the correct assisiation is saved
-        verify(userGroupAssoRepository, times(1)).save(tempAsso);
+    @Mock
+    private GroupRepository groupRepository;
 
+    @Mock
+    private UserRepository userRepository;
 
-        assertEquals(user.getGroup().get(0), tempgroup.getUser().get(0));
+    @InjectMocks
+    private UserGroupAssoService userGroupAssoService;
+
+    private User user;
+    private Group group;
+    private UserGroupAsso userGroupAsso;
+
+    @BeforeEach
+    public void setUp() {
+        user = new User();
+        user.setUsername("testUser");
+
+        group = new Group();
+        group.setGroupId(1L);
+
+        userGroupAsso = new UserGroupAsso();
+        userGroupAsso.setUser(user);
+        userGroupAsso.setGroup(group);
+        userGroupAsso.setPrimaryGroup(true);
+        userGroupAsso.setId(UserGroupId.builder()
+                .groupId(group.getGroupId())
+                .username(user.getUsername())
+                .build());
+    }
 
+    @Test
+    public void testSave() {
+        userGroupAssoService.save(user, group, true);
 
+        verify(userGroupAssoRepository, times(1)).save(userGroupAsso);
+        verify(userRepository, times(1)).save(user);
+        verify(groupRepository, times(1)).save(group);
     }
-}
\ No newline at end of file
+}