Skip to content
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

[pull] master from project-chip:master #642

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

pull[bot]
Copy link

@pull pull bot commented Dec 13, 2024

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.1)

Can you help keep this open source service alive? 💖 Please sponsor : )

andy31415 and others added 7 commits December 13, 2024 17:25
…xtra intermediate `if null/missing` checks. (#36754)

* Start adding the fluent tree object

* Start adding unit tests

* Add test file

* more testing

* update sizes hint and make use of things into CodegenDataModelProvider

* Restyle

* Fix some commments

* More merge fixes

* Remove some odd copy&paste comments

* Update src/lib/support/FluentTreeObject.h

Co-authored-by: Boris Zbarsky <[email protected]>

* Update src/lib/support/FluentTreeObject.h

Co-authored-by: Boris Zbarsky <[email protected]>

* Fix up comments a bit

* Simplify FluentTreeObject a bit

* Extra wrapper not needed

* Cleaned up comments

* Restyled by clang-format

* Sed rename FluentTreeObject to SpanSearchValue

* Also rename files

* Restyle

* Very slight reduction in complexity that reduces extra flash usage by a few bytes

* Another minor source code size decrease

* Even slightly smaller code

* Restyle

* Fix comment typo

* make cc32xx compile optimized for size by default, so we can treak flash usage as such

* Restyled by gn

* Update src/data-model-providers/codegen/CodegenDataModelProvider.cpp

Co-authored-by: Boris Zbarsky <[email protected]>

* Update src/lib/support/SpanSearchValue.h

Co-authored-by: Boris Zbarsky <[email protected]>

* Update src/lib/support/SpanSearchValue.h

Co-authored-by: Boris Zbarsky <[email protected]>

* Update src/lib/support/SpanSearchValue.h

Co-authored-by: Boris Zbarsky <[email protected]>

* Rename tree to searchable

* Fix comment

* Restyled by clang-format

---------

Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Boris Zbarsky <[email protected]>
Co-authored-by: Restyled.io <[email protected]>
Also adds some basic round-tripping tests to catch mistakes.
The fabric-sync app enables commissioner commissionee code. When doing
so, we have two exchange managers registered due to a common platform
code. In such case the default exchange is the server one, not the
controller one.
1) Don't fulfill the expectation we are waiting on until after we have logged
   our "Found device" bit.
2) Have "Found device" and "Removed device" bits actually log the data that we
   are adding/removing to our result list, so that if they don't match it's
   easier to tell what's going on.
* Fix CI for data model changes

* test change

* Apply suggestions from code review

* Update .github/workflows/check-data-model-directory-updates.yaml

* update the workflow

* Restyled by isort

* linter

* Not sure why this isn't running, remove condition

* a bit more

* Exit with correct code

* simplify the checkout a bit

* also allow scraper version changes

* Revert "test change"

This reverts commit 67eea59.

---------

Co-authored-by: Restyled.io <[email protected]>
* TC-VALCC-3.1: Allow immediate open of valve

If the valve can be opened before the command is complete or before
the next read is done, the test will fail because it expects
the transitioning phase to happen.

In the spec:
When the movement is complete, the device SHALL set the CurrentState attribute
to the Open value.

^ this can happen before the end of the command.

* fixup for 3.1 test

* another fixup for 3.1

* Add close at start of test

* linter

* Restyled by clang-format

* Restyled by isort

* Add back the feature check

* TC-VALCC-3.3: Allow immediate open

* Linter

* Fix 3.2

* couple little fixes

* Restyled by isort

* linter

---------

Co-authored-by: Restyled.io <[email protected]>
…on package (#36596)

* Added modified spec_parsing.py to now use the data model package

* Restyled by autopep8

* Restyled by isort

* Fixing the cosmetic changes

* Use chip.testing as a module to extract, work via PosixPath directory

* Restyled by autopep8

* Restyled by isort

* Fixed correct directory search

* Solving the wrapping for try-catch according to comments

* Restyled by autopep8

* Added fixes for both a pre-built location or a full path

* Fix comment

* Restyled by autopep8

* Adding importlib.resources capability

* Restyled by autopep8

* Restyled by isort

* Fixed _spec_ path error

* Fixed to use module as string

* Removed unused import

* Added fixes for path issues

* Fixing the xml not found error

* Restyled by autopep8

* Fixed code lint error

* Fixed code lint error tree

* Fixed importlib errors

* Fixed code lint

* Fixed errors

* Restyled by autopep8

* Some type updates and iteration logic updates to be consistent

* Remove unused method

* Fix logic to match existing usage: we need clusters to be part of the passed in path if applicable

* Restyled by autopep8

* Restyled by isort

* remove unused import

* Cleanup some odd comments

* Another update to avoid using globs

* Fix up types and return

* Remove unused import

* Another dep cleanup

* Remove one test step: unclear about the value of throwing a specparse exception on invalid input type

* Remove unused import

* update logic to throw specparsing when no XMLs found ... this preserves previous logic somewhat

* Make data model directory consistent with cluster logic

* Comments update

* Added warning levels for checking xml

---------

Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
Co-authored-by: Andrei Litvin <[email protected]>
bzbarsky-apple and others added 2 commits December 14, 2024 00:41
Just clear out all existing subscription/session state when this API is called.
Callers should ensure there are no spurious calls.
Fix script reference
@github-actions github-actions bot added the documentation Improvements or additions to documentation label Dec 16, 2024
arkq and others added 5 commits December 16, 2024 15:33
…r managed by AAI (#36777)

* Make XOccupiedToUnoccupiedDelay attributes managed by AAI

* add document

* add more document
…om OPSTATE tests (#34290)

* Possible fix for matter-test-scripts issue #227:
- Removed PICS checks and replaced with attribute and command checks from endpoint during tests.

* Restyled by autopep8

* Updated TC_OpstateCommon.py:
- Removed some variables that were no longer needed

* Updated TC_RVCOPSTATE_2_1 test module:
- Removed automatable PICS checks and replaced with attributes available to be gathered from endpoint.

* Restyled by autopep8

* Restyled by isort

* Updated TC_RVCOPSTATE_2_1 test module:
- Adding back in missing time import and test runner comments into test module

* Updated TC_RVCOPSTATE_2_1 test module:
- Replaced input() with wait_for_user_input() in test script
- Added back in short sleep to script, not sure why it got removed.

* Resolving Linting issue in TC_RVCOPSTATE_2_1:
- Had to remove "test_step" variable that was attempting to be called in wait_for_user_input() as it was not being defined earlier in the test module.

* Updating TC_RVCOPSTATE_2_1 test module:
- Minor change to remove unneeded f-string from wait_for_user_input().

* Updated TC_RVCOPSTATE_2_1 test module:
- Re-imported the test_step variable for test steps 6 and 7 manual testing that were accidentally removed
- Re-imported the variable being called in the self.wait_for_user_input()

* Updated TC_RVCOPSTATE_2_1 test module:
- Replaced missing test_step variable and calls for it in self.wait_for_user_input()

* Restyled by autopep8

* Updated TC_OpstateCommon and TC_RVCOPSTATE_2_1:
- Removed oprtnlstate_attr_id variable and if statements as it is a mandatory attribute.
- Created new common functions in OpstateCommon test module to create dictionary containing attributes and commands.
- Renamed some variables that had upper case letters to contain only lower case letters.
- Removed creating variable for events and returned PICS checks for those in TC_OpstateCommon test module as not currently able to automate

* Restyled by autopep8

* Updated TC_OpstateCommon module:
- Removed unneeded local variable "phase_list_attr_id" as lint mentioned it is not being used in test 2_3.

* Updated TC_OpstateCommon and TC_RVCOPSTATE_2_1:
- Removed variable functions and replaced with calling named attributes in if checks directly.

* Restyled by autopep8

* Updated matter_testing_support, OpstateCommon, and RVCOPSTATE_2_1 modules:
- Added attributes_guard to matter_testing_support helper module to check if attributes are in attributes list using has_attributes function
- Changed attributes checks to using attributes_guard function in OpstateCommon and RVCOPSTATE_2_1 test modules

* Restyled by autopep8

* Restyled by isort

* Updated TC_OpstateCommon.py:
- Resolved linting errors

* Updating method for attributes_guard functionality

* Updated TC_RVCOPSTATE_2_1 test module:
- Debugging to find issue why test is failing in CI pipeline.

* Updating TC_RVCOPSTATE_2_1 test module:
- Continuing effort to resolve issue with CI pipeline

* Updated TC_OpstateCommon, TC_RVCOPSTATE_2_1, and matter_testing support:
- Resolved issues with attributes_guard function in matter_testing support module

* Restyled by autopep8

* Updated TC_RVCOPSTATE_2_1 test module:
- changed verbosity in CI arguments to make it quieter.

* Updating matter_testing support module:
- Updated attributes_guard function to make it async

* Updating TC_OpstateCommon and TC_RVCOPSTATE_2_1 test modules:
- Updated method for attributes_guard functionality.
- Added additional check to make sure that endpoint is not 0 or not provided in command line

* Restyled by autopep8

* Updated matter_testing helper module:
- Resolved linting error

* Updating TC_RVCOPSTATE_2_1 test module:
- Resolving linting error

* Update src/python_testing/matter_testing_infrastructure/chip/testing/matter_testing.py

Adding coding change from Cecille!

Co-authored-by: C Freeman <[email protected]>

* Updating OPSTATECommon and RVCOPSTATE_2_1 modules:
- Updated to using attribute_guard function in place of attributes_guard.

* Updated matter_testing, added new TC_TestAttrAvail modules:
- Updated matter_testing support module to include new command_guard() and feature_guard()
- Created standalone test to show that guard functionality works for CASE, PASE, and no factory reset commissioning
- Added TC_TestAttrAvail to slow tests as it takes ~30 seconds to run the tests

* Restyled by autopep8

* Restyled by isort

* Updated TC_OpstateCommon python module:
- Updated to using new command_guard() for OPSTATE tests

* Updated matter_testing, TC_OpstateCommon, and TC_TestAttrAvail modules:
- Resolving linting errors

* Restyled by isort

* Update src/python_testing/matter_testing_infrastructure/chip/testing/matter_testing.py

Adding commi from Cecille to the code here to help better clarify and explain reasoning for this coding change.

Co-authored-by: C Freeman <[email protected]>

---------

Co-authored-by: Restyled.io <[email protected]>
Co-authored-by: C Freeman <[email protected]>
* Enforce a maximum entry limit during append operations

* Add test for this change
* Add initial feature logic for Terms and Conditions (TC) acknowledgements

This commit introduces the initial logic for handling Terms and
Conditions (TC) acknowledgements in the General Commissioning cluster.
The logic includes support for setting and checking TC acknowledgements
and versions during the commissioning process.

Changes include:
- Handling TC acknowledgements and TC acknowledgement version in the
  pairing command.
- Logic to read TC attributes and check TC acceptance in the General
  Commissioning server.
- Introduction of classes to manage TC acceptance logic.
- Initialization and use of TC providers in the server setup.
- Addition of a new commissioning stage for TC acknowledgements in the
  commissioning flow.

The feature logic is currently disabled and will be enabled in an
example in a subsequent commit.

* ./scripts/helpers/restyle-diff.sh @{u}

* Ignore file reference check on TermsAndConditionsManager.cpp

The TermsAndConditionsManager.cpp file is only referenced within sample
apps that utilize the Terms and Conditions feature.

* Make `terms and conditions required` build configurable:

- Moved the configuration from core into app buildconfig
- renamed the flag to expand `TC` into `TERMS AND CONDITIONS`
- updated includes in general-commissioning to include the right header
- added the configuration as a build option into targets.py/host.py
- updated unit test

* Move terms and conditions to its own target and include cpp file

- Create a separate source set for terms and conditions
- include the manager cpp in that file
- make the build conditional (this required flag moving)
- fixed typo in targets.py to make things compile

Compile-tested only (the -terms-and-conditions variant of all clusters
compiled)

* Fix mangled license blurb

* Remove edited date for CHIPConfig.h

* Fix unit tests dependencies

* Add back some includes

---------

Co-authored-by: Andrei Litvin <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants