@@ -706,6 +706,7 @@ TEST_F(TestFabricTable, TestBasicAddNocUpdateNocFlow)
706
706
{
707
707
EXPECT_EQ (iterFabricInfo.GetNodeId (), nodeId);
708
708
EXPECT_EQ (iterFabricInfo.GetFabricId (), fabricId);
709
+ EXPECT_TRUE (iterFabricInfo.ShouldAdvertiseIdentity ());
709
710
saw1 = true ;
710
711
}
711
712
}
@@ -817,12 +818,14 @@ TEST_F(TestFabricTable, TestBasicAddNocUpdateNocFlow)
817
818
{
818
819
EXPECT_EQ (iterFabricInfo.GetNodeId (), 55u );
819
820
EXPECT_EQ (iterFabricInfo.GetFabricId (), 11u );
821
+ EXPECT_TRUE (iterFabricInfo.ShouldAdvertiseIdentity ());
820
822
saw1 = true ;
821
823
}
822
824
if (iterFabricInfo.GetFabricIndex () == 2 )
823
825
{
824
826
EXPECT_EQ (iterFabricInfo.GetNodeId (), 999u );
825
827
EXPECT_EQ (iterFabricInfo.GetFabricId (), 44u );
828
+ EXPECT_TRUE (iterFabricInfo.ShouldAdvertiseIdentity ());
826
829
saw2 = true ;
827
830
}
828
831
}
@@ -1104,7 +1107,9 @@ TEST_F(TestFabricTable, TestAddMultipleSameRootDifferentFabricId)
1104
1107
EXPECT_EQ (fabricTable.FabricCount (), 0 );
1105
1108
EXPECT_EQ (fabricTable.AddNewPendingTrustedRootCert (rcac), CHIP_NO_ERROR);
1106
1109
FabricIndex newFabricIndex = kUndefinedFabricIndex ;
1107
- EXPECT_EQ (fabricTable.AddNewPendingFabricWithOperationalKeystore (noc, icac, kVendorId , &newFabricIndex), CHIP_NO_ERROR);
1110
+ EXPECT_EQ (fabricTable.AddNewPendingFabricWithOperationalKeystore (noc, icac, kVendorId , &newFabricIndex,
1111
+ FabricTable::AdvertiseIdentity::No),
1112
+ CHIP_NO_ERROR);
1108
1113
EXPECT_EQ (fabricTable.FabricCount (), 1 );
1109
1114
EXPECT_EQ (newFabricIndex, 1 );
1110
1115
@@ -1118,6 +1123,23 @@ TEST_F(TestFabricTable, TestAddMultipleSameRootDifferentFabricId)
1118
1123
EXPECT_EQ (fabricInfo->GetFabricId (), 1111u );
1119
1124
EXPECT_EQ (fabricInfo->GetVendorId (), kVendorId );
1120
1125
EXPECT_EQ (fabricInfo->GetFabricLabel ().size (), 0u );
1126
+ EXPECT_FALSE (fabricInfo->ShouldAdvertiseIdentity ());
1127
+
1128
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (newFabricIndex, FabricTable::AdvertiseIdentity::Yes), CHIP_NO_ERROR);
1129
+ EXPECT_TRUE (fabricInfo->ShouldAdvertiseIdentity ());
1130
+
1131
+ // Check that for indices we don't have a fabric for, SetShouldAdvertiseIdentity fails.
1132
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (kUndefinedFabricIndex , FabricTable::AdvertiseIdentity::No),
1133
+ CHIP_ERROR_INVALID_FABRIC_INDEX);
1134
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (kUndefinedFabricIndex , FabricTable::AdvertiseIdentity::Yes),
1135
+ CHIP_ERROR_INVALID_FABRIC_INDEX);
1136
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (2 , FabricTable::AdvertiseIdentity::Yes), CHIP_ERROR_INVALID_FABRIC_INDEX);
1137
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (2 , FabricTable::AdvertiseIdentity::No), CHIP_ERROR_INVALID_FABRIC_INDEX);
1138
+
1139
+ EXPECT_TRUE (fabricInfo->ShouldAdvertiseIdentity ());
1140
+
1141
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (newFabricIndex, FabricTable::AdvertiseIdentity::No), CHIP_NO_ERROR);
1142
+ EXPECT_FALSE (fabricInfo->ShouldAdvertiseIdentity ());
1121
1143
}
1122
1144
size_t numStorageKeysAfterFirstAdd = storage.GetNumKeys ();
1123
1145
EXPECT_EQ (numStorageKeysAfterFirstAdd, 7u ); // Metadata, index, 3 certs, 1 opkey, last known good time
@@ -1155,6 +1177,14 @@ TEST_F(TestFabricTable, TestAddMultipleSameRootDifferentFabricId)
1155
1177
EXPECT_EQ (fabricInfo->GetFabricId (), 2222u );
1156
1178
EXPECT_EQ (fabricInfo->GetVendorId (), kVendorId );
1157
1179
EXPECT_EQ (fabricInfo->GetFabricLabel ().size (), 0u );
1180
+
1181
+ EXPECT_TRUE (fabricInfo->ShouldAdvertiseIdentity ());
1182
+
1183
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (newFabricIndex, FabricTable::AdvertiseIdentity::No), CHIP_NO_ERROR);
1184
+ EXPECT_FALSE (fabricInfo->ShouldAdvertiseIdentity ());
1185
+
1186
+ EXPECT_EQ (fabricTable.SetShouldAdvertiseIdentity (newFabricIndex, FabricTable::AdvertiseIdentity::Yes), CHIP_NO_ERROR);
1187
+ EXPECT_TRUE (fabricInfo->ShouldAdvertiseIdentity ());
1158
1188
}
1159
1189
size_t numStorageKeysAfterSecondAdd = storage.GetNumKeys ();
1160
1190
EXPECT_EQ (numStorageKeysAfterSecondAdd, (numStorageKeysAfterFirstAdd + 5 )); // Add 3 certs, 1 metadata, 1 opkey
0 commit comments