Skip to content

test: cover protx listdiff platform port restart regression#8

Open
thepastaclaw wants to merge 1 commit into
knst:fix-v24-extdifffrom
thepastaclaw:test/pr7360-listdiff-regression
Open

test: cover protx listdiff platform port restart regression#8
thepastaclaw wants to merge 1 commit into
knst:fix-v24-extdifffrom
thepastaclaw:test/pr7360-listdiff-regression

Conversation

@thepastaclaw

Copy link
Copy Markdown

Issue being fixed or feature implemented

Adds regression coverage for the protx listdiff restart/snapshot edge case fixed by dashpay#7360.

When an Evo masternode moves from legacy Platform port fields to ExtAddr netInfo, a restarted node may rebuild the deterministic MN diff from serialized state. The regression test verifies that deprecated platformP2PPort / platformHTTPPort fields in protx listdiff remain consistent with the valid Platform addresses instead of reporting 0.

What was done?

Updated test/functional/rpc_netinfo.py to:

  • update a pre-v24 EvoNode from legacy Platform ports to ExtAddr Platform addresses after v24 activation
  • restart the -deprecatedrpc=service node to exercise the serialized snapshot/diff path
  • call protx listdiff over the ProUpServTx block
  • assert both addresses and deprecated scalar Platform port fields report the expected non-zero ports

How Has This Been Tested?

Built locally on macOS arm64 with:

./autogen.sh
./configure --without-gui --disable-bench --disable-fuzz-binary
make -j$(sysctl -n hw.ncpu)

Validation:

python3 -m py_compile test/functional/rpc_netinfo.py
git diff --check -- test/functional/rpc_netinfo.py
python3 test/functional/test_runner.py rpc_netinfo.py

rpc_netinfo.py passed.

Pre-PR review gate:

code-review dashpay/dash knst/fix-v24-extdiff test/pr7360-listdiff-regression "Add a functional regression test covering legacy-to-ExtAddr protx listdiff deprecated Platform ports after restart/snapshot"

Result: ship.

Breaking Changes

None. Test-only change.

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have made corresponding changes to the documentation
  • I have assigned this pull request to a milestone (for repository code-owners and collaborators only)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant