diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 57d226e49c..1447102d06 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -4,9 +4,8 @@
-
-
-
+
+
@@ -211,7 +210,7 @@
-
+
1632420206392
@@ -367,7 +366,14 @@
1650113109971
-
+
+ 1650113251017
+
+
+
+ 1650113251017
+
+
@@ -405,7 +411,8 @@
-
+
+
diff --git a/core-java-modules/core-java-collections-list/src/test/java/com/ossez/list/RemoveFirstElementTest.java b/core-java-modules/core-java-collections-list/src/test/java/com/ossez/list/RemoveFirstElementTest.java
new file mode 100644
index 0000000000..9d0d300f76
--- /dev/null
+++ b/core-java-modules/core-java-collections-list/src/test/java/com/ossez/list/RemoveFirstElementTest.java
@@ -0,0 +1,63 @@
+package com.ossez.list;
+
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.TestInstance;
+
+import java.util.ArrayList;
+import java.util.LinkedList;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.*;
+
+/**
+ * List Remove Tes
+ *
+ * @author YuCheng Hu
+ */
+@TestInstance(TestInstance.Lifecycle.PER_CLASS)
+public class RemoveFirstElementTest {
+ private ArrayList list = new ArrayList();
+ private LinkedList linkedList = new LinkedList<>();
+
+
+ @BeforeAll
+ public void startup() {
+ list.add("cat");
+ list.add("dog");
+ list.add("pig");
+ list.add("cow");
+ list.add("goat");
+
+ linkedList.add("cat");
+ linkedList.add("dog");
+ linkedList.add("pig");
+ linkedList.add("cow");
+ linkedList.add("goat");
+ }
+
+ /**
+ * ArrayList remove first
+ */
+ @Test
+ public void testGivenList_whenRemoveFirst_thenRemoved() {
+ list.remove(0);
+
+ assertThat(list, hasSize(4));
+ assertThat(list, not(contains("cat")));
+ }
+
+ /**
+ * LinkedList remove first
+ */
+ @Test
+ public void testGivenLinkedList_whenRemoveFirst_thenRemoved() {
+
+ linkedList.removeFirst();
+
+
+ assertThat(linkedList, hasSize(4));
+ assertThat(linkedList, not(contains("cat")));
+ }
+
+}