Skip to content

Commit 399b789

Browse files
tests: zbus: add multidomain IPC backend test suite
Add comprehensive test suite for the zbus multidomain IPC backend. The implementation includes a mock IPC backend to enable isolated testing without requiring actual hardware communication between cores. Signed-off-by: Trond F. Christiansen <[email protected]>
1 parent 0d5670e commit 399b789

File tree

8 files changed

+878
-0
lines changed

8 files changed

+878
-0
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#
2+
# Copyright (c) 2025 Nordic Semiconductor ASA
3+
#
4+
# SPDX-License-Identifier: Apache-2.0
5+
#
6+
7+
cmake_minimum_required(VERSION 3.20.0)
8+
9+
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
10+
project(test_channel_name)
11+
12+
FILE(GLOB app_sources src/main.c src/mock_ipc.c)
13+
target_sources(app PRIVATE ${app_sources})
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
/*
2+
* Copyright (c) 2025 Nordic Semiconductor ASA
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
/ {
8+
fake_ipc: fake_ipc_device {
9+
compatible = "fake-ipc";
10+
status = "okay";
11+
};
12+
};
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
description: Fake IPC backend for testing zbus multidomain
2+
3+
compatible: "fake-ipc"
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#
2+
# Copyright (c) 2025 Nordic Semiconductor ASA
3+
#
4+
# SPDX-License-Identifier: Apache-2.0
5+
#
6+
7+
CONFIG_LOG=y
8+
CONFIG_CRC=y
9+
CONFIG_ZBUS=y
10+
CONFIG_ZBUS_CHANNEL_NAME=y
11+
CONFIG_ZBUS_MSG_SUBSCRIBER=y
12+
13+
CONFIG_ZBUS_MULTIDOMAIN=y
14+
CONFIG_ZBUS_MULTIDOMAIN_IPC=y
15+
CONFIG_ZBUS_MULTIDOMAIN_LOG_LEVEL_INF=y
16+
CONFIG_ZBUS_MULTIDOMAIN_SENT_MSG_ACK_TIMEOUT=10
17+
CONFIG_ZBUS_MULTIDOMAIN_SENT_MSG_ACK_TIMEOUT_MAX=100
18+
CONFIG_ZBUS_MULTIDOMAIN_MAX_TRANSMIT_ATTEMPTS=5
19+
CONFIG_ZBUS_MULTIDOMAIN_SENT_MSG_POOL_SIZE=16
20+
21+
CONFIG_ZTEST=y
22+
CONFIG_ASSERT=n
23+
CONFIG_ZTEST_MOCKING=y
24+
25+
# IPC service support
26+
CONFIG_IPC_SERVICE=y
27+
CONFIG_MBOX=y

0 commit comments

Comments
 (0)