diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/RecipeTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/RecipeTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..01f8b12bd58277e9467b296ea7b9d7f402d00395
--- /dev/null
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/RecipeTest.java
@@ -0,0 +1,61 @@
+package ntnu.idatt2016.v233.SmartMat.entity;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class RecipeTest {
+
+    @Test
+    void testEquals() {
+        Recipe recipe = Recipe.builder()
+                .id(1)
+                .name("test")
+                .build();
+
+        Recipe recipe1 = Recipe.builder()
+                .id(1)
+                .name("test")
+                .build();
+
+        assertEquals(recipe, recipe1);
+
+        recipe1.setId(2);
+
+        assertNotEquals(recipe, recipe1);
+
+        recipe1.setId(1);
+
+        assertEquals(recipe, recipe);
+
+        assertNotEquals(recipe, null);
+
+        assertNotEquals(recipe, new Object());
+
+        assertNotEquals(recipe, new Recipe());
+
+        recipe1.setName("test1");
+
+        assertNotEquals(recipe, recipe1);
+
+    }
+
+    @Test
+    void testHashCode() {
+        Recipe recipe = Recipe.builder()
+                .id(1)
+                .name("test")
+                .build();
+
+        Recipe recipe1 = Recipe.builder()
+                .id(1)
+                .name("test")
+                .build();
+
+        assertEquals(recipe.hashCode(), recipe1.hashCode());
+
+        recipe1.setId(2);
+
+        assertNotEquals(recipe.hashCode(), recipe1.hashCode());
+    }
+}
\ No newline at end of file
diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/WasteTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/WasteTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..7f8a08621cf6b3b0f77818103a017bf8d6477d61
--- /dev/null
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/WasteTest.java
@@ -0,0 +1,73 @@
+package ntnu.idatt2016.v233.SmartMat.entity;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class WasteTest {
+
+    @Test
+    void testEquals() {
+        Waste waste = Waste.builder()
+                .wasteId(1)
+                .amount(1)
+                .build();
+
+        Waste waste1 = Waste.builder()
+                .wasteId(1)
+                .amount(1)
+                .build();
+
+        assertEquals(waste, waste1);
+
+        waste1.setAmount(2);
+
+        assertNotEquals(waste, waste1);
+
+        waste1.setAmount(1);
+
+        assertEquals(waste, waste);
+
+        assertNotEquals(waste, null);
+
+        assertNotEquals(waste, new Object());
+
+        assertNotEquals(waste, new Waste());
+
+        waste1.setWasteId(2);
+
+        assertNotEquals(waste, waste1);
+
+        waste1.setWasteId(1);
+
+        assertEquals(waste, waste1);
+
+    }
+
+    @Test
+    void testHashCode() {
+        Waste waste = Waste.builder()
+                .wasteId(1)
+                .amount(1)
+                .build();
+
+        Waste waste1 = Waste.builder()
+                .wasteId(1)
+                .amount(1)
+                .build();
+
+        assertEquals(waste.hashCode(), waste1.hashCode());
+
+        waste1.setAmount(2);
+
+        assertNotEquals(waste.hashCode(), waste1.hashCode());
+
+        waste1.setAmount(1);
+
+        assertEquals(waste.hashCode(), waste.hashCode());
+
+        waste1.setWasteId(2);
+
+        assertNotEquals(waste.hashCode(), waste1.hashCode());
+    }
+}
\ No newline at end of file
diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/AchievementTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/AchievementTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..a3c0e217671310e670b716512f9fbdae829a359f
--- /dev/null
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/AchievementTest.java
@@ -0,0 +1,54 @@
+package ntnu.idatt2016.v233.SmartMat.entity.group;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class AchievementTest {
+
+    @Test
+    void testEquals() {
+        Achievement achievement = Achievement.builder()
+                .achievementName("test")
+                .build();
+
+        Achievement achievement1 = Achievement.builder()
+                .achievementName("test")
+                .build();
+
+        assertEquals(achievement, achievement1);
+
+        achievement1.setAchievementName("test1");
+
+        assertNotEquals(achievement, achievement1);
+
+        achievement1.setAchievementName("test");
+
+        assertEquals(achievement, achievement);
+
+        assertNotEquals(achievement, null);
+
+        assertNotEquals(achievement, new Object());
+
+        assertNotEquals(achievement, new Achievement());
+
+
+    }
+
+    @Test
+    void testHashCode() {
+        Achievement achievement = Achievement.builder()
+                .achievementName("test")
+                .build();
+
+        Achievement achievement1 = Achievement.builder()
+                .achievementName("test")
+                .build();
+
+        assertEquals(achievement.hashCode(), achievement1.hashCode());
+
+        achievement1.setAchievementName("test1");
+
+        assertNotEquals(achievement.hashCode(), achievement1.hashCode());
+    }
+}
\ No newline at end of file
diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/FridgeTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/FridgeTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..7b7d082140c9935ada7fcde73e09b1e122fbe5ec
--- /dev/null
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/FridgeTest.java
@@ -0,0 +1,54 @@
+package ntnu.idatt2016.v233.SmartMat.entity.group;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class FridgeTest {
+
+    @Test
+    void testEquals() {
+        Fridge fridge = Fridge.builder()
+                .fridgeId(1)
+                .build();
+
+        Fridge fridge1 = Fridge.builder()
+                .fridgeId(1)
+                .build();
+
+        assertEquals(fridge, fridge1);
+
+        fridge1.setFridgeId(2);
+
+        assertNotEquals(fridge, fridge1);
+
+        assertEquals(fridge, fridge);
+
+        assertNotEquals(fridge, null);
+
+        assertNotEquals(fridge, new Object());
+
+        assertNotEquals(fridge, new Fridge());
+
+        fridge1.setFridgeId(1);
+
+        assertEquals(fridge, fridge1);
+    }
+
+    @Test
+    void testHashCode() {
+        Fridge fridge = Fridge.builder()
+                .fridgeId(1)
+                .build();
+
+        Fridge fridge1 = Fridge.builder()
+                .fridgeId(1)
+                .build();
+
+        assertEquals(fridge.hashCode(), fridge1.hashCode());
+
+        fridge1.setFridgeId(2);
+
+        assertNotEquals(fridge.hashCode(), fridge1.hashCode());
+    }
+}
\ No newline at end of file
diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/GroupTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/GroupTest.java
index f74cf33e59a9fbd5087e877a1d9cfd5660250e0e..9aef6c2a97f3e278e4555b3d1bf9907d32b7c617 100644
--- a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/GroupTest.java
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/GroupTest.java
@@ -50,4 +50,44 @@ class GroupTest {
         assertEquals("Group(groupId=1, level=0, points=0, groupName=Test Group, linkCode=null, open=null, shoppingList=null, user=null, fridge=null, achievements=null)",
                 group.toString());
     }
+
+    @Test
+    void builder() {
+        Group.GroupBuilder builder = Group.builder();
+        builder.groupName("Test Group");
+        builder.groupId(1L);
+        builder.user(null);
+        builder.fridge(null);
+        builder.shoppingList(null);
+        builder.achievements(null);
+        builder.level(0);
+        builder.points(0);
+        builder.linkCode(null);
+        builder.open(null);
+
+        assertNotNull(builder.toString());
+
+        Group group = builder
+                .build();
+
+        assertEquals("Test Group", group.getGroupName());
+        assertEquals(1L, group.getGroupId());
+
+        assertNull(group.getUser());
+
+        assertNull(group.getFridge());
+
+        assertNull(group.getShoppingList());
+
+        assertNull(group.getAchievements());
+
+        assertEquals(0, group.getLevel());
+
+        assertEquals(0, group.getPoints());
+
+        assertNull(group.getLinkCode());
+
+        assertNull(group.getOpen());
+
+    }
 }
\ No newline at end of file
diff --git a/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/UserGroupIdTest.java b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/UserGroupIdTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..6f8c1b6a5952d975bf47097f4ca0d3a4e5116465
--- /dev/null
+++ b/src/test/java/ntnu/idatt2016/v233/SmartMat/entity/group/UserGroupIdTest.java
@@ -0,0 +1,57 @@
+package ntnu.idatt2016.v233.SmartMat.entity.group;
+
+import org.junit.jupiter.api.Test;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+class UserGroupIdTest {
+
+    @Test
+    void testEquals() {
+        UserGroupId userGroupId = UserGroupId.builder()
+                .groupId(1)
+                .username("test")
+                .build();
+
+        UserGroupId userGroupId1 = UserGroupId.builder()
+                .groupId(1)
+                .username("test")
+                .build();
+
+        assertEquals(userGroupId, userGroupId1);
+
+        userGroupId1.setGroupId(2);
+
+        assertNotEquals(userGroupId, userGroupId1);
+
+        userGroupId1.setGroupId(1);
+
+        assertEquals(userGroupId, userGroupId);
+
+        assertNotEquals(userGroupId, null);
+
+        assertNotEquals(userGroupId, new Object());
+
+        assertNotEquals(userGroupId, new UserGroupId());
+
+    }
+
+    @Test
+    void testHashCode() {
+        UserGroupId userGroupId = UserGroupId.builder()
+                .groupId(1)
+                .username("test")
+                .build();
+
+        UserGroupId userGroupId1 = UserGroupId.builder()
+                .groupId(1)
+                .username("test")
+                .build();
+
+        assertEquals(userGroupId.hashCode(), userGroupId1.hashCode());
+
+        userGroupId1.setGroupId(2);
+
+        assertNotEquals(userGroupId.hashCode(), userGroupId1.hashCode());
+    }
+}
\ No newline at end of file