diff --git a/tests/unit_tests.c b/tests/unit_tests.c
index a0aa732e8a1bec97c7e71914cb5c827991d97198..9f28cc4d66a580ddd2ed382da42db2cc9e6f02a9 100644
--- a/tests/unit_tests.c
+++ b/tests/unit_tests.c
@@ -13,11 +13,13 @@
 // Import headers.
 #include <fenv.h>
 #include <CUnit/Basic.h>
+#include "../src/argparse.h"
 #include "../src/compute.h"
 #include "../src/helper.h"
 
 
 // Method Declaration.
+void test_argparse();
 void test_computation_struct();
 void test_x_plus_computation();
 void test_x_minus_computation();
@@ -50,7 +52,8 @@ int main(int argc, char* argv[]) {
     }
 
     // Now add tests to given suite.
-    if ((CU_add_test(test_suite, "test_computation_struct", test_computation_struct) == NULL) ||
+    if ((CU_add_test(test_suite, "test_argparse", test_argparse) == NULL) ||
+        (CU_add_test(test_suite, "test_computation_struct", test_computation_struct) == NULL) ||
         (CU_add_test(test_suite, "test_x_plus_computation", test_x_plus_computation) == NULL) ||
         (CU_add_test(test_suite, "test_x_minus_computation", test_x_minus_computation) == NULL)) {
 
@@ -66,6 +69,27 @@ int main(int argc, char* argv[]) {
 }
 
 
+/**
+ * Tests creation and return values of argparse.
+ */
+void test_argparse(void) {
+    int arg_count = 2;
+    char *prologue = "Test Prologue (Title)";
+    char *description = "Test Description";
+    char *epilogue = "Test Epilogue";
+
+    ARGPARSE *argparse = argparse_new(prologue, description, epilogue, arg_count);
+    CU_ASSERT_PTR_NOT_NULL(argparse);
+    CU_ASSERT_EQUAL(argparse->prologue, prologue);
+    CU_ASSERT_EQUAL(argparse->description, description);
+    CU_ASSERT_EQUAL(argparse->epilogue, epilogue);
+    CU_ASSERT_EQUAL(argparse->arguments_size, (arg_count + 1));
+
+    argparse_free(argparse);
+
+}
+
+
 /**
  * Tests that the computation struct will create and free properly.
  */