diff --git a/test/graph_test.cpp b/test/graph_test.cpp
index 0892e3a57ea4ce6acebda7577830a9ba1917960b..a6ceac7512ef9691097b7d6d98b380aa367183cd 100644
--- a/test/graph_test.cpp
+++ b/test/graph_test.cpp
@@ -2,10 +2,22 @@
 #include <catch2/catch.hpp>
 
 #include <gp-bnb/graph.hpp>
-//#include <gp-bnb/MetisReader.hpp>
 
 // Tests for Graph data structure
 
+// Example 1.
 TEST_CASE("GraphStructureTest") {
 
+    // Petersen Graph
+    std::vector<std::vector<unsigned int>> adjacencies {
+        {2, 3, 4}, {1, 3, 7},
+        {2, 4, 8}, {3, 5, 9},
+        {1, 4, 10}, {1, 8, 9},
+        {2, 9, 10}, {3, 6, 10},
+        {4, 6, 7}, {5, 7, 8}
+    };
+    
+    graph g = graph(adjacencies);
+
+    REQUIRE(g.num_nodes() == 10);
 }
\ No newline at end of file
diff --git a/test/meson.build b/test/meson.build
index 8fbba704b2920472a93de8e9cd9b9313ef15412f..7989abff765195ba11525703c5f5719a406d05b9 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -3,6 +3,10 @@ testexe = executable(
     'graph_test.cpp',
     'reader_test.cpp',
     'bnb_test.cpp', # tests source files to be compiled
+    '../bnb/graph.cpp',
+	'../bnb/partition.cpp',
+	'../bnb/metis_reader.cpp',
+	'../bnb/bnb.cpp',
     include_directories : inc)  # declared include directories in root :code:`meson.build`
 
 # test execution 
diff --git a/test/reader_test.cpp b/test/reader_test.cpp
index 5498bd064a01e8f7de6962379f32e4e80558bc02..d0ad476bc1e9447844048b43d5c1b23d9a649428 100644
--- a/test/reader_test.cpp
+++ b/test/reader_test.cpp
@@ -1,10 +1,14 @@
 #include <catch2/catch.hpp>
 
 #include <gp-bnb/graph.hpp>
-//#include <gp-bnb/MetisReader.hpp>
+#include <gp-bnb/metis_reader.hpp>
 
 // Tests for MetisReader
 
 TEST_CASE("MetisReaderTest") {
     
+    std::string graphFile = "../test/inputs/tiny_01.graph";
+    graph g = metis_reader().read(graphFile);
+
+    REQUIRE(g.num_nodes() == 7);
 }
\ No newline at end of file