@@ -1128,25 +1128,41 @@ BOOST_AUTO_TEST_CASE(migration_logic_validation)
11281128
11291129 // Create sample legacy format state diff
11301130 CDeterministicMNStateDiffLegacy legacyDiff;
1131- legacyDiff.fields = 0x40000 | 0x0200 | 0x0800 ; // Legacy: nVersion, pubKeyOperator, netInfo
1131+ legacyDiff.fields = 0x40000 | 0x0200 | 0x0800 | 0x0010 ; // Legacy: nVersion, pubKeyOperator, netInfo, nPoSeBanHeight
11321132 legacyDiff.state .nVersion = ProTxVersion::BasicBLS;
1133- legacyDiff.state .pubKeyOperator .Set (CBLSPublicKey{}, false );
1133+ CBLSSecretKey sk;
1134+ sk.MakeNewKey ();
1135+ legacyDiff.state .pubKeyOperator .Set (sk.GetPublicKey (), false );
1136+ BOOST_CHECK (!legacyDiff.state .pubKeyOperator .IsLegacy ());
11341137 legacyDiff.state .netInfo = NetInfoInterface::MakeNetInfo (ProTxVersion::BasicBLS);
1138+ BOOST_CHECK (!legacyDiff.state .IsBanned ());
1139+ legacyDiff.state .BanIfNotBanned (2367316 );
1140+ BOOST_CHECK (legacyDiff.state .IsBanned ());
1141+ BOOST_CHECK_EQUAL (legacyDiff.state .GetBannedHeight (), 2367316 );
1142+
11351143
11361144 // Test legacy class conversion (this would normally be done by CDeterministicMNListDiff)
11371145 CDataStream ss (SER_DISK, CLIENT_VERSION);
11381146 ss << legacyDiff;
11391147
11401148 CDeterministicMNStateDiffLegacy legacyDeserializer (deserialize, ss);
11411149 CDeterministicMNStateDiff convertedDiff = legacyDeserializer.ToNewFormat ();
1150+ BOOST_CHECK (!legacyDiff.state .pubKeyOperator .IsLegacy ());
1151+ BOOST_CHECK (convertedDiff.state .pubKeyOperator .IsLegacy ());
1152+ convertedDiff.state .pubKeyOperator .SetLegacy (false );
1153+ BOOST_CHECK (!convertedDiff.state .pubKeyOperator .IsLegacy ());
11421154
11431155 // Verify conversion worked correctly
11441156 uint32_t expectedNewFields = CDeterministicMNStateDiff::Field_nVersion | // 0x0001
1157+ CDeterministicMNStateDiff::Field_nPoSeBanHeight | // 0x0020
11451158 CDeterministicMNStateDiff::Field_pubKeyOperator | // 0x0400
11461159 CDeterministicMNStateDiff::Field_netInfo; // 0x1000
11471160
11481161 BOOST_CHECK_EQUAL (convertedDiff.fields , expectedNewFields);
1149- BOOST_CHECK_EQUAL (convertedDiff.state .nVersion , ProTxVersion::BasicBLS);
1162+ BOOST_CHECK_EQUAL (convertedDiff.state .nVersion , legacyDiff.state .nVersion );
1163+ BOOST_CHECK_EQUAL (convertedDiff.state .GetBannedHeight (), legacyDiff.state .GetBannedHeight ());
1164+ BOOST_CHECK (convertedDiff.state .pubKeyOperator .Get () == legacyDiff.state .pubKeyOperator .Get ());
1165+ BOOST_CHECK_EQUAL (convertedDiff.state .pubKeyOperator .ToString (), legacyDiff.state .pubKeyOperator .ToString ());
11501166}
11511167
11521168BOOST_AUTO_TEST_SUITE_END ()
0 commit comments