Skip to content

Commit 54ea96f

Browse files
rquiduteantonio-amjrhiltonlimaccruzagralopesswan-amazon
authored
Merge V2.14 develop into main (#281)
* Updated SDK SHA - revert * Changed SDK_DOCKER_TAG to f2e5de7_latest * Make all TH dependencies not static (#164) * Updated package-dependency-list.txt * Updated missing dependencies * [FIX] Reverting the OTBR Start Script (#150) * Reverting the BR_VARIANT option to the otbr start script * Adding TODO to the script * Adding missing comment char * Updating Script Comment Year Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Adding switch parameters options to the script --------- Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Do not error while parsing SDK python tests (#141) * replace erro with warning * Update test_collections/matter/sdk_tests/support/python_testing/models/python_test_parser.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * black error fix * pr review --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Add TC-IDM-10.5 test case to mandatory suite (#153) * Check user prompt answer FAILED for DUT commissioning (#155) * Handle Skip test fir old script python test cases (#154) * [FIX] Intermittent Tests Start Error With No Information (#157) * Fixing intermittent problem with Python's Base Manager Creating the manager now only once in the SDK Container Init * Refactoring and updating the unit tests with related mocks * Update python_testing references after SDK refactoring (#162) * Updated python_testing references after sdk refactoring * Removed no wanted file changes * Updated matter_testing references * Fixed line too long * Fixed code - black * Updated SDK SHA * Removed commented code * Revert "[FIX] Intermittent Tests Start Error With No Information (#157)" (#166) This reverts commit 316a934. * 01 - Isolate SDK docker pull script (#142) * Isolate SDK docker pull script * Changes after code review --------- Co-authored-by: Romulo Quidute Filho <rquidute@apple.com> * 02 - Script to parser SDK python tests (#144) * Isolate SDK docker pull script * Rebasing * Apply suggestions from code review Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Move call tp update-pull-sdk-docker-image.sh from setup.sh to update-sample-apps.sh * Changes after code review * Fixed CI issues * Code review fixes * Fixed unit tests * Fixed mypy --------- Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> Co-authored-by: Romulo Quidute Filho <rquidute@apple.com> * Implemented changes for custom python test (#167) * Implemented changes for custom python test * code review * Code review * Code reviewd * Fixed code violations * Chanegs after code review * Remove unused import * Update update-sample-app script to copy apps from new origin (#148) * Fix suite names for custom python tests (#168) * Fix move update-pull-sdk-docker-image script content to update-sample-app script (#169) * Fixed some python tests not listed (#172) * Fixed some python tests not listed * code review * [Feature] Implement support to export project config (#171) * Implement support to export project config * Fix mypy * Changed the returned schema and service endpoint name * Added import project config * Apply suggestions from code review Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * code review --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * [FIX] Added support to negated PICS (#170) * Added support to negated PICS * Fixed flake * Code review. No consider negatives PICS * Update app/pics_applicable_test_cases.py * Code review * Fixes after merge * Remove unused file (#175) * Remove unused file * Updated cspell * Fix ci issues v 2 12 (#176) * Fix CI issues from v2.12 branch * Fixed merge * Fix test case * Updated SDK_DOCKER_IMAGE url * Updated SDK_DOCKER_IMAGE url * Add support for configuring terms and conditions in device commissioning (#173) * Add support for configuring terms and conditions in device commissioning This commit introduces a new `enhanced_setup_flow` configuration property to the test harness backend, allowing device manufacturers to define the terms and conditions (T&C) that must be acknowledged and set during device commissioning. These values are critical for supporting the Terms and Conditions Certification Test Suite. Key changes include: - Added the `EnhancedSetupFlowConfig` class to `DutConfig`, which allows specifying the T&C version and user response required during commissioning. - Updated `generate_command_arguments` in `utils.py` to append the necessary arguments for T&C validation and the device's commissioning method. - Adjusted model validation to ensure the `enhanced_setup_flow` field is processed correctly within `DutConfig`. These changes ensure the test harness can enforce manufacturer-specific T&C values during the commissioning process, aligning with the broader requirements of T&C validation. * * Ran ./scripts/format.sh * Update test_collections/matter/test_environment_config.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update app/user_prompt_support/uploaded_file_support.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/performance_tests/utils.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/__init__.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Revert changes to test_collections/matter/sdk_tests/support/performance_tests/utils.py * Restyle test_environment_config.py * test: Add in-test-commissioning-method parameter for manual commissioning validation Add new parameter to control commissioning flow during tests, allowing manual validation of the commissioning process instead of auto-commissioning. This enables test cases to verify terms and conditions acknowledgements during the commissioning flow. - Add in-test-commissioning-method parameter to test flags - Support manual commissioning flow validation - Enable testing of T&C acknowledgement scenarios * Add new field "enhanced_setup_flow" to exception message * Cherry-pick test_python_parser.py from origin/main * Cherry-pick python_test_parser.py from origin/main * Revert "Cherry-pick python_test_parser.py from origin/main" This reverts commit 5d65ce5. * Revert "Cherry-pick test_python_parser.py from origin/main" This reverts commit 2cd99b7. * Removed broken test `test_python_parser.py` * Revert "Removed broken test `test_python_parser.py`" This reverts commit 48c0e32. --------- Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * chore: upgrade Node.js from v18.x to v20.x (#177) Updated Node.js installation source from setup_18.x to setup_20.x to align with Ubuntu 22.04 base image requirements * [Feature] DO NOT require commissioning every test (#178) * First implementation * Implement prompt and copy files from/to contanier * Unit tests * Updated SKA SHA * Unit test typo fixes * Mypy flake8 fixes * Mypy fixes * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/utils.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Code review * Review fixes * Remove unused import --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Add logs for project config (#179) * Add logs for project config * Updated cspell.json * Update app/test_engine/test_runner.py Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Implement rename test run execution name (#180) * Fix the checking for storage-path (#183) * Revert code changes related to SDK path refactoring (#186) * Refatoring prompts for recommissioning (#187) * Refatoring prompts for recommissioning * flake8 fixes * Changes after code review * Revert "Utilities stress stability (#146)" (#188) * Revert "Utilities stress stability (#146)" This reverts commit 1e042fa. * Fixing wrong reverts * Fixing two more reverts * Remove commissioning information when running YAML scripts (#189) * Fix CONTAINER_TH_CLIENT_EXEC path (#191) * Fix CONTAINER_TH_CLIENT_EXEC path * Code formating * Updated SDK SHA and Python Tests JSON (#192) * Removed unused count field at test_case_metadata (#193) * Add apps folder when copying apps from container to host * Version v2.12-beta2+spring2025 * Version v2.12-beta3+spring2025 * Add apps folder when copying apps from container to host (#194) * Add apps folder when copying apps from container to host * Version v2.12-beta2+spring2025 * Version v2.12-beta2+spring2025 * [FIX] Updating Performance Files (#182) * Fixing the utils script, one calls and a import from the performance tests files * Fixing isort and cspell checks * Fixing Unit tests and removing unnecessary folder and file (jupyter) * Fix starting backend without internet access. (#184) * Remove unused file (#175) * Remove unused file * Updated cspell * [FIX] Updating Performance Files (#182) * Fixing the utils script, one calls and a import from the performance tests files * Fixing isort and cspell checks * Fixing Unit tests and removing unnecessary folder and file (jupyter) * Remove unused file (#175) * Remove unused file * Updated cspell * Fix ci issues v 2 12 (#176) * Fix CI issues from v2.12 branch * Fixed merge * Fix test case * Updated SDK_DOCKER_IMAGE url * Updated SDK_DOCKER_IMAGE url * Add nfc-thread pairing mode (#185) * Added nfc-thread pairing mode. This mode doesn't need a discriminator. * Changed after black * Unit tests fixes * Fixed code violations --------- Co-authored-by: Romulo Quidute Filho <rquidute@apple.com> * [Fix] Recommissioning Refactoring to V1.5 (#190) * Refatoring prompts for recommissioning (#187) * Refatoring prompts for recommissioning * flake8 fixes * Changes after code review * Remove commissioning information when running YAML scripts (#189) --------- Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Updating SDK SHA to 7d67dc904758bb68989596f401a843a31e81911d in config * Updated SDK SHA * Redo code changes related to SDK path refactoring (#198) * Redo code changes related to SDK path refactoring * Putting back is_detach argument * Fix unit test --------- Co-authored-by: Romulo Quidute Filho <rquidute@apple.cpom> * Updated SDK SHA and update-sample-apps.sh * Updated sdk sha * Undo changes in update-sample-apps.sh * Utilities stress stability (#146) * draft 1 * Update * Fixing error related to multiple commissioning executions + enhancing logs * total, readcommissionininfo and discovery plots * added PASE plot and percentiles * Update PoC with support to Utility screen. * Adding support to analytics + enhancing container interface to support detach option. * Added backend service to generate summary for logDisplay * Removed unsued code * Addes URL report in response for performance_summary endpoint * Minor fixes * Fixing util method for the repeat feature of the performance tests * Merge alembic heads * Cast project config * Update method according to merged changes * Make logs directory if it doesn't exist * Add performance-logs to .gitignore * Adding the Log Display web application scripts for install, uninstall, start and stop operations * Adding support to Python Virtual Environment for the LogDisplay app scripts, plus minor changes * Fixing the repeat test feature for regular tests with more than one iteration * Removing configuration option for log folder in the LogDisplay tool for easier UX in the cost of less flexibility * Force the creation of logs/ directory as well for the LogDisplay output folder * Updating scripts and log generation to use environment variables for paths * Changing the container's log output folder for path binded with host * Updating the start script's path of the LogDisplay * Disabling SIGINT trap from the start script so the python script inside receive the Ctrl+C interruption * Adjustments on simulator script + moving matter_qa to outside endpoint + handling stress script location * Fixing lint issues. * Fix lint * fix additional lint issues * lint * fixing migration issues * Removing unnecessary code. * update log display feature. * adjustments --------- Co-authored-by: Fabio Maia <fabio_maia@apple.com> Co-authored-by: Romulo Quidute Filho <rquidute@apple.com> Co-authored-by: Antonio Melo Jr <a_junior@apple.com> Co-authored-by: Carolina Lopes <ccruzagralopes@apple.com> * Updated SDK SHA * Update SDK SHA * New Json for beta1 summer2025 release * Updating Beta 2 For Summer 2025 (#200) * Updating the SDK SHA * Updating the sample apps script * Updating the version information file * Removing unnecessary Jupyter folder and file * Updating the python tests information json file * Solving python black issue for github checks * Updated SDK_SHA. ble-wifi and ble-thread fixes * Change to be able to use NFC Commissioning in YAML test. (#201) * chore: upgrade Node.js from v18.x to v20.x (#177) Updated Node.js installation source from setup_18.x to setup_20.x to align with Ubuntu 22.04 base image requirements * [FIX] Updating Performance Files (#182) * Fixing the utils script, one calls and a import from the performance tests files * Fixing isort and cspell checks * Fixing Unit tests and removing unnecessary folder and file (jupyter) * Fix starting backend without internet access. (#184) * Remove unused file (#175) * Remove unused file * Updated cspell * Add support for configuring terms and conditions in device commissioning (#173) * Add support for configuring terms and conditions in device commissioning This commit introduces a new `enhanced_setup_flow` configuration property to the test harness backend, allowing device manufacturers to define the terms and conditions (T&C) that must be acknowledged and set during device commissioning. These values are critical for supporting the Terms and Conditions Certification Test Suite. Key changes include: - Added the `EnhancedSetupFlowConfig` class to `DutConfig`, which allows specifying the T&C version and user response required during commissioning. - Updated `generate_command_arguments` in `utils.py` to append the necessary arguments for T&C validation and the device's commissioning method. - Adjusted model validation to ensure the `enhanced_setup_flow` field is processed correctly within `DutConfig`. These changes ensure the test harness can enforce manufacturer-specific T&C values during the commissioning process, aligning with the broader requirements of T&C validation. * * Ran ./scripts/format.sh * Update test_collections/matter/test_environment_config.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update app/user_prompt_support/uploaded_file_support.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/performance_tests/utils.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/__init__.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Revert changes to test_collections/matter/sdk_tests/support/performance_tests/utils.py * Restyle test_environment_config.py * test: Add in-test-commissioning-method parameter for manual commissioning validation Add new parameter to control commissioning flow during tests, allowing manual validation of the commissioning process instead of auto-commissioning. This enables test cases to verify terms and conditions acknowledgements during the commissioning flow. - Add in-test-commissioning-method parameter to test flags - Support manual commissioning flow validation - Enable testing of T&C acknowledgement scenarios * Add new field "enhanced_setup_flow" to exception message * Cherry-pick test_python_parser.py from origin/main * Cherry-pick python_test_parser.py from origin/main * Revert "Cherry-pick python_test_parser.py from origin/main" This reverts commit 5d65ce5. * Revert "Cherry-pick test_python_parser.py from origin/main" This reverts commit 2cd99b7. * Removed broken test `test_python_parser.py` * Revert "Removed broken test `test_python_parser.py`" This reverts commit 48c0e32. --------- Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * [Feature] DO NOT require commissioning every test (#178) * First implementation * Implement prompt and copy files from/to contanier * Unit tests * Updated SKA SHA * Unit test typo fixes * Mypy flake8 fixes * Mypy fixes * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/utils.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Code review * Review fixes * Remove unused import --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Add logs for project config (#179) * Add logs for project config * Updated cspell.json * Update app/test_engine/test_runner.py Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Implement rename test run execution name (#180) * Fix the checking for storage-path (#183) * [FIX] Updating Performance Files (#182) * Fixing the utils script, one calls and a import from the performance tests files * Fixing isort and cspell checks * Fixing Unit tests and removing unnecessary folder and file (jupyter) * Remove unused file (#175) * Remove unused file * Updated cspell * Fix ci issues v 2 12 (#176) * Fix CI issues from v2.12 branch * Fixed merge * Fix test case * Updated SDK_DOCKER_IMAGE url * Updated SDK_DOCKER_IMAGE url * Add logs for project config (#179) * Add logs for project config * Updated cspell.json * Update app/test_engine/test_runner.py Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Add logs for project config (#179) * Add logs for project config * Updated cspell.json * Update app/test_engine/test_runner.py Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Add nfc-thread pairing mode (#185) * Added nfc-thread pairing mode. This mode doesn't need a discriminator. * Changed after black * Unit tests fixes * Fixed code violations --------- Co-authored-by: Romulo Quidute Filho <rquidute@apple.com> * Add logs for project config (#179) * Add logs for project config * Updated cspell.json * Update app/test_engine/test_runner.py Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> * [Fix] Recommissioning Refactoring to V1.5 (#190) * Refatoring prompts for recommissioning (#187) * Refatoring prompts for recommissioning * flake8 fixes * Changes after code review * Remove commissioning information when running YAML scripts (#189) --------- Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Change to be able to use NFC Commissioning in YAML test. NB: Change for Python tests will be done in another PR. * Fixed the error found by black and Flake8. * Added comment --------- Co-authored-by: James Swan <122404367+swan-amazon@users.noreply.github.com> Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> Co-authored-by: Romulo Quidute Filho <rquidute@apple.com> * [FIX] Removing Performance Collection From PICS Validation (#202) * Removing Performance collection from PICS applicable tests validation * Using a test collection copy instead of the original dict to prevent losing data * [FIX] Fix Custom YAML test execution (#205) * Fix Custom YAML test execution * Fixed flake8 and spellcheck * Update test_collections/matter/sdk_tests/support/yaml_tests/matter_yaml_runner.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Copy mock_server from cert-bins to host (#206) * Copy mock_server from cert-bins to host * Update test_collections/matter/scripts/update-sample-apps.sh Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> * Updated SDK-SHA - 6cc5fb1 --------- Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> * Implement Project config changes due to platform certification support (#207) * Allow Json file to be uploaded * Updated SDK SHA * Updated code to parser new dmp file format (xml) * Some code refinements and unit tests * Code review * Code review * Isort fix * [Feature] Platform cert implementation - Updated applicable test cases (#209) * Initial coding for platform certification support - applicable test cases * Implemented Derived product certification flow - PLAT_CERT_DONE = True * Added unit tests * Add TODO to fetch platform-test.json from connectedhome ip repo * Undo changed in config.py * Fix mypy flake8 * Update app/pics_applicable_test_cases.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Update app/pics_applicable_test_cases.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Update app/tests/pics/test_applicable_test_cases_list.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Update app/pics_applicable_test_cases.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Fixes after tests * Update app/pics_applicable_test_cases.py * Code review --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Use discriminator for nfc thread (#212) * Use discriminator for nfc_thread pairing * Undo discriminator as optional * Code review * Added platform-test.json as ignorePaths for cspell.json * Updated SDK_SHA to c60643c9a44ff6dfcc4319588e6fdec544c4a3e2 * Updated .version_information file * [FIX] Adding Timeout To Server Exit (#216) * Adding a fail-safe mechanism when stopping the chip server after a test execution * Returning missing while condition and adding a delay of 5 seconds between new tries * Fixing the while condition again and adding a log to the sleep delay in the logic * Rewording comment * Updated SDK_SHA - added air-purifier app * updated version to v2.13-beta3.1+summer2025 * Fix 1.5_in_progress missing folder (#217) * Added logs for applicable test cases (#218) * Adding the missing parameter to avoid the python's posicional argument error (#219) * Updating .version_information of backend * Copying credentials folder from SDK image * Updating version information * Fixed some platform tests not being added to applicable test cases (#220) * Fixed some platform tests not being added to applicable test cases * Code review * mypy fix * Code review * Improve platform test selection * Update app/pics_applicable_test_cases.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> --------- Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Fix platform-test.json read path * [Fix] Linter Error (#221) * Fixing linter's long line error * Removing two failing unit tests from platform Added a TODO comment with an open issue to address this problem. * Fixing flake issues * Returning missing parameter for Platform invalid json Unit Test * Move platform-test.json to collections folder (#223) * Move platform-test.json to collections folder * Fixed unused import and unit tests * Merge V2.13 sve+summer2025 into v2.13-develop (#231) * Changes for v2.13-beta4+summer2025 version (#224) * Changes for v2.13-beta4+summer2025 version * Updated path for platform-test.json file in cspell.json * Updated the affected sdk references (#226) * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Update code due to platform test file location (#227) * Updated code after platform test location file is placed in new location * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Fixed the right platform file path --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * Updated python_tests (#228) * Updated SDK SHA and python_tests_info.json for v2.13-beta4+summer2025 * New endpoint for CLI execution - Simplify the process (#229) * create /cli endpoint * Changes for v2.13-beta4+summer2025 version (#224) * Changes for v2.13-beta4+summer2025 version * Updated path for platform-test.json file in cspell.json * Updated the affected sdk references (#226) * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Update code due to platform test file location (#227) * Updated code after platform test location file is placed in new location * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Fixed the right platform file path --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * Updated python_tests (#228) * Updated SDK SHA and python_tests_info.json for v2.13-beta4+summer2025 * Add POST test_run_executions/cli * Remove unused code * Code review --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * [FIX] Fix logic for platform tests selection (#230) * Fixed applicable test cases for platform test execution * Code formating * Fix the platform keys for PICS_PLAT_CERT and PICS_PLAT_CERT_DERIVED * Fixed mypy * Black fix * Updated version to v2.13-beta4.1+summer2025 * Minor changes * Fixed platform tests selection when no PICS were informed (#232) * Fixed platform tests selection when no PICS were informed * Balck and flake8 fixes * Minor code comment * [FIX] Make python script test name more flexible (#233) * Make python script test name more flexible * Add comment for the regex * Fix logix for platorm test selection (#234) * Revert "[FIX] Make python script test name more flexible (#233)" (#235) This reverts commit d1e207e. --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * [Camera] Update backend to allow python testing framework to invoke perform video stream verification (#215) * Adds support to run camera app yaml test cases using camera-controller Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Apply formatter and fix action workflow failure Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Adds a hook for the python test framework to invoke video verification prompt Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Adds support for python test framework to invoke image verification prompt required for snap shot TCs Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Fix PromptOptions to enable submit button when opting for FAIL Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Apply formatter Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Fix issues reported by Black, Mypy Signed-off-by: suyambu.rm <suyambu.rm@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Update app/api/api_v1/sockets/web_sockets.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/yaml_tests/models/chip_test.py Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/test_case.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/test_case.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/test_case.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/test_case.py Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * Evaluate prompt response for errors Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> --------- Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Signed-off-by: suyambu.rm <suyambu.rm@samsung.com> Co-authored-by: s-gatti <s.gatti@samsung.com> Co-authored-by: suyambu.rm <suyambu.rm@samsung.com> Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> * Fixed stress test interaction TC_COMMISSIONING_1_0 test case (#239) * Fixed stress test interaction TC_COMMISSIONING_1_0 test case * Code review * Fix typo * Updated cspell.json * [Camera] Handle video stream socket operations in SocketConnectionManager (#241) * Handle video stream socket operations in SocketConnectionManager Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Update imports and fixes Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * review fixes Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> --------- Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Co-authored-by: s-gatti <s.gatti@samsung.com> * Added support to PICS for /test_run_executions/cli endpoint (#236) * Changes for v2.13-beta4+summer2025 version (#224) * Changes for v2.13-beta4+summer2025 version * Updated path for platform-test.json file in cspell.json * Updated the affected sdk references (#226) * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Update code due to platform test file location (#227) * Updated code after platform test location file is placed in new location * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Fixed the right platform file path --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * Updated python_tests (#228) * Updated SDK SHA and python_tests_info.json for v2.13-beta4+summer2025 * New endpoint for CLI execution - Simplify the process (#229) * create /cli endpoint * Changes for v2.13-beta4+summer2025 version (#224) * Changes for v2.13-beta4+summer2025 version * Updated path for platform-test.json file in cspell.json * Updated the affected sdk references (#226) * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Update code due to platform test file location (#227) * Updated code after platform test location file is placed in new location * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Fixed the right platform file path --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * Updated python_tests (#228) * Updated SDK SHA and python_tests_info.json for v2.13-beta4+summer2025 * Add POST test_run_executions/cli * Remove unused code * Code review --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * [FIX] Fix logic for platform tests selection (#230) * Fixed applicable test cases for platform test execution * Code formating * Fix the platform keys for PICS_PLAT_CERT and PICS_PLAT_CERT_DERIVED * Fixed mypy * Black fix * Updated version to v2.13-beta4.1+summer2025 * Minor changes * Fixed platform tests selection when no PICS were informed (#232) * Fixed platform tests selection when no PICS were informed * Balck and flake8 fixes * Minor code comment * [FIX] Make python script test name more flexible (#233) * Make python script test name more flexible * Add comment for the regex * Fix logix for platorm test selection (#234) * Revert "[FIX] Make python script test name more flexible (#233)" (#235) This reverts commit d1e207e. * Added support to PICS for /test_run_executions/cli endpoint * Update app/api/api_v1/endpoints/test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update app/api/api_v1/endpoints/test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update app/api/api_v1/endpoints/test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update app/api/api_v1/endpoints/test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update app/api/api_v1/endpoints/test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Code review * Code review * back and flake8 --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Optimize sideload process (#237) * Changes for v2.13-beta4+summer2025 version (#224) * Changes for v2.13-beta4+summer2025 version * Updated path for platform-test.json file in cspell.json * Updated the affected sdk references (#226) * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Update code due to platform test file location (#227) * Updated code after platform test location file is placed in new location * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Fixed the right platform file path --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * Updated python_tests (#228) * Updated SDK SHA and python_tests_info.json for v2.13-beta4+summer2025 * New endpoint for CLI execution - Simplify the process (#229) * create /cli endpoint * Changes for v2.13-beta4+summer2025 version (#224) * Changes for v2.13-beta4+summer2025 version * Updated path for platform-test.json file in cspell.json * Updated the affected sdk references (#226) * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Update code due to platform test file location (#227) * Updated code after platform test location file is placed in new location * [Platform-Certification] Platform Certification List (#225) * Added the platform test list json and a Readme about the file in a folder in the repo root * Applying Gemini's comments * Moved the platform cert files to the matter folder * Fixed the right platform file path --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * Updated python_tests (#228) * Updated SDK SHA and python_tests_info.json for v2.13-beta4+summer2025 * Add POST test_run_executions/cli * Remove unused code * Code review --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * [FIX] Fix logic for platform tests selection (#230) * Fixed applicable test cases for platform test execution * Code formating * Fix the platform keys for PICS_PLAT_CERT and PICS_PLAT_CERT_DERIVED * Fixed mypy * Black fix * Updated version to v2.13-beta4.1+summer2025 * Minor changes * Fixed platform tests selection when no PICS were informed (#232) * Fixed platform tests selection when no PICS were informed * Balck and flake8 fixes * Minor code comment * [FIX] Make python script test name more flexible (#233) * Make python script test name more flexible * Add comment for the regex * Fix logix for platorm test selection (#234) * Revert "[FIX] Make python script test name more flexible (#233)" (#235) This reverts commit d1e207e. * Optimize Ssideload process * Code review * Code review * Code review - MYPY --------- Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> * [Fix] - Fix import test harness client (#243) * Fixed test_harness_client.py import * Undo set manual_execution value to 1 * Changes for V2.14 beta1+fall2025 version (#244) * Updated SDK SHA and version for v2.14-beta1+fall2025 * Updated python_tests_info.json file * Handle errors for groups commands * Update test_collections/matter/sdk_tests/support/python_testing/list_python_tests_classes.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Code review --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Updating with v2.14-beta1.1+winter2025 release (#247) * Updating with v2.14-beta1.1+winter2025 release * Updating again SDK SHA and python tests info json file * Updated unit test to not modify .version_information file (#253) * Updated unit test to not modify .version_information file * Isort and black * Code review - gemini * Code review * Added support to project_id in test_run_executions POST /cli (#252) * Added support to project_id in test_run_executions POST /cli * black and isort * Update app/api/api_v1/endpoints/test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Flake8 * Fixed unit tests * black * Update app/tests/api/api_v1/test_test_run_executions.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Code review --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Fix POST testrun_executions/cli not using config when project id is informed (#254) * RUn POST testrun_executions/cli not using config when project id is informed * mypy, black, flake8 * flake8 * black * Fixes raised by Gemini in PR#250 (#255) * Minor changes raised by gamini in PR#250 * Code review - Gemini * [FIX] Updated TH after SDK refactoring (#258) * Updated TH after SDK refactoring * Update test_collections/matter/sdk_tests/scripts/fetch_sdk_tests_and_runner.sh Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Version v2.14-beta2+fall2025 (#259) * Version v2.14-beta2+fall2025 * Updated cspell * [Camera] Push AV validation prompt support (#251) * Adds push av validation prompt Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Apply formatter Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Address review comments Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> --------- Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Co-authored-by: s-gatti <s.gatti@samsung.com> * [Camera] Add signaling endpoints for WebRTC (#256) * Add signaling endpoints for WebRTC Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * linting fixes Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * fix mypy issue Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Log error messages Signed-off-by: Charles Kim <chulspro.kim@samsung.com> --------- Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Co-authored-by: abhishek.h <abhishek.h@samsung.com> * [Camera] Adds pop up for two way talk verification request (#257) * Adds pop up for two way talk verification request Signed-off-by: Charles Kim <chulspro.kim@samsung.com> * Address review comments Signed-off-by: Charles Kim <chulspro.kim@samsung.com> --------- Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Co-authored-by: Romulo Quidute Filho <116586593+rquidute@users.noreply.github.com> * black * Updated fetch_sdk_tests_and_runner script to install chipyaml wheel (#260) * Updated fetch_sdk_tests_and_runner script to install chipyaml wheel * updated cspell.json file * Update test_collections/matter/sdk_tests/scripts/fetch_sdk_tests_and_runner.sh Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Code review - gemini * Update test_collections/matter/sdk_tests/scripts/fetch_sdk_tests_and_runner.sh Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> * [Fix] Fix missing python script in TH UI (#261) * Updated fetch_sdk_tests_and_runner script to install chipyaml wheel * updated cspell.json file * Update test_collections/matter/sdk_tests/scripts/fetch_sdk_tests_and_runner.sh Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Code review - gemini * Fix logic for Python scripts be listed as test script * Added python_tests_info.json file * Code review - gemini * added pyproject to ignore words in cspell * Mypy * Mypy --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * v2.14-beta2.1+fall2025 version (#262) * v2.14-beta2.1+fall2025 version * Updated .version_information * Restore msg argument in SDKPythonTestResultShowTwoWayTalkPrompt (#263) Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Co-authored-by: s-gatti <s.gatti@samsung.com> * [Enhancement] Dynamic generate python_test_info.json file (#264) * Dynamic generate python_test_info.json file * Empty python_test_info file * Add python_test_info.json file to .gitignore file * Unit test fix * flake8 * Fix unit test * Removed python_tests_info.json file (#265) * [Fix] Update filename pattern validation for python test files (#266) * Update logic to list python scripts * Code review * Code review * Updated code comment * Updated unit test * Updated unit test * Updated unit tests * flake8 * Updated unit tests * Updated code comment * black * Updated argument handling in test_harness_client (#270) * Updated argument handling in test_harness_client * Update test_collections/matter/sdk_tests/support/python_testing/models/rpc_client/test_harness_client.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Code review - gemini * Code review * Mypy * Update code comment * Update test_collections/matter/sdk_tests/support/python_testing/models/rpc_client/test_harness_client.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/models/rpc_client/test_harness_client.py Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> * Fixing sdk container arguments by always passing thread and wifi info (#268) * v2.14-beta3+fall2025 version * Updated SDK version to 966e378dab819d3abd4a59b468dc61d80b8b4b41 * Updated SDK SHA to f902839abf1de0d17956de34889b6ad997e2c5e4 * Fix error handling in Python test list generation to prevent KeyError (#271) * Improve list_python_tests_classes.py file * Code formating * Update test_collections/matter/sdk_tests/support/python_testing/list_python_tests_classes.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update test_collections/matter/sdk_tests/support/python_testing/list_python_tests_classes.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * mypy * cspell updated * Remove unnecessary comments --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Fix python script listing (#272) * Fix python script listing * Added feature to files that should be included despite regex * Code review * Code review * Refactoring method to read ignore and include file * Updated SDK_SHA after some scripts fixes * Updated SDK version to 68e03c17300eb42c0d3946130aa2a8f7a2a06632 for v1.5 final release * Updated SDK_SHA to ca9d1118e097fe947b2aec1ba84f265d6cf2447e * Changes after merge --------- Signed-off-by: s-gatti <s.gatti@samsung.com> Signed-off-by: Charles Kim <chulspro.kim@samsung.com> Signed-off-by: suyambu.rm <suyambu.rm@samsung.com> Co-authored-by: antonio-amjr <116589331+antonio-amjr@users.noreply.github.com> Co-authored-by: hiltonlima <116589806+hiltonlima@users.noreply.github.com> Co-authored-by: Carolina Lopes <116589288+ccruzagralopes@users.noreply.github.com> Co-authored-by: James Swan <122404367+swan-amazon@users.noreply.github.com> Co-authored-by: Olivier LORENTE [ST] <34505085+OlivierGre@users.noreply.github.com> Co-authored-by: Antonio Melo Jr. <a_junior@apple.com> Co-authored-by: Romulo Quidute Filho <rquidute@apple.cpom> Co-authored-by: gladystonfranca <117387464+gladystonfranca@users.noreply.github.com> Co-authored-by: Fabio Maia <fabio_maia@apple.com> Co-authored-by: Carolina Lopes <ccruzagralopes@apple.com> Co-authored-by: lpbeliveau-silabs <112982107+lpbeliveau-silabs@users.noreply.github.com> Co-authored-by: chulspro <chulspro.kim@samsung.com> Co-authored-by: s-gatti <s.gatti@samsung.com> Co-authored-by: suyambu.rm <suyambu.rm@samsung.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: abhishek.h <abhishek.h@samsung.com>
1 parent 9e0dc92 commit 54ea96f

38 files changed

Lines changed: 2398 additions & 334 deletions

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,4 @@ test_db_creation.lock
1616
test_collections/matter/sdk_tests/sdk_checkout
1717
performance-logs
1818
test_collections/matter/sdk_tests/custom_python_tests_info.json
19+
test_collections/matter/sdk_tests/python_tests_info.json

.version_information

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v2.13+summer2025
1+
v2.14+fall2025

app/api/api_v1/endpoints/test_run_executions.py

Lines changed: 75 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -97,36 +97,92 @@ def create_test_run_execution(
9797
return test_run_execution
9898

9999

100+
def __convert_pics_dict_to_object(pics: dict) -> Optional[schemas.PICS]:
101+
"""Convert a dictionary to a PICS object.
102+
103+
Args:
104+
pics (dict): Dictionary containing PICS data
105+
106+
Returns:
107+
schemas.PICS: PICS object if conversion successful.
108+
"""
109+
if not pics:
110+
return schemas.PICS(clusters={})
111+
112+
try:
113+
return schemas.PICS(**pics)
114+
except Exception as e:
115+
logger.error(f"Invalid PICS data: {e}")
116+
return None
117+
118+
100119
@router.post("/cli", response_model=schemas.TestRunExecutionWithChildren)
101120
def create_cli_test_run_execution(
102121
*,
103122
db: Session = Depends(get_db),
104123
test_run_execution_in: schemas.TestRunExecutionCreate,
105124
selected_tests: schemas.TestSelection,
106-
config: dict = {},
125+
config: Optional[dict] = None,
126+
pics: dict = {},
107127
) -> TestRunExecution:
108-
"""Creates a new test run execution on CLI request."""
109-
if not config:
128+
"""Creates a new test run execution on CLI request.
129+
130+
Args:
131+
test_run_execution_in: Test run execution data
132+
selected_tests: Selected tests to run
133+
config: Configuration parameters (optional)
134+
pics: PICS configuration (optional)
135+
"""
136+
if config is None:
110137
config = default_environment_config.__dict__
111138

112139
logger.info(f"CLI Config Arguments: {config}")
140+
logger.info(f"CLI PICS Arguments: {pics}")
113141

114-
# Retrieve the default CLI project
115-
cli_project = crud.project.get_by_name(db=db, name=DEFAULT_CLI_PROJECT_NAME)
142+
# Convert pics dict to PICS object if provided
143+
pics_obj = __convert_pics_dict_to_object(pics)
144+
if pics_obj is None:
145+
raise HTTPException(
146+
status_code=HTTPStatus.UNPROCESSABLE_ENTITY,
147+
detail="Invalid PICS data provided. Please check the format.",
148+
)
116149

117-
# If the default CLI project does not exist, create it
118-
if not cli_project:
119-
project = schemas.ProjectCreate(name=DEFAULT_CLI_PROJECT_NAME)
120-
project.config = config
121-
project = crud.project.create(db=db, obj_in=project)
150+
# Use provided project_id or default CLI project
151+
if test_run_execution_in.project_id is not None:
152+
project = crud.project.get(db=db, id=test_run_execution_in.project_id)
153+
# Use the specified project_id
154+
if not project:
155+
raise HTTPException(
156+
status_code=HTTPStatus.NOT_FOUND,
157+
detail=f"Project with id {test_run_execution_in.project_id} not found.",
158+
)
159+
project_update = schemas.ProjectUpdate(config=config)
160+
161+
if pics_obj:
162+
project_update.pics = pics_obj
163+
164+
project = crud.project.update(db=db, db_obj=project, obj_in=project_update)
122165
else:
123-
# Update the default CLI project the cli config argument
124-
project = crud.project.update(
125-
db=db, db_obj=cli_project, obj_in=schemas.ProjectUpdate(config=config)
126-
)
166+
# Retrieve the default CLI project
167+
cli_project = crud.project.get_by_name(db=db, name=DEFAULT_CLI_PROJECT_NAME)
168+
169+
# If the default CLI project does not exist, create it
170+
if not cli_project:
171+
project_create = schemas.ProjectCreate(name=DEFAULT_CLI_PROJECT_NAME)
172+
project_create.config = config
173+
if pics_obj:
174+
project_create.pics = pics_obj
175+
project = crud.project.create(db=db, obj_in=project_create)
176+
else:
177+
# Update the default CLI project with the cli config argument and pics
178+
project_update = schemas.ProjectUpdate(config=config)
179+
if pics_obj:
180+
project_update.pics = pics_obj
181+
project = crud.project.update(
182+
db=db, db_obj=cli_project, obj_in=project_update
183+
)
184+
test_run_execution_in.project_id = project.id
127185

128-
# TODO: Remove test_run_config completely from the project
129-
test_run_execution_in.project_id = project.id
130186
test_run_execution_in.certification_mode = False
131187

132188
test_run_execution = crud.test_run_execution.create(
@@ -152,12 +208,9 @@ def rename_test_run_execution(
152208
test_run_execution_in = TestRunExecutionUpdate.from_orm(test_run_execution)
153209
test_run_execution_in.title = new_execution_name.strip()
154210

155-
try:
156-
return crud.test_run_execution.update(
157-
db=db, db_obj=test_run_execution, obj_in=test_run_execution_in
158-
)
159-
except HTTPException:
160-
raise
211+
return crud.test_run_execution.update(
212+
db=db, db_obj=test_run_execution, obj_in=test_run_execution_in
213+
)
161214

162215

163216
@router.post("/abort-testing", response_model=Dict[str, str])

app/api/api_v1/sockets/web_sockets.py

Lines changed: 42 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,9 @@
1717

1818
from fastapi import APIRouter, WebSocket
1919
from fastapi.websockets import WebSocketDisconnect
20+
from loguru import logger
2021

22+
from app.constants.websockets_constants import WebSocketConnection, WebSocketTypeEnum
2123
from app.socket_connection_manager import SocketConnectionManager
2224

2325
router = APIRouter()
@@ -26,18 +28,55 @@
2628
@router.websocket("/ws")
2729
async def websocket_endpoint(websocket: WebSocket) -> None:
2830
socket_connection_manager = SocketConnectionManager()
29-
await socket_connection_manager.connect(websocket)
31+
connection = WebSocketConnection(websocket, WebSocketTypeEnum.MAIN)
32+
await socket_connection_manager.connect(connection)
3033
try:
3134
while True:
3235
# WebSocketDisconnect is not raised unless we poll
3336
# https://github.com/tiangolo/fastapi/issues/3008
3437
try:
3538
message = await asyncio.wait_for(websocket.receive_text(), 0.1)
3639
await socket_connection_manager.received_message(
37-
socket=websocket, message=message
40+
websocket=websocket, message=message
3841
)
3942
except asyncio.TimeoutError:
4043
pass
4144

4245
except WebSocketDisconnect:
43-
socket_connection_manager.disconnect(websocket)
46+
socket_connection_manager.disconnect(connection)
47+
48+
49+
@router.websocket("/ws/video")
50+
async def websocket_video_endpoint(websocket: WebSocket) -> None:
51+
socket_connection_manager = SocketConnectionManager()
52+
connection = WebSocketConnection(websocket, WebSocketTypeEnum.VIDEO)
53+
await socket_connection_manager.connect(connection)
54+
await socket_connection_manager.relay_video_frames(connection)
55+
56+
57+
@router.websocket("/ws/webrtc/controller")
58+
async def websocket_webrtc_controller_endpoint(websocket: WebSocket) -> None:
59+
socket_connection_manager = SocketConnectionManager()
60+
connection = WebSocketConnection(websocket, WebSocketTypeEnum.WEBRTC_CONTROLLER)
61+
try:
62+
if await socket_connection_manager.connect(connection):
63+
await socket_connection_manager.start_webrtc_signaling(connection)
64+
except Exception as e:
65+
logger.error(
66+
f"An error occurred during WebRTC Controller WebSocket communication: {e}"
67+
)
68+
socket_connection_manager.disconnect(connection)
69+
70+
71+
@router.websocket("/ws/webrtc/peer")
72+
async def websocket_webrtc_peer_endpoint(websocket: WebSocket) -> None:
73+
socket_connection_manager = SocketConnectionManager()
74+
connection = WebSocketConnection(websocket, WebSocketTypeEnum.WEBRTC_PEER)
75+
try:
76+
if await socket_connection_manager.connect(connection):
77+
await socket_connection_manager.start_webrtc_signaling(connection)
78+
except Exception as e:
79+
logger.error(
80+
f"An error occurred during WebRTC Peer WebSocket communication: {e}"
81+
)
82+
socket_connection_manager.disconnect(connection)

app/constants/websockets_constants.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,17 @@
1515
#
1616
from enum import Enum
1717

18+
from fastapi import WebSocket
19+
1820
MESSAGE_ID_KEY = "message_id"
1921

2022
INVALID_JSON_ERROR_STR = "The message received is not a valid JSON object"
2123
MISSING_TYPE_ERROR_STR = "The message is missing a type key"
2224
NO_HANDLER_FOR_MSG_ERROR_STR = "There is no handler registered for this message type"
2325

26+
UDP_SOCKET_PORT = 5000
27+
UDP_SOCKET_INTERFACE = "0.0.0.0"
28+
2429

2530
# Enum Keys for different types of messages currently supported by the tool
2631
class MessageTypeEnum(str, Enum):
@@ -33,6 +38,23 @@ class MessageTypeEnum(str, Enum):
3338
TIME_OUT_NOTIFICATION = "time_out_notification"
3439
TEST_LOG_RECORDS = "test_log_records"
3540
INVALID_MESSAGE = "invalid_message"
41+
STREAM_VERIFICATION_REQUEST = "stream_verification_request"
42+
IMAGE_VERIFICATION_REQUEST = "image_verification_request"
43+
TWO_WAY_TALK_VERIFICATION_REQUEST = "two_way_talk_verification_request"
44+
PUSH_AV_STREAM_VERIFICATION_REQUEST = "push_av_stream_verification_request"
45+
46+
47+
class WebSocketTypeEnum(str, Enum):
48+
MAIN = "main"
49+
VIDEO = "video"
50+
WEBRTC_PEER = "webrtc_peer"
51+
WEBRTC_CONTROLLER = "webrtc_controller"
52+
53+
54+
class WebSocketConnection:
55+
def __init__(self, websocket: WebSocket, socket_type: WebSocketTypeEnum) -> None:
56+
self.websocket = websocket
57+
self.type = socket_type
3658

3759

3860
# Enum keys used with messages at the top level

app/container_manager/container_manager.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,11 @@ def copy_file_from_container(
146146
for d in stream:
147147
f.write(d)
148148
except docker.errors.APIError as e:
149-
print(f"Error while accessing the Docker API: {e}")
149+
logger.error(f"Error while accessing the Docker API: {e}")
150+
raise
150151
except Exception as e:
151-
print(f"Unexpected error: {e}")
152+
logger.error(f"Unexpected error: {e}")
153+
raise
152154

153155
def copy_file_to_container(
154156
self,
@@ -177,9 +179,11 @@ def copy_file_to_container(
177179
container.put_archive(f"{destination_container_path.parent}", tar_stream)
178180

179181
except docker.errors.APIError as e:
180-
print(f"Error while accessing the Docker API: {e}")
182+
logger.error(f"Error while accessing the Docker API: {e}")
183+
raise
181184
except Exception as e:
182-
print(f"Unexpected error: {e}")
185+
logger.error(f"Unexpected error: {e}")
186+
raise
183187

184188

185189
container_manager: ContainerManager = ContainerManager()

0 commit comments

Comments
 (0)