[Meson] add unittest
authorJaeyun <jy1210.jung@samsung.com>
Fri, 7 Dec 2018 10:40:57 +0000 (19:40 +0900)
committerMyungJoo Ham <myungjoo.ham@gmail.com>
Sat, 8 Dec 2018 09:00:59 +0000 (18:00 +0900)
check dependency of gtest and add exe to run unittest
(command '$ ninja test' will build and start gtest)

Signed-off-by: Jaeyun Jung <jy1210.jung@samsung.com>
tests/meson.build

index 389daf1..d26030a 100644 (file)
@@ -1 +1,43 @@
 subdir('nnstreamer_tensors/tensors_test')
+
+gtest_dep = dependency('gtest', main: false, required: true)
+
+if gtest_dep.found()
+  # This custom filter is used in unittest_sink.
+  nnscustom_framecounter = shared_library('nnscustom_framecounter',
+    'nnstreamer_sink/nnscustom_framecounter.c',
+    c_args: nnstreamer_base_args,
+    dependencies: [nnstreamer_deps],
+    objects: [tensor_commonOBJ],
+    include_directories: nnstreamer_inc)
+
+  # Run unittest_common
+  unittest_common = executable('unittest_common',
+    'common/unittest_common.cpp',
+    cpp_args: nnstreamer_base_args,
+    dependencies: [nnstreamer_deps, gtest_dep],
+    objects: [tensor_commonOBJ],
+    include_directories: nnstreamer_inc)
+
+  test('unittest_common', unittest_common)
+
+  # Run unittest_sink
+  unittest_sink = executable('unittest_sink',
+    'nnstreamer_sink/unittest_sink.cpp',
+    cpp_args: nnstreamer_base_args,
+    dependencies: [nnstreamer_deps, gtest_dep, gst_app_dep],
+    objects: [tensor_commonOBJ],
+    include_directories: nnstreamer_inc)
+
+  test('unittest_sink', unittest_sink, args: ['--gst-plugin-path=../'])
+
+  # Run unittest_plugins
+  unittest_plugins = executable('unittest_plugins',
+    'nnstreamer_plugins/unittest_plugins.cpp',
+    cpp_args: nnstreamer_base_args,
+    dependencies: [nnstreamer_deps, gtest_dep, gst_check_dep],
+    objects: [tensor_commonOBJ, tensor_transformOBJ],
+    include_directories: nnstreamer_inc)
+
+  test('unittest_plugins', unittest_plugins, args: ['--gst-plugin-path=../'])
+endif