summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorKieran Bingham <kieran.bingham@ideasonboard.com>2019-01-01 14:36:35 +0000
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2019-01-02 11:07:27 +0200
commit5802259b3c6ee48d1ee603595d462306f9293605 (patch)
tree18e715c427a63b9c55f002a54ebf0bd03df1359c /test
parenta9fe3adc4f1c4b7ab90e0d8ada844aa7e52b8a3f (diff)
test: Use foreach iterators to simplify definitions
Create two arrays, to contain public and internal test targets, and use the foreach iterators to automatically generate test output targets for each entry in each array. The public tests array is linked only against public libcamera headers, while tests declared in the internal_tests will have access to non-public API headers from within the libcamera sources. Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'test')
-rw-r--r--test/meson.build27
1 files changed, 22 insertions, 5 deletions
diff --git a/test/meson.build b/test/meson.build
index 9fac7e39..ae8b3fb9 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -12,10 +12,27 @@ test_includes_internal = [
libcamera_internal_includes,
]
-list = executable('list', 'list.cpp',
- link_with : test_libraries,
- include_directories : test_includes_public)
-
subdir('media_device')
-test('List Camera API tests', list)
+public_tests = [
+ ['list', 'list.cpp'],
+]
+
+internal_tests = [
+]
+
+foreach t : public_tests
+ exe = executable(t[0], t[1],
+ link_with : test_libraries,
+ include_directories : test_includes_public)
+
+ test(t[0], exe)
+endforeach
+
+foreach t : internal_tests
+ exe = executable(t[0], t[1],
+ link_with : test_libraries,
+ include_directories : test_includes_internal)
+
+ test(t[0], exe)
+endforeach