# Copyright (c) 2021 Project CHIP Authors
#
# 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.
# Auto-generated scripts for harness use only, please review before automation. The endpoints and cluster names are currently set to default

name: 3.2.22. [TC-CC-7.5] Enhanced Hue functionality with client as DUT

PICS:
    - CC.C

config:
    nodeId: 0x12344321
    cluster: "Basic"
    endpoint: 0

tests:
    - label: "Note"
      verification: |
          For DUT as client test cases, Chip-tool command used below are an example to verify the functionality. For certification test, we expect DUT should have a capability or way to run the equivalent command.
      disabled: true

    - label: "Pre-Condition"
      verification: |
          1. Commission DUT to TH

          2. Set DUT OnOff to On

          3. DUT supports CC.C.F01(EHUE)
      disabled: true

    - label: "DUT sends EnhancedMoveToHue command to TH"
      PICS: CC.C.C40.Tx
      verification: |
          ./chip-tool colorcontrol enhanced-move-to-hue 1000 3 200 0 0 1 1

          Verify success response in TH(all-clusters-app) Log:
          [1657912045.703432][2977:2977] CHIP:DMG: InvokeRequestMessage =
          [1657912045.703462][2977:2977] CHIP:DMG: {
          [1657912045.703485][2977:2977] CHIP:DMG:        suppressResponse = false,
          [1657912045.703511][2977:2977] CHIP:DMG:        timedRequest = false,
          [1657912045.703548][2977:2977] CHIP:DMG:        InvokeRequests =
          [1657912045.703583][2977:2977] CHIP:DMG:        [
          [1657912045.703608][2977:2977] CHIP:DMG:                CommandDataIB =
          [1657912045.703635][2977:2977] CHIP:DMG:                {
          [1657912045.703670][2977:2977] CHIP:DMG:                        CommandPathIB =
          [1657912045.703709][2977:2977] CHIP:DMG:                        {
          [1657912045.703737][2977:2977] CHIP:DMG:                                EndpointId = 0x1,
          [1657912045.703791][2977:2977] CHIP:DMG:                                ClusterId = 0x300,
          [1657912045.703830][2977:2977] CHIP:DMG:                                CommandId = 0x40,
          [1657912045.703864][2977:2977] CHIP:DMG:                        },
          [1657912045.703908][2977:2977] CHIP:DMG:
          [1657912045.703936][2977:2977] CHIP:DMG:                        CommandFields =
          [1657912045.703967][2977:2977] CHIP:DMG:                        {
          [1657912045.704009][2977:2977] CHIP:DMG:                                0x0 = 1000,
          [1657912045.704048][2977:2977] CHIP:DMG:                                0x1 = 3,
          [1657912045.704121][2977:2977] CHIP:DMG:                                0x2 = 200,
          [1657912045.704164][2977:2977] CHIP:DMG:                                0x3 = 0,
          [1657912045.704202][2977:2977] CHIP:DMG:                                0x4 = 0,
          [1657912045.704238][2977:2977] CHIP:DMG:                        },
          [1657912045.704277][2977:2977] CHIP:DMG:                },
          [1657912045.704309][2977:2977] CHIP:DMG:
          [1657912045.704333][2977:2977] CHIP:DMG:        ],
          [1657912045.704374][2977:2977] CHIP:DMG:
          [1657912045.704399][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912045.704423][2977:2977] CHIP:DMG: },
          [1657912045.704511][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912045.704551][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912045.704580][2977:2977] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0040
      disabled: true

    - label:
          "DUT reads EnhancedCurrentHue attribute from TH (potentially multiple
          times)"
      PICS: CC.C.C40.Tx && CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1


          Verify response contains a EnhancedCurrentHue value in  TH(all-clusters-app)  Logs:
          [1657912064.296156][2977:2977] CHIP:IM: Received Read request
          [1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
          [1657912064.296295][2977:2977] CHIP:DMG: {
          [1657912064.296322][2977:2977] CHIP:DMG:        AttributePathIBs =
          [1657912064.296378][2977:2977] CHIP:DMG:        [
          [1657912064.296409][2977:2977] CHIP:DMG:                AttributePathIB =
          [1657912064.296448][2977:2977] CHIP:DMG:                {
          [1657912064.296497][2977:2977] CHIP:DMG:                        Endpoint = 0x1,
          [1657912064.296538][2977:2977] CHIP:DMG:                        Cluster = 0x300,
          [1657912064.296578][2977:2977] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912064.296621][2977:2977] CHIP:DMG:                }
          [1657912064.296660][2977:2977] CHIP:DMG:
          [1657912064.296694][2977:2977] CHIP:DMG:        ],
          [1657912064.296729][2977:2977] CHIP:DMG:
          [1657912064.296774][2977:2977] CHIP:DMG:        isFabricFiltered = true,
          [1657912064.296808][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912064.296837][2977:2977] CHIP:DMG: },
          [1657912064.296942][2977:2977] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912064.297059][2977:2977] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912064.297109][2977:2977] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
          [1657912064.297136][2977:2977] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4000 (expanded=0)
          [1657912064.297171][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912064.297210][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912064.297288][2977:2977] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT sends EnhancedMoveHue command to TH"
      PICS: CC.C.C41.Tx
      verification: |
          ./chip-tool colorcontrol enhanced-move-hue 0 100 0 0 1 1


          Verify success response in TH(all-clusters-app) Log:

          [1657912085.345044][2977:2977] CHIP:DMG: InvokeRequestMessage =
          [1657912085.345072][2977:2977] CHIP:DMG: {
          [1657912085.345094][2977:2977] CHIP:DMG:        suppressResponse = false,
          [1657912085.345120][2977:2977] CHIP:DMG:        timedRequest = false,
          [1657912085.345144][2977:2977] CHIP:DMG:        InvokeRequests =
          [1657912085.345175][2977:2977] CHIP:DMG:        [
          [1657912085.345199][2977:2977] CHIP:DMG:                CommandDataIB =
          [1657912085.345228][2977:2977] CHIP:DMG:                {
          [1657912085.345256][2977:2977] CHIP:DMG:                        CommandPathIB =
          [1657912085.345290][2977:2977] CHIP:DMG:                        {
          [1657912085.345320][2977:2977] CHIP:DMG:                                EndpointId = 0x1,
          [1657912085.345355][2977:2977] CHIP:DMG:                                ClusterId = 0x300,
          [1657912085.345388][2977:2977] CHIP:DMG:                                CommandId = 0x41,
          [1657912085.345418][2977:2977] CHIP:DMG:                        },
          [1657912085.345451][2977:2977] CHIP:DMG:
          [1657912085.345479][2977:2977] CHIP:DMG:                        CommandFields =
          [1657912085.345510][2977:2977] CHIP:DMG:                        {
          [1657912085.345542][2977:2977] CHIP:DMG:                                0x0 = 0,
          [1657912085.345574][2977:2977] CHIP:DMG:                                0x1 = 100,
          [1657912085.345607][2977:2977] CHIP:DMG:                                0x2 = 0,
          [1657912085.345639][2977:2977] CHIP:DMG:                                0x3 = 0,
          [1657912085.345671][2977:2977] CHIP:DMG:                        },
          [1657912085.345698][2977:2977] CHIP:DMG:                },
          [1657912085.345730][2977:2977] CHIP:DMG:
          [1657912085.345753][2977:2977] CHIP:DMG:        ],
          [1657912085.345784][2977:2977] CHIP:DMG:
          [1657912085.345807][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912085.345829][2977:2977] CHIP:DMG: },
          [1657912085.345899][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912085.345935][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912085.345962][2977:2977] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0041
      disabled: true

    - label:
          "DUT reads EnhancedCurrentHue attribute (potentially multiple times)"
      PICS: CC.C.C41.Tx && CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1

          Verify response contains a EnhancedCurrentHue value in  TH(all-clusters-app)  Logs:
          [1657912064.296156][2977:2977] CHIP:IM: Received Read request
          [1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
          [1657912064.296295][2977:2977] CHIP:DMG: {
          [1657912064.296322][2977:2977] CHIP:DMG:        AttributePathIBs =
          [1657912064.296378][2977:2977] CHIP:DMG:        [
          [1657912064.296409][2977:2977] CHIP:DMG:                AttributePathIB =
          [1657912064.296448][2977:2977] CHIP:DMG:                {
          [1657912064.296497][2977:2977] CHIP:DMG:                        Endpoint = 0x1,
          [1657912064.296538][2977:2977] CHIP:DMG:                        Cluster = 0x300,
          [1657912064.296578][2977:2977] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912064.296621][2977:2977] CHIP:DMG:                }
          [1657912064.296660][2977:2977] CHIP:DMG:
          [1657912064.296694][2977:2977] CHIP:DMG:        ],
          [1657912064.296729][2977:2977] CHIP:DMG:
          [1657912064.296774][2977:2977] CHIP:DMG:        isFabricFiltered = true,
          [1657912064.296808][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912064.296837][2977:2977] CHIP:DMG: },
          [1657912064.296942][2977:2977] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912064.297059][2977:2977] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912064.297109][2977:2977] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
          [1657912064.297136][2977:2977] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4000 (expanded=0)
          [1657912064.297171][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912064.297210][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912064.297288][2977:2977] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT sends EnhancedStepHue command to TH"
      PICS: CC.C.C42.Tx
      verification: |
          ./chip-tool colorcontrol enhanced-step-hue 1 1000 200 0 0 1 1

          Verify success response in TH(all-clusters-app) Log:
          [1657912123.677693][2977:2977] CHIP:DMG: InvokeRequestMessage =
          [1657912123.677720][2977:2977] CHIP:DMG: {
          [1657912123.677742][2977:2977] CHIP:DMG:        suppressResponse = false,
          [1657912123.677769][2977:2977] CHIP:DMG:        timedRequest = false,
          [1657912123.677802][2977:2977] CHIP:DMG:        InvokeRequests =
          [1657912123.677836][2977:2977] CHIP:DMG:        [
          [1657912123.677860][2977:2977] CHIP:DMG:                CommandDataIB =
          [1657912123.677901][2977:2977] CHIP:DMG:                {
          [1657912123.677926][2977:2977] CHIP:DMG:                        CommandPathIB =
          [1657912123.677957][2977:2977] CHIP:DMG:                        {
          [1657912123.677996][2977:2977] CHIP:DMG:                                EndpointId = 0x1,
          [1657912123.678030][2977:2977] CHIP:DMG:                                ClusterId = 0x300,
          [1657912123.678061][2977:2977] CHIP:DMG:                                CommandId = 0x42,
          [1657912123.678097][2977:2977] CHIP:DMG:                        },
          [1657912123.678130][2977:2977] CHIP:DMG:
          [1657912123.678158][2977:2977] CHIP:DMG:                        CommandFields =
          [1657912123.678188][2977:2977] CHIP:DMG:                        {
          [1657912123.678229][2977:2977] CHIP:DMG:                                0x0 = 1,
          [1657912123.678304][2977:2977] CHIP:DMG:                                0x1 = 1000,
          [1657912123.678339][2977:2977] CHIP:DMG:                                0x2 = 200,
          [1657912123.678372][2977:2977] CHIP:DMG:                                0x3 = 0,
          [1657912123.678413][2977:2977] CHIP:DMG:                                0x4 = 0,
          [1657912123.678443][2977:2977] CHIP:DMG:                        },
          [1657912123.678484][2977:2977] CHIP:DMG:                },
          [1657912123.678515][2977:2977] CHIP:DMG:
          [1657912123.678538][2977:2977] CHIP:DMG:        ],
          [1657912123.678578][2977:2977] CHIP:DMG:
          [1657912123.678602][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912123.678625][2977:2977] CHIP:DMG: },
          [1657912123.678704][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912123.678741][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912123.678778][2977:2977] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0042
      disabled: true

    - label:
          "DUT reads EnhancedCurrentHue attribute from TH (potentially multiple
          times)"
      PICS: CC.C.C42.Tx && CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1

          Verify response contains a EnhancedCurrentHue value in  TH(all-clusters-app)  Logs:
          [1657912064.296156][2977:2977] CHIP:IM: Received Read request
          [1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
          [1657912064.296295][2977:2977] CHIP:DMG: {
          [1657912064.296322][2977:2977] CHIP:DMG:        AttributePathIBs =
          [1657912064.296378][2977:2977] CHIP:DMG:        [
          [1657912064.296409][2977:2977] CHIP:DMG:                AttributePathIB =
          [1657912064.296448][2977:2977] CHIP:DMG:                {
          [1657912064.296497][2977:2977] CHIP:DMG:                        Endpoint = 0x1,
          [1657912064.296538][2977:2977] CHIP:DMG:                        Cluster = 0x300,
          [1657912064.296578][2977:2977] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912064.296621][2977:2977] CHIP:DMG:                }
          [1657912064.296660][2977:2977] CHIP:DMG:
          [1657912064.296694][2977:2977] CHIP:DMG:        ],
          [1657912064.296729][2977:2977] CHIP:DMG:
          [1657912064.296774][2977:2977] CHIP:DMG:        isFabricFiltered = true,
          [1657912064.296808][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912064.296837][2977:2977] CHIP:DMG: },
          [1657912064.296942][2977:2977] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912064.297059][2977:2977] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912064.297109][2977:2977] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
          [1657912064.297136][2977:2977] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4000 (expanded=0)
          [1657912064.297171][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912064.297210][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912064.297288][2977:2977] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT sends EnhancedMoveToHueAndSaturation command to TH"
      PICS: CC.C.C43.Tx
      verification: |
          ./chip-tool colorcontrol enhanced-move-to-hue-and-saturation 2500 100 200 0 0 1 1


          Verify success response in TH(all-clusters-app) Log:
          [1657912153.500024][2977:2977] CHIP:DMG: InvokeRequestMessage =
          [1657912153.500080][2977:2977] CHIP:DMG: {
          [1657912153.500108][2977:2977] CHIP:DMG:        suppressResponse = false,
          [1657912153.500139][2977:2977] CHIP:DMG:        timedRequest = false,
          [1657912153.500180][2977:2977] CHIP:DMG:        InvokeRequests =
          [1657912153.500217][2977:2977] CHIP:DMG:        [
          [1657912153.500244][2977:2977] CHIP:DMG:                CommandDataIB =
          [1657912153.500288][2977:2977] CHIP:DMG:                {
          [1657912153.500317][2977:2977] CHIP:DMG:                        CommandPathIB =
          [1657912153.500352][2977:2977] CHIP:DMG:                        {
          [1657912153.500398][2977:2977] CHIP:DMG:                                EndpointId = 0x1,
          [1657912153.500437][2977:2977] CHIP:DMG:                                ClusterId = 0x300,
          [1657912153.500472][2977:2977] CHIP:DMG:                                CommandId = 0x43,
          [1657912153.500512][2977:2977] CHIP:DMG:                        },
          [1657912153.500550][2977:2977] CHIP:DMG:
          [1657912153.500579][2977:2977] CHIP:DMG:                        CommandFields =
          [1657912153.500610][2977:2977] CHIP:DMG:                        {
          [1657912153.500656][2977:2977] CHIP:DMG:                                0x0 = 2500,
          [1657912153.500694][2977:2977] CHIP:DMG:                                0x1 = 100,
          [1657912153.500731][2977:2977] CHIP:DMG:                                0x2 = 200,
          [1657912153.500779][2977:2977] CHIP:DMG:                                0x3 = 0,
          [1657912153.500815][2977:2977] CHIP:DMG:                                0x4 = 0,
          [1657912153.500861][2977:2977] CHIP:DMG:                        },
          [1657912153.500893][2977:2977] CHIP:DMG:                },
          [1657912153.500928][2977:2977] CHIP:DMG:
          [1657912153.500964][2977:2977] CHIP:DMG:        ],
          [1657912153.501001][2977:2977] CHIP:DMG:
          [1657912153.501028][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912153.501054][2977:2977] CHIP:DMG: },
          [1657912153.501143][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912153.501195][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912153.501227][2977:2977] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0043
      disabled: true

    - label:
          "DUT reads EnhancedCurrentHue and CurrentSaturation attributes from TH
          (potentially multiple times)"
      PICS: CC.C.C43.Tx && CC.C.A4000 && CC.C.A0001
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1


          Verify response contains a EnhancedCurrentHue value in  TH(all-clusters-app)  Logs:
          [1657912064.296156][2977:2977] CHIP:IM: Received Read request
          [1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
          [1657912064.296295][2977:2977] CHIP:DMG: {
          [1657912064.296322][2977:2977] CHIP:DMG:        AttributePathIBs =
          [1657912064.296378][2977:2977] CHIP:DMG:        [
          [1657912064.296409][2977:2977] CHIP:DMG:                AttributePathIB =
          [1657912064.296448][2977:2977] CHIP:DMG:                {
          [1657912064.296497][2977:2977] CHIP:DMG:                        Endpoint = 0x1,
          [1657912064.296538][2977:2977] CHIP:DMG:                        Cluster = 0x300,
          [1657912064.296578][2977:2977] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912064.296621][2977:2977] CHIP:DMG:                }
          [1657912064.296660][2977:2977] CHIP:DMG:
          [1657912064.296694][2977:2977] CHIP:DMG:        ],
          [1657912064.296729][2977:2977] CHIP:DMG:
          [1657912064.296774][2977:2977] CHIP:DMG:        isFabricFiltered = true,
          [1657912064.296808][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912064.296837][2977:2977] CHIP:DMG: },
          [1657912064.296942][2977:2977] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912064.297059][2977:2977] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912064.297109][2977:2977] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
          [1657912064.297136][2977:2977] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4000 (expanded=0)
          [1657912064.297171][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912064.297210][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912064.297288][2977:2977] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT sends StopMoveStep command to TH."
      PICS: CC.C.C47.Tx
      verification: |
          ./chip-tool colorcontrol stop-move-step 0 0 1 1


          Verify success response in TH(all-clusters-app) Log:
          [1657912172.988756][2977:2977] CHIP:DMG: InvokeRequestMessage =
          [1657912172.988782][2977:2977] CHIP:DMG: {
          [1657912172.988805][2977:2977] CHIP:DMG:        suppressResponse = false,
          [1657912172.988840][2977:2977] CHIP:DMG:        timedRequest = false,
          [1657912172.988864][2977:2977] CHIP:DMG:        InvokeRequests =
          [1657912172.988895][2977:2977] CHIP:DMG:        [
          [1657912172.988919][2977:2977] CHIP:DMG:                CommandDataIB =
          [1657912172.988957][2977:2977] CHIP:DMG:                {
          [1657912172.988982][2977:2977] CHIP:DMG:                        CommandPathIB =
          [1657912172.989014][2977:2977] CHIP:DMG:                        {
          [1657912172.989054][2977:2977] CHIP:DMG:                                EndpointId = 0x1,
          [1657912172.989088][2977:2977] CHIP:DMG:                                ClusterId = 0x300,
          [1657912172.989120][2977:2977] CHIP:DMG:                                CommandId = 0x47,
          [1657912172.989161][2977:2977] CHIP:DMG:                        },
          [1657912172.989193][2977:2977] CHIP:DMG:
          [1657912172.989221][2977:2977] CHIP:DMG:                        CommandFields =
          [1657912172.989250][2977:2977] CHIP:DMG:                        {
          [1657912172.989290][2977:2977] CHIP:DMG:                                0x0 = 0,
          [1657912172.989323][2977:2977] CHIP:DMG:                                0x1 = 0,
          [1657912172.989354][2977:2977] CHIP:DMG:                        },
          [1657912172.989390][2977:2977] CHIP:DMG:                },
          [1657912172.989420][2977:2977] CHIP:DMG:
          [1657912172.989443][2977:2977] CHIP:DMG:        ],
          [1657912172.989483][2977:2977] CHIP:DMG:
          [1657912172.989508][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912172.989530][2977:2977] CHIP:DMG: },
          [1657912172.989608][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912172.989646][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912172.989682][2977:2977] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0047
      disabled: true

    - label:
          "Over TransitionTime, DUT reads EnhancedCurrentHue attribute from TH."
      PICS: CC.C.C47.Tx && CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1


          Verify response contains a EnhancedCurrentHue value in  TH(all-clusters-app)  Logs:
          [1657912064.296156][2977:2977] CHIP:IM: Received Read request
          [1657912064.296261][2977:2977] CHIP:DMG: ReadRequestMessage =
          [1657912064.296295][2977:2977] CHIP:DMG: {
          [1657912064.296322][2977:2977] CHIP:DMG:        AttributePathIBs =
          [1657912064.296378][2977:2977] CHIP:DMG:        [
          [1657912064.296409][2977:2977] CHIP:DMG:                AttributePathIB =
          [1657912064.296448][2977:2977] CHIP:DMG:                {
          [1657912064.296497][2977:2977] CHIP:DMG:                        Endpoint = 0x1,
          [1657912064.296538][2977:2977] CHIP:DMG:                        Cluster = 0x300,
          [1657912064.296578][2977:2977] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912064.296621][2977:2977] CHIP:DMG:                }
          [1657912064.296660][2977:2977] CHIP:DMG:
          [1657912064.296694][2977:2977] CHIP:DMG:        ],
          [1657912064.296729][2977:2977] CHIP:DMG:
          [1657912064.296774][2977:2977] CHIP:DMG:        isFabricFiltered = true,
          [1657912064.296808][2977:2977] CHIP:DMG:        InteractionModelRevision = 1
          [1657912064.296837][2977:2977] CHIP:DMG: },
          [1657912064.296942][2977:2977] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912064.297059][2977:2977] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912064.297109][2977:2977] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
          [1657912064.297136][2977:2977] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4000 (expanded=0)
          [1657912064.297171][2977:2977] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912064.297210][2977:2977] CHIP:DMG: AccessControl: allowed
          [1657912064.297288][2977:2977] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true
