diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index cba40591a9e4fc..b796e0fd859b19 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -448,7 +448,6 @@ jobs: scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --app out/linux-x64-all-clusters-ipv6only-no-ble-no-wifi-tsan-clang-test/chip-all-clusters-app --factoryreset --app-args "--discriminator 1234 --KVS kvs1 --trace_decode 1" --script "src/python_testing/TC_ACE_1_3.py" --script-args "--storage-path admin_storage.json --commissioning-method on-network --discriminator 1234 --passcode 20202021"' scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --app out/linux-x64-all-clusters-ipv6only-no-ble-no-wifi-tsan-clang-test/chip-all-clusters-app --factoryreset --app-args "--discriminator 1234 --KVS kvs1 --trace_decode 1" --script "src/python_testing/TC_CGEN_2_4.py" --script-args "--storage-path admin_storage.json --commissioning-method on-network --discriminator 1234 --passcode 20202021"' scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --app out/linux-x64-all-clusters-ipv6only-no-ble-no-wifi-tsan-clang-test/chip-all-clusters-app --factoryreset --app-args "--discriminator 1234 --KVS kvs1 --trace_decode 1" --script "src/python_testing/TC_DA_1_2.py" --script-args "--storage-path admin_storage.json --commissioning-method on-network --discriminator 1234 --passcode 20202021 --PICS src/app/tests/suites/certification/ci-pics-values"' - scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --app out/linux-x64-all-clusters-ipv6only-no-ble-no-wifi-tsan-clang-test/chip-all-clusters-app --factoryreset --app-args "--discriminator 1234 --KVS kvs1 --trace_decode 1" --script "src/python_testing/TC_TIMESYNC_3_1.py" --script-args "--storage-path admin_storage.json --commissioning-method on-network --discriminator 1234 --passcode 20202021"' scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --app out/linux-x64-all-clusters-ipv6only-no-ble-no-wifi-tsan-clang-test/chip-all-clusters-app --factoryreset --app-args "--discriminator 1234 --KVS kvs1 --trace_decode 1" --script "src/python_testing/TC_DA_1_5.py" --script-args "--storage-path admin_storage.json --commissioning-method on-network --discriminator 1234 --passcode 20202021 --PICS src/app/tests/suites/certification/ci-pics-values"' scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --app out/linux-x64-all-clusters-ipv6only-no-ble-no-wifi-tsan-clang-test/chip-all-clusters-app --factoryreset --app-args "--discriminator 1234 --KVS kvs1 --trace_decode 1" --script "src/python_testing/TC_IDM_1_2.py" --script-args "--storage-path admin_storage.json --commissioning-method on-network --discriminator 1234 --passcode 20202021"' scripts/run_in_python_env.sh out/venv './scripts/tests/run_python_test.py --script "src/python_testing/TestMatterTestingSupport.py"' diff --git a/integrations/cloudbuild/build-all.yaml b/integrations/cloudbuild/build-all.yaml index 82031d7d8ca77c..d4a98691e280e8 100644 --- a/integrations/cloudbuild/build-all.yaml +++ b/integrations/cloudbuild/build-all.yaml @@ -6,7 +6,7 @@ steps: - "--init" - "--recursive" id: Submodules - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -21,7 +21,7 @@ steps: path: /pwenv timeout: 900s - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -85,7 +85,7 @@ steps: --target k32w-shell build --create-archives /workspace/artifacts/ - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: diff --git a/integrations/cloudbuild/chef.yaml b/integrations/cloudbuild/chef.yaml index 7e750750f5f76a..2d3ecd1b38e95a 100644 --- a/integrations/cloudbuild/chef.yaml +++ b/integrations/cloudbuild/chef.yaml @@ -1,5 +1,5 @@ steps: - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -12,7 +12,7 @@ steps: path: /pwenv timeout: 2700s - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -26,7 +26,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: diff --git a/integrations/cloudbuild/smoke-test.yaml b/integrations/cloudbuild/smoke-test.yaml index ea832591a1afa6..2ba4a7a0f6e3ae 100644 --- a/integrations/cloudbuild/smoke-test.yaml +++ b/integrations/cloudbuild/smoke-test.yaml @@ -1,5 +1,5 @@ steps: - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" entrypoint: "bash" args: - "-c" @@ -7,7 +7,7 @@ steps: git config --global --add safe.directory "*" git submodule update --init --recursive id: Submodules - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" env: - PW_ENVIRONMENT_ROOT=/pwenv args: @@ -22,7 +22,7 @@ steps: path: /pwenv timeout: 900s - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" id: ESP32 env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -42,7 +42,7 @@ steps: volumes: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" id: NRFConnect env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -63,7 +63,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" id: EFR32 env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -85,7 +85,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" id: Linux env: - PW_ENVIRONMENT_ROOT=/pwenv @@ -138,7 +138,7 @@ steps: - name: pwenv path: /pwenv - - name: "ghcr.io/project-chip/chip-build-vscode:1" + - name: "connectedhomeip/chip-build-vscode:0.7.25" id: Android env: - PW_ENVIRONMENT_ROOT=/pwenv diff --git a/src/python_testing/TC_TIMESYNC_2_2.py b/src/python_testing/TC_TIMESYNC_2_2.py index 72b9d0978e65f3..0a92f1c47fcf05 100644 --- a/src/python_testing/TC_TIMESYNC_2_2.py +++ b/src/python_testing/TC_TIMESYNC_2_2.py @@ -32,8 +32,7 @@ async def read_ts_attribute_expect_success(self, endpoint, attribute): @async_test_body async def test_TC_TIMESYNC_2_2(self): - # Time sync is required to be on endpoint 0 if it is present - endpoint = 0 + endpoint = self.user_params.get("endpoint", 0) time_cluster = Clusters.Objects.TimeSynchronization diff --git a/src/python_testing/TC_TIMESYNC_2_4.py b/src/python_testing/TC_TIMESYNC_2_4.py index b6b9644fd52719..a66ecc33599d91 100644 --- a/src/python_testing/TC_TIMESYNC_2_4.py +++ b/src/python_testing/TC_TIMESYNC_2_4.py @@ -46,8 +46,7 @@ async def send_set_time_zone_cmd_expect_error(self, tz: typing.List[Clusters.Obj @async_test_body async def test_TC_TIMESYNC_2_4(self): - # Time sync is required to be on endpoint 0 if it is present - self.endpoint = 0 + self.endpoint = self.user_params.get("endpoint", 0) time_cluster = Clusters.Objects.TimeSynchronization tz_struct = time_cluster.Structs.TimeZoneStruct diff --git a/src/python_testing/TC_TIMESYNC_2_5.py b/src/python_testing/TC_TIMESYNC_2_5.py index 683009c88733f7..3b2f62ce8d2810 100644 --- a/src/python_testing/TC_TIMESYNC_2_5.py +++ b/src/python_testing/TC_TIMESYNC_2_5.py @@ -43,8 +43,7 @@ async def send_set_dst_cmd_expect_error(self, dst: typing.List[Clusters.Objects. @async_test_body async def test_TC_TIMESYNC_2_5(self): - # Time sync is required to be on endpoint 0 if it is present - self.endpoint = 0 + self.endpoint = self.user_params.get("endpoint", 0) time_cluster = Clusters.Objects.TimeSynchronization dst_struct = time_cluster.Structs.DSTOffsetStruct diff --git a/src/python_testing/TC_TIMESYNC_2_6.py b/src/python_testing/TC_TIMESYNC_2_6.py index 23ed1a5575b6dd..2c12ed803ce221 100644 --- a/src/python_testing/TC_TIMESYNC_2_6.py +++ b/src/python_testing/TC_TIMESYNC_2_6.py @@ -43,8 +43,7 @@ async def send_set_default_ntp_cmd_expect_error(self, ntp: typing.Union[Nullable @async_test_body async def test_TC_TIMESYNC_2_6(self): - # Time sync is required to be on endpoint 0 if it is present - self.endpoint = 0 + self.endpoint = self.user_params.get("endpoint", 0) self.print_step(0, "Commissioning, already done") attributes = Clusters.TimeSynchronization.Attributes diff --git a/src/python_testing/TC_TIMESYNC_2_7.py b/src/python_testing/TC_TIMESYNC_2_7.py index 8af89465bd3e5a..1aab7f9c126b66 100644 --- a/src/python_testing/TC_TIMESYNC_2_7.py +++ b/src/python_testing/TC_TIMESYNC_2_7.py @@ -49,8 +49,7 @@ async def send_set_utc_cmd(self, utc: uint) -> None: @async_test_body async def test_TC_TIMESYNC_2_7(self): - # Time sync is required to be on endpoint 0 if it is present - self.endpoint = 0 + self.endpoint = self.user_params.get("endpoint", 0) self.print_step(0, "Commissioning, already done") time_cluster = Clusters.Objects.TimeSynchronization @@ -109,8 +108,6 @@ async def test_TC_TIMESYNC_2_7(self): if tz_list_size > 1: th_utc = utc_time_in_matter_epoch() tz = [tz_struct(offset=3600, validAt=0), tz_struct(offset=7200, validAt=th_utc+1e+7)] - ret = await self.send_set_time_zone_cmd(tz) - asserts.assert_true(ret.DSTOffsetRequired, "DSTOffsetRequired not set to true") self.print_step(12, "Send SetDSTOffset command") if tz_list_size > 1: diff --git a/src/python_testing/TC_TIMESYNC_2_8.py b/src/python_testing/TC_TIMESYNC_2_8.py index ce5ed2b4ec307c..589cc61b381752 100644 --- a/src/python_testing/TC_TIMESYNC_2_8.py +++ b/src/python_testing/TC_TIMESYNC_2_8.py @@ -49,8 +49,7 @@ async def send_set_utc_cmd(self, utc: uint) -> None: @async_test_body async def test_TC_TIMESYNC_2_8(self): - # Time sync is required to be on endpoint 0 if it is present - self.endpoint = 0 + self.endpoint = self.user_params.get("endpoint", 0) self.print_step(0, "Commissioning, already done") time_cluster = Clusters.Objects.TimeSynchronization @@ -107,9 +106,10 @@ async def test_TC_TIMESYNC_2_8(self): self.print_step(11, "Read LocalTime") local = await self.read_ts_attribute_expect_success(local_attr) - asserts.assert_equal(local, NullValue, "LocalTime cannot be calculated since DST is empty") + compare_time(received=local, offset=timedelta(), tolerance=timedelta(seconds=5)) self.print_step(12, "Send SetDSTOffset command") + th_utc = utc_time_in_matter_epoch() dst = [dst_struct(offset=3600, validStarting=0, validUntil=NullValue)] await self.send_set_dst_cmd(dst) @@ -164,10 +164,11 @@ async def test_TC_TIMESYNC_2_8(self): self.print_step(24, "Read LocalTime") if dst_list_size > 1: local = await self.read_ts_attribute_expect_success(local_attr) - asserts.assert_equal(local, NullValue, "LocalTime cannot be calculated since DST is empty") + compare_time(received=local, offset=timedelta(), tolerance=timedelta(seconds=5)) self.print_step(25, "Send SetDSTOffset command") - dst = [dst_struct(offset=-3600, validStarting=0, validUntil=NullValue)] + th_utc = utc_time_in_matter_epoch() + dst = [dst_struct(offset=3600, validStarting=0, validUntil=NullValue)] await self.send_set_dst_cmd(dst) self.print_step(26, "Read LocalTime") @@ -175,6 +176,7 @@ async def test_TC_TIMESYNC_2_8(self): compare_time(received=local, offset=timedelta(seconds=-3600), tolerance=timedelta(seconds=5)) self.print_step(27, "Send SetDSTOffset command") + th_utc = utc_time_in_matter_epoch() dst = [dst_struct(offset=0, validStarting=0, validUntil=NullValue)] await self.send_set_dst_cmd(dst) diff --git a/src/python_testing/TC_TIMESYNC_2_9.py b/src/python_testing/TC_TIMESYNC_2_9.py index a1d10d4c9616cc..77857c195540f0 100644 --- a/src/python_testing/TC_TIMESYNC_2_9.py +++ b/src/python_testing/TC_TIMESYNC_2_9.py @@ -48,8 +48,7 @@ async def send_set_utc_cmd(self, utc: uint) -> None: @async_test_body async def test_TC_TIMESYNC_2_9(self): - # Time sync is required to be on endpoint 0 if it is present - self.endpoint = 0 + self.endpoint = self.user_params.get("endpoint", 0) self.print_step(0, "Commissioning, already done") time_cluster = Clusters.Objects.TimeSynchronization diff --git a/src/python_testing/TC_TIMESYNC_3_1.py b/src/python_testing/TC_TIMESYNC_3_1.py deleted file mode 100644 index f05730e58dcad0..00000000000000 --- a/src/python_testing/TC_TIMESYNC_3_1.py +++ /dev/null @@ -1,48 +0,0 @@ -# -# Copyright (c) 2023 Project CHIP Authors -# All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -import chip.clusters as Clusters -from matter_testing_support import MatterBaseTest, async_test_body, default_matter_test_main -from mobly import asserts - - -class TC_TIMESYNC_3_1(MatterBaseTest): - - @async_test_body - async def test_TC_TIMESYNC_3_1(self): - self.print_step(1, "Wildcard read of time sync cluster") - utc_time_attr = Clusters.TimeSynchronization.Attributes.UTCTime - ret = await self.default_controller.ReadAttribute(nodeid=self.dut_node_id, attributes=[(utc_time_attr)]) - asserts.assert_equal(len(ret.keys()), 1, 'More than one time cluster found on the node') - asserts.assert_equal(next(iter(ret)), 0, 'Time cluster found on non-root endpoint') - - self.print_step(2, "Wildcard read of descriptor cluster") - server_list_attr = Clusters.Descriptor.Attributes.ServerList - ret = await self.default_controller.ReadAttribute(nodeid=self.dut_node_id, attributes=[(server_list_attr)]) - print(ret) - for endpoint, servers in ret.items(): - server_list = servers[Clusters.Descriptor][Clusters.Descriptor.Attributes.ServerList] - if endpoint == 0: - asserts.assert_true(Clusters.TimeSynchronization.id in server_list, - 'Time cluster id is not listed in server list for root endpoint') - else: - asserts.assert_false(Clusters.TimeSynchronization.id in server_list, - f'Time cluster id is incorrectly listed in the server list for ep {endpoint}') - - -if __name__ == "__main__": - default_matter_test_main() diff --git a/third_party/mbedtls/repo b/third_party/mbedtls/repo index 4e73afe6ed21ed..b18d45f042555d 160000 --- a/third_party/mbedtls/repo +++ b/third_party/mbedtls/repo @@ -1 +1 @@ -Subproject commit 4e73afe6ed21edfc03057f2c97d541b57d0d01e9 +Subproject commit b18d45f042555dc79e5c0e2e0f8f73eb3a61677e diff --git a/third_party/openthread/repo b/third_party/openthread/repo index f7690fe7e9d638..8bc25042ba5cde 160000 --- a/third_party/openthread/repo +++ b/third_party/openthread/repo @@ -1 +1 @@ -Subproject commit f7690fe7e9d638341921808cba6a3e695ec0131e +Subproject commit 8bc25042ba5cde20605eec2a329c0dff575303f4