1# Select only the config options that are necessary for the test.
2# I.e. don't just copy this config and its comments into your new test.
3#
4# If the test is a stress or robustness test, it is also a good idea to set the
5# stack resources (e.g. number of buffers, roles) to the lowest value possible.
6
7CONFIG_BT=y
8CONFIG_BT_DEVICE_NAME="sample-test"
9CONFIG_BT_PERIPHERAL=y
10CONFIG_BT_CENTRAL=y
11
12# Dependency of testlib/adv and testlib/scan.
13CONFIG_BT_EXT_ADV=y
14
15CONFIG_BT_GATT_CLIENT=y
16CONFIG_BT_GATT_AUTO_DISCOVER_CCC=y
17
18# This is the object of the test. Commenting it out should make the test fail.
19CONFIG_BT_GATT_ENFORCE_SUBSCRIPTION=n
20
21# Always enable asserts in tests, they're virtually free on native targets.
22CONFIG_ASSERT=y
23
24# The same applies for logs.
25# Only enable the INFO level though, as a contributor that isn't familiar with
26# the test will have a hard time understanding what the problem is if it's
27# buried in thousands of lines of debug logs.
28CONFIG_LOG=y
29CONFIG_LOG_RUNTIME_FILTERING=y
30
31# Those two options together add the thread name in every log print, very useful
32# for debugging if you expect the same functions to be called from different
33# threads.
34CONFIG_THREAD_NAME=y
35CONFIG_LOG_THREAD_ID_PREFIX=y
36
37# BT_TESTING provides additional hooks in the stack to inspect or modify state.
38# It is not strictly necessary, leave it disabled if you don't need it.
39# CONFIG_BT_TESTING=y
40
41# Will call `raise(SIGTRAP)` on fatal error.
42# If a debugger is connected to the app, it will automatically be stopped.
43# Makes retrieving an exception stacktrace very easy.
44CONFIG_ARCH_POSIX_TRAP_ON_FATAL=y
45
46# It's OK to leave useful debug options commented out, with a short comment
47# explaining why they might be useful. That way, someone trying to debug your
48# test will get a headstart.
49# CONFIG_BT_CONN_LOG_LEVEL_DBG=y
50# CONFIG_BT_ATT_LOG_LEVEL_DBG=y
51# CONFIG_BT_GATT_LOG_LEVEL_DBG=y
52
53# For this particular test, the LOG_INF printed on `bt_enable()` are just noise.
54# They might matter for other tests though. They are printed by the
55# "bt_hci_core" domain, and HCI_CORE doesn't use LOG_INF very much anyways.
56CONFIG_BT_HCI_CORE_LOG_LEVEL_WRN=y
57