From cdb46ea02f4ed919a04c521079d8e86fe5b3512b Mon Sep 17 00:00:00 2001 From: Gilles Peskine Date: Thu, 11 Sep 2025 18:11:25 +0200 Subject: [PATCH 1/2] Update framework with psa_compliance.py module Signed-off-by: Gilles Peskine --- framework | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework b/framework index bf53c3d027c7..44ea7135d68f 160000 --- a/framework +++ b/framework @@ -1 +1 @@ -Subproject commit bf53c3d027c73d96c3e79c8054ead967055df63b +Subproject commit 44ea7135d68f63c493e7be0bed5f5d609b721a86 From 26df438af1abe1eb64e5c16cf6d559735a14a35f Mon Sep 17 00:00:00 2001 From: Gilles Peskine Date: Thu, 11 Sep 2025 18:12:11 +0200 Subject: [PATCH 2/2] Import PSA compliance test script entry point from the framework Signed-off-by: Gilles Peskine --- tests/scripts/test_psa_compliance.py | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100755 tests/scripts/test_psa_compliance.py diff --git a/tests/scripts/test_psa_compliance.py b/tests/scripts/test_psa_compliance.py new file mode 100755 index 000000000000..025c8b96d092 --- /dev/null +++ b/tests/scripts/test_psa_compliance.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 +"""Run the PSA Crypto API compliance test suite. + +Clone the repo and check out the commit specified by PSA_ARCH_TEST_REPO and PSA_ARCH_TEST_REF, +then compile and run the test suite. The clone is stored at /psa-arch-tests. +Known defects in either the test suite or TF-PSA-Crypto - identified by their test +number - are ignored, while unexpected failures AND successes are reported as errors, to help +keep the list of known defects as up to date as possible. +""" + +# Copyright The Mbed TLS Contributors +# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later + +from typing import List + +import scripts_path # pylint: disable=unused-import +from mbedtls_framework import psa_compliance + +PSA_ARCH_TESTS_REF = 'v23.06_API1.5_ADAC_EAC' + +# PSA Compliance tests we expect to fail due to known defects in Mbed TLS / +# TF-PSA-Crypto (or the test suite). +# The test numbers correspond to the numbers used by the console output of the test suite. +# Test number 2xx corresponds to the files in the folder +# psa-arch-tests/api-tests/dev_apis/crypto/test_c0xx +EXPECTED_FAILURES = [] # type: List[int] + +if __name__ == '__main__': + psa_compliance.main(PSA_ARCH_TESTS_REF, expected_failures=EXPECTED_FAILURES)