From: Bastien Nocera <hadess@hadess.net>
To: linux-bluetooth@vger.kernel.org
Subject: [PATCH BlueZ v9 08/15] unit: Run test-bap tests concurrently
Date: Fri, 24 Apr 2026 11:11:11 +0200 [thread overview]
Message-ID: <20260424091324.3097084-9-hadess@hadess.net> (raw)
In-Reply-To: <20260424091324.3097084-1-hadess@hadess.net>
---
meson.build | 2 +-
unit/meson.build | 25 ++++++++++++++++++++++---
unit/unittest_list.sh | 15 +++++++++++++++
3 files changed, 38 insertions(+), 4 deletions(-)
create mode 100644 unit/unittest_list.sh
diff --git a/meson.build b/meson.build
index f716eae1f063..586b69459d8a 100644
--- a/meson.build
+++ b/meson.build
@@ -285,6 +285,7 @@ endif
if rst2man.found()
subdir('doc')
endif
+sh = find_program('sh', required: true)
if get_option('tests').allowed()
subdir('test')
subdir('unit')
@@ -292,7 +293,6 @@ endif
# Fix permissions on install
install = find_program('install')
-sh = find_program('sh')
if get_option('daemon').enabled()
meson.add_install_script(sh, '-c', 'install -dm755 ${DESTDIR}/' + configdir)
endif
diff --git a/unit/meson.build b/unit/meson.build
index c8198574147d..1bd3b7a85992 100644
--- a/unit/meson.build
+++ b/unit/meson.build
@@ -7,7 +7,6 @@ tests1 = [
[ 'test-avrcp.c', '../src/log.c', 'avctp.c', 'avrcp-lib.c' ],
[ 'test-lib.c' ],
[ 'test-gatt.c' ],
- [ 'test-bap.c' ],
[ 'test-micp.c' ],
[ 'test-bass.c' ],
[ 'test-vcp.c' ],
@@ -39,6 +38,26 @@ foreach t: tests1
endforeach
tests2 = [
+ [ 'test-bap.c' ],
+]
+
+unittest_list = find_program('unittest_list.sh')
+
+foreach t: tests2
+ test_name = t[0].substring(0, -2)
+ exe = executable(test_name,
+ sources: t,
+ dependencies: [ libshared_glib_dep, libbluetooth_internal_dep ],
+ )
+
+ r = run_command(sh, unittest_list, t, check: true)
+ unit_tests = r.stdout().strip().split(' ')
+ foreach ut: unit_tests
+ test(ut, exe, args: [ '-p', ut ])
+ endforeach
+endforeach
+
+tests3 = [
[ 'test-textfile.c', '../src/textfile.c' ],
[ 'test-crc.c', '../monitor/crc.c' ],
[ 'test-crypto.c' ],
@@ -54,7 +73,7 @@ tests2 = [
]
if ical_dep.found()
- tests2 += [
+ tests3 += [
[ 'test-gobex.c', 'util.c', gobex_sources ],
[ 'test-gobex-packet.c', 'util.c', gobex_sources ],
[ 'test-gobex-header.c', 'util.c', gobex_sources ],
@@ -63,7 +82,7 @@ if ical_dep.found()
]
endif
-foreach t: tests2
+foreach t: tests3
test_name = t[0].substring(0, -2)
exe = executable(test_name,
sources: t,
diff --git a/unit/unittest_list.sh b/unit/unittest_list.sh
new file mode 100644
index 000000000000..c478edc9d3e4
--- /dev/null
+++ b/unit/unittest_list.sh
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+if [ $# -lt 1 ] ; then
+ echo "Usage: $0 FILE..."
+ exit 1
+fi
+
+TESTS=$(grep '^[[:space:]]*define_test[_a-z]*("' $* | cut -d \" -f 2 | cut -d " " -f 1)
+if [ -z "$TESTS" ] ; then
+ TESTS=$(grep '^[[:space:]]*tester_add("' $* | cut -d \" -f 2 | cut -d " " -f 1)
+fi
+if [ -z "$TESTS" ] ; then
+ TESTS=$(grep '^[[:space:]]*g_test_add_*func("' $* | cut -d \" -f 2 | cut -d " " -f 1)
+fi
+echo $TESTS
--
2.53.0
next prev parent reply other threads:[~2026-04-24 9:13 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-24 9:11 [PATCH BlueZ v9 00/15] Add meson build system and HTML docs Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 01/15] build: Add meson wrap for libell Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 02/15] build: Add meson build system Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 03/15] build: Separate systemd and libsystemd dependencies Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 04/15] tools: Install gatttool if deprecated tools are enabled Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 05/15] tools: Install avinfo tool by default Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 06/15] emulator: Install the emulator if built Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 07/15] build: Add option to allow disabling bluetoothd Bastien Nocera
2026-04-24 9:11 ` Bastien Nocera [this message]
2026-04-24 9:11 ` [PATCH BlueZ v9 09/15] unit: Make gobex-transfer tests run concurrently Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 10/15] build: Only build profiles if the daemon is built Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 11/15] build: Only build gdbus library if there is a user Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 12/15] unit: Add integration tests Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 13/15] doc: Add HTML documentation Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 14/15] github: Add docs deployment Bastien Nocera
2026-04-24 9:11 ` [PATCH BlueZ v9 15/15] doc: Add introduction to GATT Bastien Nocera
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260424091324.3097084-9-hadess@hadess.net \
--to=hadess@hadess.net \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox