{"id":123,"url":"https://patchwork.libcamera.org/api/1.1/patches/123/?format=json","web_url":"https://patchwork.libcamera.org/patch/123/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/1.1/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<20190101212947.28098-3-kieran.bingham@ideasonboard.com>","date":"2019-01-01T21:29:44","name":"[libcamera-devel,2/5] test: Use foreach iterators to simplify definitions","commit_ref":null,"pull_url":null,"state":"accepted","archived":false,"hash":"adfce7a436183f3b785ba6ca851ff7c738cbe9aa","submitter":{"id":4,"url":"https://patchwork.libcamera.org/api/1.1/people/4/?format=json","name":"Kieran Bingham","email":"kieran.bingham@ideasonboard.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/123/mbox/","series":[{"id":46,"url":"https://patchwork.libcamera.org/api/1.1/series/46/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=46","date":"2019-01-01T21:29:42","name":"test: Unit Test Improvements","version":1,"mbox":"https://patchwork.libcamera.org/series/46/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/123/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/123/checks/","tags":{},"headers":{"Return-Path":"<kieran.bingham@ideasonboard.com>","Received":["from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 5A46860B31\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue,  1 Jan 2019 22:29:52 +0100 (CET)","from localhost.localdomain\n\t(cpc89242-aztw30-2-0-cust488.18-1.cable.virginm.net [86.31.129.233])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id E13A71173;\n\tTue,  1 Jan 2019 22:29:51 +0100 (CET)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1546378192;\n\tbh=0PPjrVLrCoWuaTfUf6rg+LJHhko/rKtmyGUDjcCWOuo=;\n\th=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n\tb=Lhe2RfVDGpXlOrADadKSfbkOasa7Wcdi6c3uZfUkiw+iqX4XQlKlCgR90hFbtw+aS\n\t5brhHX1T9/qJK7MLAspqO51cnuHirEEsXiiaNgNC5WM5jWbf4nzRrS/aH+GLs/Aehn\n\txHba9z2ZHA27kRwPoDKrO4E3fXwWnTuiwP52XHCA=","From":"Kieran Bingham <kieran.bingham@ideasonboard.com>","To":"LibCamera Devel <libcamera-devel@lists.libcamera.org>","Date":"Tue,  1 Jan 2019 21:29:44 +0000","Message-Id":"<20190101212947.28098-3-kieran.bingham@ideasonboard.com>","X-Mailer":"git-send-email 2.17.1","In-Reply-To":"<20190101212947.28098-1-kieran.bingham@ideasonboard.com>","References":"<20190101212947.28098-1-kieran.bingham@ideasonboard.com>","MIME-Version":"1.0","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"8bit","Subject":"[libcamera-devel] [PATCH 2/5] test: Use foreach iterators to\n\tsimplify definitions","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.23","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","X-List-Received-Date":"Tue, 01 Jan 2019 21:29:52 -0000"},"content":"Create two arrays, to contain public and internal test targets, and use\nthe foreach iterators to automatically generate test output targets for\neach entry in each array.\n\nThe public tests array is linked only against public libcamera headers,\nwhile tests declared in the internal_tests will have access to\nnon-public API headers from within the libcamera sources.\n\nReviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>\nReviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>\nSigned-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>\n---\n test/meson.build | 31 ++++++++++++++++++++++---------\n 1 file changed, 22 insertions(+), 9 deletions(-)","diff":"diff --git a/test/meson.build b/test/meson.build\nindex 3b7591ad9204..bf8232f32787 100644\n--- a/test/meson.build\n+++ b/test/meson.build\n@@ -12,15 +12,28 @@ test_includes_internal = [\n     libcamera_internal_includes,\n ]\n \n-test_init = executable('test_init', 'init.cpp',\n-                       link_with : test_libraries,\n-                       include_directories : test_includes_public)\n+subdir('media_device')\n \n-list = executable('list', 'list.cpp',\n-                  link_with : test_libraries,\n-                  include_directories : test_includes_public)\n+public_tests = [\n+    ['test_init',       'init.cpp'],\n+    ['list',            'list.cpp'],\n+]\n \n-subdir('media_device')\n+internal_tests = [\n+]\n+\n+foreach t : public_tests\n+    exe = executable(t[0], t[1],\n+                     link_with : test_libraries,\n+                     include_directories : test_includes_public)\n+\n+    test(t[0], exe)\n+endforeach\n+\n+foreach t : internal_tests\n+    exe = executable(t[0], t[1],\n+                     link_with : test_libraries,\n+                     include_directories : test_includes_internal)\n \n-test('Initialisation test', test_init)\n-test('List Camera API tests', list)\n+    test(t[0], exe)\n+endforeach\n","prefixes":["libcamera-devel","2/5"]}