-
Notifications
You must be signed in to change notification settings - Fork 18
Add support for configuring terms and conditions in device commissioning #173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please check some comments in the PR
test_collections/matter/sdk_tests/support/performance_tests/utils.py
Outdated
Show resolved
Hide resolved
test_collections/matter/sdk_tests/support/python_testing/__init__.py
Outdated
Show resolved
Hide resolved
test_collections/matter/sdk_tests/support/python_testing/models/utils.py
Outdated
Show resolved
Hide resolved
test_collections/matter/sdk_tests/support/python_testing/models/utils.py
Outdated
Show resolved
Hide resolved
Hi @swan-amazon I changed the target from |
Co-authored-by: Romulo Quidute Filho <[email protected]>
Hey @rquidute , I'm not sure why those spell checks weren't failing previously. I didn't add the words that it's flagging on now... I was asking Raju but he didn't know. I asked if something was recently enabled and he doesn't think so. What should we do? |
Co-authored-by: Romulo Quidute Filho <[email protected]>
…ils.py Co-authored-by: Romulo Quidute Filho <[email protected]>
…s/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]>
…s/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]>
…t__.py Co-authored-by: Romulo Quidute Filho <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By now, just minor items and also the Unit Tests must be fixed.
test_collections/matter/sdk_tests/support/performance_tests/utils.py
Outdated
Show resolved
Hide resolved
Hi @swan-amazon don't worry about spelling issue in this PR. There is still just one spelling issue, but this is a temp code. This is something we need to fix. |
…ce_tests/utils.py
…ning 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
This reverts commit 5d65ce5.
This reverts commit 2cd99b7.
This reverts commit 48c0e32.
Hi @swan-amazon PR is approved. |
…ing (#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 <[email protected]> * Update app/user_prompt_support/uploaded_file_support.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/performance_tests/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/__init__.py Co-authored-by: Romulo Quidute Filho <[email protected]> * 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 <[email protected]>
* 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 <[email protected]> * Update app/user_prompt_support/uploaded_file_support.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/performance_tests/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/__init__.py Co-authored-by: Romulo Quidute Filho <[email protected]> * 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 <[email protected]> * [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 <[email protected]> * Update test_collections/matter/sdk_tests/support/utils.py Co-authored-by: Carolina Lopes <[email protected]> * Code review * Review fixes * Remove unused import --------- Co-authored-by: Carolina Lopes <[email protected]> * 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 <[email protected]> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <[email protected]> * 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 <[email protected]> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <[email protected]> * 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 <[email protected]> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <[email protected]> * [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 <[email protected]> * 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 <[email protected]> Co-authored-by: antonio-amjr <[email protected]> Co-authored-by: Romulo Quidute Filho <[email protected]> Co-authored-by: Carolina Lopes <[email protected]> Co-authored-by: hiltonlima <[email protected]> Co-authored-by: Romulo Quidute Filho <[email protected]>
* 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 <[email protected]> * Adding switch parameters options to the script --------- Co-authored-by: Romulo Quidute Filho <[email protected]> * 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 <[email protected]> * black error fix * pr review --------- Co-authored-by: Carolina Lopes <[email protected]> * 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 <[email protected]> * 02 - Script to parser SDK python tests (#144) * Isolate SDK docker pull script * Rebasing * Apply suggestions from code review Co-authored-by: Carolina Lopes <[email protected]> * 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 <[email protected]> Co-authored-by: Carolina Lopes <[email protected]> Co-authored-by: Romulo Quidute Filho <[email protected]> * 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 <[email protected]> * code review --------- Co-authored-by: Carolina Lopes <[email protected]> * [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 <[email protected]> * Update app/user_prompt_support/uploaded_file_support.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/performance_tests/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/models/utils.py Co-authored-by: Romulo Quidute Filho <[email protected]> * Update test_collections/matter/sdk_tests/support/python_testing/__init__.py Co-authored-by: Romulo Quidute Filho <[email protected]> * 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 <[email protected]> * 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 <[email protected]> * Update test_collections/matter/sdk_tests/support/utils.py Co-authored-by: Carolina Lopes <[email protected]> * Code review * Review fixes * Remove unused import --------- Co-authored-by: Carolina Lopes <[email protected]> * 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 <[email protected]> * Fixed unit test * Unit test * Unit test --------- Co-authored-by: hiltonlima <[email protected]> * 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 * Version v2.12+spring2025 * Updating the SDK SHA to 91eab26 and updating the python_tests_info json file --------- Co-authored-by: antonio-amjr <[email protected]> Co-authored-by: hiltonlima <[email protected]> Co-authored-by: Carolina Lopes <[email protected]> Co-authored-by: James Swan <[email protected]> Co-authored-by: Antonio Melo Jr. <[email protected]>
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:
EnhancedSetupFlowConfig
class toDutConfig
, which allows specifying the T&C version and user response required during commissioning.generate_command_arguments
inutils.py
to append the necessary arguments for T&C validation and the device's commissioning method.enhanced_setup_flow
field is processed correctly withinDutConfig
.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.