Initial end-to-end simulation support

Change-Id: Ifcdfb8e0ee3e40b9071ade2ff5dcab5037ec7887
Signed-off-by: Zane Shelley <zshelle@us.ibm.com>
diff --git a/test/simulator/meson.build b/test/simulator/meson.build
index 5b8a228..88de4b8 100644
--- a/test/simulator/meson.build
+++ b/test/simulator/meson.build
@@ -1,14 +1,27 @@
-sim_sources = [
-    'hei_sim_main.cpp',
-    'hei_sim_user_interface.cpp',
+# Simulator sources
+sim_src = [
+    'simulator.cpp',
+    'user_interface.cpp',
+]
+
+# Isolator sources
+iso_src = [
     '../../src/isolator/hei_isolator.cpp',
     '../../src/isolator/hei_isolation_node.cpp',
     '../../src/register/hei_hardware_register.cpp',
     '../../src/util/hei_bit_string.cpp',
 ]
 
-sim = executable('simulator', sim_sources, \
-                    include_directories: incdir)
+# Test cases
+test_src = [
+    'sample_test_case.cpp',
+]
 
-test('simulator', sim)
+gtest = dependency('gtest', main : true, required : false, method : 'system')
+
+if gtest.found()
+    test('simulator', \
+         executable('simulator', sim_src, iso_src, test_src, \
+                    dependencies : gtest, include_directories: incdir))
+endif