Skip to content

Upmerge 14 may 2025#27

Merged
AyturkDuzen merged 128 commits into
nrfconnect:masterfrom
AyturkDuzen:upmerge_14_May_2025
May 14, 2025
Merged

Upmerge 14 may 2025#27
AyturkDuzen merged 128 commits into
nrfconnect:masterfrom
AyturkDuzen:upmerge_14_May_2025

Conversation

@AyturkDuzen
Copy link
Copy Markdown
Member

sync nrfconnect/auto-pts following nrfconnect/sdk-nrf#22073

mkasenberg and others added 30 commits March 31, 2025 13:18
Previously a magic tag without test cases specified was ignored. Now a default
list of test cases can be specified to perform a smoke test.
PR job can be configured to run only limited number of test cases:
'test_case_limit_per_comment': 100
The list of skipped test cases will be printed in a PR comment.
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
For BR support, if the field "Address_Type" of the command is "0xe0",
it means that the address is a BR address and the command should be
transmitted on the BR transport.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
If the address type is bigger than 0x7F, it will be converted into two
bytes.

Use `struct.pack('B', pts_addr_type_get(bd_addr_type))` to covert the
address type instead of
`chr(pts_addr_type_get(bd_addr_type)).encode('utf-8')`.

Use `struct.pack('B', bd_addr_type)` to covert the address type
instead of `chr(bd_addr_type).encode('utf-8')`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
For default IO capability IOCap.keyboard_display, the passkey confirm
is required but no MMI prompted.

No input and output IO capability is required by case
GAP/MOD/NBON/BV-03-C. So the passkey confirm will be avoid in pairing.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Add a function `l2cap_br_listen`. It is used to enable L2CAP server.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Update TSPX_psm to `0x1001`.
Update TSPX_psm_2 to `0x2001`.
Update TSPX_delete_link_key to `FLASE`.
Update TSPX_delete_ltk to `FALSE`.

Register L2CAP Service.
Initialize L2CAP Service.
Initialize L2CAP server.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
It is required by GAP/IDLE/BON/BV-02-C.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
It is required by GAP/IDLE/BON/BV-03-C.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
If the case is GAP/IDLE/BON/BV-04-C, set bd_addr_type to
defs.BTP_BR_ADDRESS_TYPE.

if `Please verify the passKey is correct` is in description of the
case, call `btp.gap_passkey_confirm_rsp` instead of
`btp.gap_passkey_entry_rsp`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.
Set the IO capability to `IOCap.display_yesno`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.

Update wid 102 to do not trigger GAP pairing procedure. It used to make
sure the started bonding procedure is `General Bonding`. The pairing
will be triggered when L2CAP channel connection is ongoing.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.
Change IO capability to `IOCap.display_yesno`.

Update wid 102 to disable GAP pairing procedure.

Update wid 2001 to change the address type to `defs.BTP_BR_ADDRESS_TYPE`.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
For default IO capability IOCap.keyboard_display, the passkey confirm
is required but no MMI prompted.

No input and output IO capability is required by case
GAP/EST/LIE/BV-02-C. So the passkey confirm will be avoid in pairing.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Change IO capability to `IOCap.no_input_output`.
Register L2CAP Service.
Initialize L2CAP Service.
Start a BR L2CAP server.
Enable general discovery mode.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Change IO capability to `IOCap.no_input_output`.
Register L2CAP Service.
Initialize L2CAP Service.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
lylezhu2012 and others added 26 commits April 2, 2025 15:15
Register L2CAP Service.
Initialize L2CAP Service.
Set IO capability to `display_yesno`.

Update wid 2001 to change address type to defs.BTP_BR_ADDRESS_TYPE
for the case.

Update wid 20001 to disconnect ACL connection from BR transport.

Update wid 102 to bypass the pairing procedure of second time
connection for the case.

Enable SC only for the case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.
Set IO capability to `display_yesno`.

Update wid 2001 to change address type to defs.BTP_BR_ADDRESS_TYPE
for the case.

Update wid 102 to bypass the pairing procedure for the case.

Update wid 273 to start pairing procedure with level 3.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.
Set IO capability to `no_input_output`.

Update wid 102 to bypass the pairing procedure for the case.

Add wid 273 to start pairing procedure with security level 2. And
create L2CAP connection.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.
Set IO capability to `display_yesno`.

Update wid 102 to wait for confirm passkey after pairing procedure
started for this case.

Enable SC only mode for this case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Register L2CAP Service.
Initialize L2CAP Service.
Set IO capability to `display_yesno`.

Update wid 102 to wait for confirm passkey after pairing procedure
started for this case.

Enable SC only mode for this case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Update wid 77 to disconnect ACL from BR transport in the second time
connection.

Update 2001 to change the address type to `defs.BTP_BR_ADDRESS_TYPE`.

Update 20100 to start pairing/encryption procedure.

Update 102 to remove useless code for the case. And bypass the pairing
procedure.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Update wid 77 to disconnect ACL from BR transport for the case.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
In current, the test case round flag GAP_TEST_ROUND is share by
several window handle functions.

For some cases, in the same on round, more than one window handle
function will be called. Than the round flag will GAP_TEST_ROUND be
increased incorrectly. To fix the issue, define the round flag for
each window handle function.

Add a flag GAP_TEST_WID_33_ROUND for hdl_wid_33.
Add a flag GAP_TEST_WID_102_ROUND for hdl_wid_102.
Add a flag GAP_TEST_WID_103_ROUND for hdl_wid_103.

Signed-off-by: Lyle Zhu <lyle.zhu@nxp.com>
Update the nrf53.py file so that it uses sysbuild rather than
explicitly building the network and application core separately.

This also applies the conditional --recover from the nrf54h.py

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Private Node Identity advertisements must stop immediately when
ordered by PTS.

To do so;
- Adding enable parameter to BTP_MESH_CMD_PROXY_PRIVATE_IDENTITY
to enable or disable the proxy private identity advertisements.
- Updated documentation for the command.

Signed-off-by: alperen sener <alperen.sener@nordicsemi.no>
The final list of test cases was not overwritten with the filtered list.
Edit tutorial for creating PTS workspace
The `value_read` variable is converted to a string in the if branch but
not in the else one where it's still `bytes`. The `decode` method later
called on `value_read` is trying to convert it to a string. But in the
case we were in the if branch, `value_read` is already a string. This
lead to an `AttributeError` because the `decode` method doesn't exist
for string.

Here is the error that we are getting:
```
  File "/auto-pts/autopts/wid/gatt.py", line 711, in hdl_wid_52
    value_read = value_read.decode('utf-8')
                 ^^^^^^^^^^^^^^^^^
AttributeError: 'str' object has no attribute 'decode'. Did you mean: 'encode'?
```

Introduce `value_read_str` variable to fix the issue. That variable will
be used to convert `value_read` in each branch to a string.
Add ticket for the CSIP issue with lower tester to the list of errata.
Also marks the workaround with the ticket number.
Add "use filter accept list" flag to Start Discovery.
Previously the BTP specification did not really say whether
or not the filter accept list should be used for scan results.

Signed-off-by: Jori Rintahaka <jori.rintahaka@silabs.com>
The utils file imports pyudev, however this library is not listen in the
client requirement file.
Add port parameter to BTP socket initialization

Refactor `open` method in `iutctl_common.py` to introduce an optional `port`
parameter, enabling explicit port binding for Windows sockets and ensuring
enhanced configurability across platforms.
If a PR causes the test run startup to fail and no ERROR_TXT_FILE is generated,
cron will be restarted indefinitely and block other jobs.
Fixes a use case when someone appended a newline character.
Since the mentioned Zephyr issue is closed, this test's failure should
not be marked as awating an errata anymore.
L2CAP needs GATT service initialized for some tests.
Fixes the following test:
* CAP/CL/ADV/BV-01-C
Add | symbol between packet header and data for
BTP command. This could prove useful, as user
can see command data without counting bytes.
@m-alperen-sener m-alperen-sener self-requested a review May 14, 2025 10:56
@AyturkDuzen AyturkDuzen merged commit 31c3cb6 into nrfconnect:master May 14, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.