Skip to content

Commit 4c8ae8e

Browse files
committed
test: update tests
Improvements: - Compares against original values instead of hardcoded constants - Verifies ban height round-trips correctly - Verifies BLS key value is identical after round-trip (using Get() to force initialization) - Verifies string representation matches
1 parent 6ee673c commit 4c8ae8e

File tree

1 file changed

+19
-3
lines changed

1 file changed

+19
-3
lines changed

src/test/evo_deterministicmns_tests.cpp

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -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

11521168
BOOST_AUTO_TEST_SUITE_END()

0 commit comments

Comments
 (0)