@@ -105,6 +105,8 @@ namespace {
105
105
// These are globals because SetUpTestSuite is static and I'm not shaving that yak today.
106
106
System::TimerAndMockClock gSystemLayerAndClock = System::TimerAndMockClock();
107
107
System::Clock::ClockBase * gSavedClock = nullptr ;
108
+
109
+ constexpr uint16_t kExpectedClusterRevision = 1u ;
108
110
} // namespace
109
111
110
112
class TestValveConfigurationAndControlClusterLogic : public ::testing::Test
@@ -406,6 +408,8 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesAllFeature
406
408
Percent valPercent;
407
409
uint8_t val8;
408
410
BitMask<ValveFaultBitmap> valBitmap;
411
+ Attributes::FeatureMap::TypeInfo::Type featureMap;
412
+ Attributes::ClusterRevision::TypeInfo::Type clusterRevision;
409
413
410
414
EXPECT_EQ (logic.GetOpenDuration (valElapsedSNullable), CHIP_NO_ERROR);
411
415
EXPECT_EQ (valElapsedSNullable, DataModel::NullNullable);
@@ -439,6 +443,12 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesAllFeature
439
443
440
444
EXPECT_EQ (logic.GetLevelStep (val8), CHIP_NO_ERROR);
441
445
EXPECT_EQ (val8, 1 );
446
+
447
+ EXPECT_EQ (logic.GetFeatureMap (featureMap), CHIP_NO_ERROR);
448
+ EXPECT_EQ (featureMap, conformance.featureMap );
449
+
450
+ EXPECT_EQ (logic.GetClusterRevision (clusterRevision), CHIP_NO_ERROR);
451
+ EXPECT_EQ (clusterRevision, kExpectedClusterRevision );
442
452
}
443
453
444
454
// This test ensures that attributes that are not supported by the conformance properly return errors
@@ -463,6 +473,8 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesNoFeatures
463
473
Percent valPercent;
464
474
uint8_t val8;
465
475
BitMask<ValveFaultBitmap> valBitmap;
476
+ Attributes::FeatureMap::TypeInfo::Type featureMap;
477
+ Attributes::ClusterRevision::TypeInfo::Type clusterRevision;
466
478
467
479
EXPECT_EQ (logic.GetOpenDuration (valElapsedSNullable), CHIP_NO_ERROR);
468
480
EXPECT_EQ (valElapsedSNullable, DataModel::NullNullable);
@@ -490,6 +502,12 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesNoFeatures
490
502
EXPECT_EQ (logic.GetValveFault (valBitmap), CHIP_ERROR_UNSUPPORTED_CHIP_FEATURE);
491
503
492
504
EXPECT_EQ (logic.GetLevelStep (val8), CHIP_ERROR_UNSUPPORTED_CHIP_FEATURE);
505
+
506
+ EXPECT_EQ (logic.GetFeatureMap (featureMap), CHIP_NO_ERROR);
507
+ EXPECT_EQ (featureMap, conformance.featureMap );
508
+
509
+ EXPECT_EQ (logic.GetClusterRevision (clusterRevision), CHIP_NO_ERROR);
510
+ EXPECT_EQ (clusterRevision, kExpectedClusterRevision );
493
511
}
494
512
495
513
// This test ensures that all attribute getters return the given starting state values before changes.
@@ -526,6 +544,8 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesStartingSt
526
544
Percent valPercent;
527
545
uint8_t val8;
528
546
BitMask<ValveFaultBitmap> valBitmap;
547
+ Attributes::FeatureMap::TypeInfo::Type featureMap;
548
+ Attributes::ClusterRevision::TypeInfo::Type clusterRevision;
529
549
530
550
EXPECT_EQ (logic.GetOpenDuration (valElapsedSNullable), CHIP_NO_ERROR);
531
551
EXPECT_EQ (valElapsedSNullable, state.openDuration );
@@ -559,6 +579,12 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesStartingSt
559
579
560
580
EXPECT_EQ (logic.GetLevelStep (val8), CHIP_NO_ERROR);
561
581
EXPECT_EQ (val8, state.levelStep );
582
+
583
+ EXPECT_EQ (logic.GetFeatureMap (featureMap), CHIP_NO_ERROR);
584
+ EXPECT_EQ (featureMap, conformance.featureMap );
585
+
586
+ EXPECT_EQ (logic.GetClusterRevision (clusterRevision), CHIP_NO_ERROR);
587
+ EXPECT_EQ (clusterRevision, kExpectedClusterRevision );
562
588
}
563
589
564
590
// This test ensures that all attribute getter functions properly error on an uninitialized cluster.
@@ -576,6 +602,8 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesUninitiali
576
602
Percent valPercent;
577
603
uint8_t val8;
578
604
BitMask<ValveFaultBitmap> valBitmap;
605
+ Attributes::FeatureMap::TypeInfo::Type featureMap;
606
+ Attributes::ClusterRevision::TypeInfo::Type clusterRevision;
579
607
580
608
EXPECT_EQ (logic.GetOpenDuration (valElapsedSNullable), CHIP_ERROR_INCORRECT_STATE);
581
609
EXPECT_EQ (logic.GetDefaultOpenDuration (valElapsedSNullable), CHIP_ERROR_INCORRECT_STATE);
@@ -588,6 +616,8 @@ TEST_F(TestValveConfigurationAndControlClusterLogic, TestGetAttributesUninitiali
588
616
EXPECT_EQ (logic.GetDefaultOpenLevel (valPercent), CHIP_ERROR_INCORRECT_STATE);
589
617
EXPECT_EQ (logic.GetValveFault (valBitmap), CHIP_ERROR_INCORRECT_STATE);
590
618
EXPECT_EQ (logic.GetLevelStep (val8), CHIP_ERROR_INCORRECT_STATE);
619
+ EXPECT_EQ (logic.GetFeatureMap (featureMap), CHIP_ERROR_INCORRECT_STATE);
620
+ EXPECT_EQ (logic.GetClusterRevision (clusterRevision), CHIP_ERROR_INCORRECT_STATE);
591
621
}
592
622
593
623
// =========================================================================================
0 commit comments