# 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.27. [TC-CC-9.4] ColorLoopSet Validation 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: "DUT sends ColorLoopSet command to TH."
      PICS: CC.C.C44.Rsp
      verification: |
          ./chip-tool colorcontrol color-loop-set 15 0 0 30 160 0 0 1 1

          Verify in TH(all-clusters-app) log:
          [1657912387.432732][3126:3126] CHIP:DMG: InvokeRequestMessage =
          [1657912387.432781][3126:3126] CHIP:DMG: {
          [1657912387.432823][3126:3126] CHIP:DMG:        suppressResponse = false,
          [1657912387.432872][3126:3126] CHIP:DMG:        timedRequest = false,
          [1657912387.432917][3126:3126] CHIP:DMG:        InvokeRequests =
          [1657912387.432978][3126:3126] CHIP:DMG:        [
          [1657912387.433023][3126:3126] CHIP:DMG:                CommandDataIB =
          [1657912387.433078][3126:3126] CHIP:DMG:                {
          [1657912387.433130][3126:3126] CHIP:DMG:                        CommandPathIB =
          [1657912387.433192][3126:3126] CHIP:DMG:                        {
          [1657912387.433250][3126:3126] CHIP:DMG:                                EndpointId = 0x1,
          [1657912387.433311][3126:3126] CHIP:DMG:                                ClusterId = 0x300,
          [1657912387.433372][3126:3126] CHIP:DMG:                                CommandId = 0x44,
          [1657912387.433429][3126:3126] CHIP:DMG:                        },
          [1657912387.433489][3126:3126] CHIP:DMG:
          [1657912387.433541][3126:3126] CHIP:DMG:                        CommandFields =
          [1657912387.433595][3126:3126] CHIP:DMG:                        {
          [1657912387.433660][3126:3126] CHIP:DMG:                                0x0 = 15,
          [1657912387.433722][3126:3126] CHIP:DMG:                                0x1 = 0,
          [1657912387.433778][3126:3126] CHIP:DMG:                                0x2 = 0,
          [1657912387.433846][3126:3126] CHIP:DMG:                                0x3 = 30,
          [1657912387.433914][3126:3126] CHIP:DMG:                                0x4 = 160,
          [1657912387.433974][3126:3126] CHIP:DMG:                                0x5 = 0,
          [1657912387.434040][3126:3126] CHIP:DMG:                                0x6 = 0,
          [1657912387.434101][3126:3126] CHIP:DMG:                        },
          [1657912387.434152][3126:3126] CHIP:DMG:                },
          [1657912387.434213][3126:3126] CHIP:DMG:
          [1657912387.434257][3126:3126] CHIP:DMG:        ],
          [1657912387.434312][3126:3126] CHIP:DMG:
          [1657912387.434354][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912387.434397][3126:3126] CHIP:DMG: },
          [1657912387.434514][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912387.434575][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912387.434626][3126:3126] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0044
      disabled: true

    - label: "DUT read ColorLoopActive attribute from TH."
      PICS: CC.C.A4002
      verification: |
          ./chip-tool colorcontrol read color-loop-active 1 1

          Verify in TH(all-clusters-app) log:
          [1657912416.547714][3126:3126] CHIP:IM: Received Read request
          [1657912416.547842][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912416.547890][3126:3126] CHIP:DMG: {
          [1657912416.547930][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912416.547986][3126:3126] CHIP:DMG:        [
          [1657912416.548031][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912416.548116][3126:3126] CHIP:DMG:                {
          [1657912416.548167][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912416.548231][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912416.548292][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4002,
          [1657912416.548356][3126:3126] CHIP:DMG:                }
          [1657912416.548410][3126:3126] CHIP:DMG:
          [1657912416.548464][3126:3126] CHIP:DMG:        ],
          [1657912416.548516][3126:3126] CHIP:DMG:
          [1657912416.548564][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912416.548610][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912416.548653][3126:3126] CHIP:DMG: },
          [1657912416.548787][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912416.548947][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912416.549000][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4002 is dirty
          [1657912416.549040][3126:3126] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4002 (expanded=0)
          [1657912416.549091][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912416.549147][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912416.549237][3126:3126] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT read ColorLoopDirection attribute from TH."
      PICS: CC.C.A4003
      verification: |
          ./chip-tool colorcontrol read color-loop-direction 1 1

          Verify in TH(all-clusters-app) log:
          [1657912446.661818][3126:3126] CHIP:IM: Received Read request
          [1657912446.661940][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912446.661989][3126:3126] CHIP:DMG: {
          [1657912446.662029][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912446.662076][3126:3126] CHIP:DMG:        [
          [1657912446.662120][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912446.662174][3126:3126] CHIP:DMG:                {
          [1657912446.662225][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912446.662282][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912446.662345][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4003,
          [1657912446.662407][3126:3126] CHIP:DMG:                }
          [1657912446.662462][3126:3126] CHIP:DMG:
          [1657912446.662511][3126:3126] CHIP:DMG:        ],
          [1657912446.662563][3126:3126] CHIP:DMG:
          [1657912446.662610][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912446.662656][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912446.662695][3126:3126] CHIP:DMG: },
          [1657912446.662822][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912446.662971][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912446.663023][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4003 is dirty
          [1657912446.663064][3126:3126] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4003 (expanded=0)
          [1657912446.663114][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912446.663169][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912446.663260][3126:3126] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT read ColorLoopTime attribute from TH."
      PICS: CC.C.A4004
      verification: |
          ./chip-tool colorcontrol read color-loop-time 1 1

          Verify in TH(all-clusters-app) log:
          [1657912469.590293][3126:3126] CHIP:IM: Received Read request
          [1657912469.590419][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912469.590466][3126:3126] CHIP:DMG: {
          [1657912469.590499][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912469.590546][3126:3126] CHIP:DMG:        [
          [1657912469.590590][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912469.590639][3126:3126] CHIP:DMG:                {
          [1657912469.590690][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912469.590748][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912469.590809][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4004,
          [1657912469.590861][3126:3126] CHIP:DMG:                }
          [1657912469.590913][3126:3126] CHIP:DMG:
          [1657912469.590959][3126:3126] CHIP:DMG:        ],
          [1657912469.591009][3126:3126] CHIP:DMG:
          [1657912469.591056][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912469.591101][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912469.591143][3126:3126] CHIP:DMG: },
          [1657912469.591267][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912469.591410][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912469.591461][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4004 is dirty
          [1657912469.591500][3126:3126] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4004 (expanded=0)
          [1657912469.591545][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912469.591599][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912469.591688][3126:3126] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT read ColorLoopStartEnhancedHue attribute from TH."
      PICS: CC.C.A4005
      verification: |
          ./chip-tool colorcontrol read color-loop-start-enhanced-hue 1 1

          Verify in TH(all-clusters-app) log:
          [1657912490.104534][3126:3126] CHIP:IM: Received Read request
          [1657912490.104664][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912490.104713][3126:3126] CHIP:DMG: {
          [1657912490.104753][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912490.104801][3126:3126] CHIP:DMG:        [
          [1657912490.104844][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912490.104893][3126:3126] CHIP:DMG:                {
          [1657912490.104945][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912490.105003][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912490.105059][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4005,
          [1657912490.105112][3126:3126] CHIP:DMG:                }
          [1657912490.105164][3126:3126] CHIP:DMG:
          [1657912490.105211][3126:3126] CHIP:DMG:        ],
          [1657912490.105263][3126:3126] CHIP:DMG:
          [1657912490.105311][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912490.105357][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912490.105400][3126:3126] CHIP:DMG: },
          [1657912490.105531][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912490.105679][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912490.105731][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4005 is dirty
          [1657912490.105771][3126:3126] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4005 (expanded=0)
          [1657912490.105821][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912490.105877][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912490.105967][3126:3126] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label:
          "Over next 30 seconds, at 5 seconds interval, DUT read
          EnhancedCurrentHue attribute from TH."
      PICS: CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1

          Verify in TH(all-clusters-app) log:
          [1659960576.917953][2718:2718] CHIP:DMG: ReadRequestMessage =
          [1659960576.917989][2718:2718] CHIP:DMG: {
          [1659960576.918016][2718:2718] CHIP:DMG: 	AttributePathIBs =
          [1659960576.918051][2718:2718] CHIP:DMG: 	[
          [1659960576.918084][2718:2718] CHIP:DMG: 		AttributePathIB =
          [1659960576.918121][2718:2718] CHIP:DMG: 		{
          [1659960576.918159][2718:2718] CHIP:DMG: 			Endpoint = 0x1,
          [1659960576.918206][2718:2718] CHIP:DMG: 			Cluster = 0x300,
          [1659960576.918249][2718:2718] CHIP:DMG: 			Attribute = 0x0000_4000,
          [1659960576.918287][2718:2718] CHIP:DMG: 		}
          [1659960576.918325][2718:2718] CHIP:DMG:
          [1659960576.918359][2718:2718] CHIP:DMG: 	],
          [1659960576.918397][2718:2718] CHIP:DMG:
          [1659960576.918432][2718:2718] CHIP:DMG: 	isFabricFiltered = true,
          [1659960576.918466][2718:2718] CHIP:DMG: 	InteractionModelRevision = 1
          [1659960576.918498][2718:2718] CHIP:DMG: },
          [1659960576.918604][2718:2718] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1659960576.918724][2718:2718] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1659960576.918767][2718:2718] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
      disabled: true

    - label: "DUT read ColorLoopActive attribute from TH."
      PICS: CC.C.A4002
      verification: |
          ./chip-tool colorcontrol read color-loop-active 1 1

          Verify in TH(all-clusters-app) log:

          [1657912750.645121][3126:3126] CHIP:IM: Received Read request
          [1657912750.645210][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912750.645332][3126:3126] CHIP:DMG: {
          [1657912750.645356][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912750.645382][3126:3126] CHIP:DMG:        [
          [1657912750.645406][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912750.645436][3126:3126] CHIP:DMG:                {
          [1657912750.645465][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912750.645503][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912750.645531][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4002,
          [1657912750.645555][3126:3126] CHIP:DMG:                }
          [1657912750.645584][3126:3126] CHIP:DMG:
          [1657912750.645615][3126:3126] CHIP:DMG:        ],
          [1657912750.645643][3126:3126] CHIP:DMG:
          [1657912750.645667][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912750.645692][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912750.645715][3126:3126] CHIP:DMG: },
          [1657912750.645801][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912750.645917][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912750.646000][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4002 is dirty
      disabled: true

    - label: "DUT read ColorLoopStoredEnhancedHue attribute from TH."
      PICS: CC.C.A4006
      verification: |
          ./chip-tool colorcontrol read color-loop-stored-enhanced-hue 1 1

          Verify in TH(all-clusters-app) log:
          [1657912783.463733][3126:3126] CHIP:IM: Received Read request
          [1657912783.463816][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912783.463844][3126:3126] CHIP:DMG: {
          [1657912783.463865][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912783.463891][3126:3126] CHIP:DMG:        [
          [1657912783.463915][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912783.463943][3126:3126] CHIP:DMG:                {
          [1657912783.463970][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912783.464005][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912783.464042][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4006,
          [1657912783.464140][3126:3126] CHIP:DMG:                }
          [1657912783.464177][3126:3126] CHIP:DMG:
          [1657912783.464208][3126:3126] CHIP:DMG:        ],
          [1657912783.464237][3126:3126] CHIP:DMG:
          [1657912783.464264][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912783.464289][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912783.464312][3126:3126] CHIP:DMG: },
          [1657912783.464399][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912783.464546][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912783.464582][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4006 is dirty
      disabled: true

    - label:
          "Over next 30 seconds, DUT read EnhancedCurrentHue attribute from TH."
      PICS: CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1

          Verify in TH(all-clusters-app) log:
          [1657912801.027600][3126:3126] CHIP:IM: Received Read request
          [1657912801.027717][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912801.027761][3126:3126] CHIP:DMG: {
          [1657912801.027803][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912801.027909][3126:3126] CHIP:DMG:        [
          [1657912801.027952][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912801.027999][3126:3126] CHIP:DMG:                {
          [1657912801.028046][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912801.028135][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912801.028262][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912801.028320][3126:3126] CHIP:DMG:                }
          [1657912801.028372][3126:3126] CHIP:DMG:
          [1657912801.028425][3126:3126] CHIP:DMG:        ],
          [1657912801.028472][3126:3126] CHIP:DMG:
          [1657912801.028516][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912801.028607][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912801.028653][3126:3126] CHIP:DMG: },
          [1657912801.028777][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912801.028982][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912801.029035][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
      disabled: true

    - label:
          "Continue another 30 seconds, DUT read EnhancedCurrentHue attribute
          from TH."
      PICS: CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1

          Verify in TH(all-clusters-app) log:
          [1657912801.027600][3126:3126] CHIP:IM: Received Read request
          [1657912801.027717][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912801.027761][3126:3126] CHIP:DMG: {
          [1657912801.027803][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912801.027909][3126:3126] CHIP:DMG:        [
          [1657912801.027952][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912801.027999][3126:3126] CHIP:DMG:                {
          [1657912801.028046][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912801.028135][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912801.028262][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912801.028320][3126:3126] CHIP:DMG:                }
          [1657912801.028372][3126:3126] CHIP:DMG:
          [1657912801.028425][3126:3126] CHIP:DMG:        ],
          [1657912801.028472][3126:3126] CHIP:DMG:
          [1657912801.028516][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912801.028607][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912801.028653][3126:3126] CHIP:DMG: },
          [1657912801.028777][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912801.028982][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912801.029035][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
      disabled: true

    - label:
          "DUT sends ColorLoopSet command to with UpdateFlag attribute to 0x1
          and Action attribute to 0x0 to TH."
      PICS: CC.C.C44.Rsp
      verification: |
          ./chip-tool colorcontrol color-loop-set 1 0 0 0 0 0 0 1 1

          Verify in TH(all-clusters-app) log:

          [1657912615.862118][3126:3126] CHIP:DMG: InvokeRequestMessage =
          [1657912615.862168][3126:3126] CHIP:DMG: {
          [1657912615.862209][3126:3126] CHIP:DMG:        suppressResponse = false,
          [1657912615.862258][3126:3126] CHIP:DMG:        timedRequest = false,
          [1657912615.862305][3126:3126] CHIP:DMG:        InvokeRequests =
          [1657912615.862365][3126:3126] CHIP:DMG:        [
          [1657912615.862409][3126:3126] CHIP:DMG:                CommandDataIB =
          [1657912615.862463][3126:3126] CHIP:DMG:                {
          [1657912615.862510][3126:3126] CHIP:DMG:                        CommandPathIB =
          [1657912615.862565][3126:3126] CHIP:DMG:                        {
          [1657912615.862626][3126:3126] CHIP:DMG:                                EndpointId = 0x1,
          [1657912615.862687][3126:3126] CHIP:DMG:                                ClusterId = 0x300,
          [1657912615.862745][3126:3126] CHIP:DMG:                                CommandId = 0x44,
          [1657912615.862806][3126:3126] CHIP:DMG:                        },
          [1657912615.862865][3126:3126] CHIP:DMG:
          [1657912615.862913][3126:3126] CHIP:DMG:                        CommandFields =
          [1657912615.862968][3126:3126] CHIP:DMG:                        {
          [1657912615.863027][3126:3126] CHIP:DMG:                                0x0 = 1,
          [1657912615.863084][3126:3126] CHIP:DMG:                                0x1 = 0,
          [1657912615.863142][3126:3126] CHIP:DMG:                                0x2 = 0,
          [1657912615.863202][3126:3126] CHIP:DMG:                                0x3 = 0,
          [1657912615.863263][3126:3126] CHIP:DMG:                                0x4 = 0,
          [1657912615.863323][3126:3126] CHIP:DMG:                                0x5 = 0,
          [1657912615.863383][3126:3126] CHIP:DMG:                                0x6 = 0,
          [1657912615.863436][3126:3126] CHIP:DMG:                        },
          [1657912615.863481][3126:3126] CHIP:DMG:                },
          [1657912615.863538][3126:3126] CHIP:DMG:
          [1657912615.863582][3126:3126] CHIP:DMG:        ],
          [1657912615.863638][3126:3126] CHIP:DMG:
          [1657912615.863682][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912615.863725][3126:3126] CHIP:DMG: },
          [1657912615.863845][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=o
          [1657912615.863906][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912615.863955][3126:3126] CHIP:DMG: Received command for Endpoint=1 Cluster=0x0000_0300 Command=0x0000_0044
      disabled: true

    - label: "DUT read ColorLoopActive attribute from TH."
      PICS: CC.C.A4002
      verification: |
          ./chip-tool colorcontrol read color-loop-active 1 1

          Verify in TH(all-clusters-app) log:
          [1657912416.547714][3126:3126] CHIP:IM: Received Read request
          [1657912416.547842][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912416.547890][3126:3126] CHIP:DMG: {
          [1657912416.547930][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912416.547986][3126:3126] CHIP:DMG:        [
          [1657912416.548031][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912416.548116][3126:3126] CHIP:DMG:                {
          [1657912416.548167][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912416.548231][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912416.548292][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4002,
          [1657912416.548356][3126:3126] CHIP:DMG:                }
          [1657912416.548410][3126:3126] CHIP:DMG:
          [1657912416.548464][3126:3126] CHIP:DMG:        ],
          [1657912416.548516][3126:3126] CHIP:DMG:
          [1657912416.548564][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912416.548610][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912416.548653][3126:3126] CHIP:DMG: },
          [1657912416.548787][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912416.548947][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912416.549000][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4002 is dirty
          [1657912416.549040][3126:3126] CHIP:DMG: Reading attribute: Cluster=0x0000_0300 Endpoint=1 AttributeId=0x0000_4002 (expanded=0)
          [1657912416.549091][3126:3126] CHIP:DMG: AccessControl: checking f=1 a=c s=0x000000000001B669 t= c=0x0000_0300 e=1 p=v
          [1657912416.549147][3126:3126] CHIP:DMG: AccessControl: allowed
          [1657912416.549237][3126:3126] CHIP:DMG: <RE> Sending report (payload has 38 bytes)...
      disabled: true

    - label: "DUT read EnhancedCurrentHue attribute from TH."
      PICS: CC.C.A4000
      verification: |
          ./chip-tool colorcontrol read enhanced-current-hue 1 1

          Verify in TH(all-clusters-app) log:
          [1657912801.027600][3126:3126] CHIP:IM: Received Read request
          [1657912801.027717][3126:3126] CHIP:DMG: ReadRequestMessage =
          [1657912801.027761][3126:3126] CHIP:DMG: {
          [1657912801.027803][3126:3126] CHIP:DMG:        AttributePathIBs =
          [1657912801.027909][3126:3126] CHIP:DMG:        [
          [1657912801.027952][3126:3126] CHIP:DMG:                AttributePathIB =
          [1657912801.027999][3126:3126] CHIP:DMG:                {
          [1657912801.028046][3126:3126] CHIP:DMG:                        Endpoint = 0x1,
          [1657912801.028135][3126:3126] CHIP:DMG:                        Cluster = 0x300,
          [1657912801.028262][3126:3126] CHIP:DMG:                        Attribute = 0x0000_4000,
          [1657912801.028320][3126:3126] CHIP:DMG:                }
          [1657912801.028372][3126:3126] CHIP:DMG:
          [1657912801.028425][3126:3126] CHIP:DMG:        ],
          [1657912801.028472][3126:3126] CHIP:DMG:
          [1657912801.028516][3126:3126] CHIP:DMG:        isFabricFiltered = true,
          [1657912801.028607][3126:3126] CHIP:DMG:        InteractionModelRevision = 1
          [1657912801.028653][3126:3126] CHIP:DMG: },
          [1657912801.028777][3126:3126] CHIP:DMG: IM RH moving to [GeneratingReports]
          [1657912801.028982][3126:3126] CHIP:DMG: Building Reports for ReadHandler with LastReportGeneration = 0 DirtyGeneration = 0
          [1657912801.029035][3126:3126] CHIP:DMG: <RE:Run> Cluster 300, Attribute 4000 is dirty
      disabled: true
