Skip to content

smartcontract: fix broken integration tests and restore cargo test-sbf#3068

Merged
snormore merged 2 commits intomainfrom
snor/fix-smartcontract-integration-tests
Feb 21, 2026
Merged

smartcontract: fix broken integration tests and restore cargo test-sbf#3068
snormore merged 2 commits intomainfrom
snor/fix-smartcontract-integration-tests

Conversation

@snormore
Copy link
Contributor

@snormore snormore commented Feb 21, 2026

Summary of Changes

  • Restore cargo test-sbf in the Makefile test-sbf target, which was incorrectly replaced with cargo test --lib in Enhance access pass functionality with new types and validation #2654 — this silently stopped running all integration tests in CI
  • Fix 5 distinct integration test breakages across serviceability and telemetry that accumulated undetected
  • Suppress program logs in serviceability integration tests by default (matching telemetry tests), enabled via PROGRAM_LOG=1

Diff Breakdown

Category Files Lines (+/-) Net
Config/build 2 +5 / -5 0
Tests 6 +124 / -51 +73
Docs 1 +8 / -0 +8

Primarily test fixes to catch up with program changes that landed while integration tests were disabled.

Key files (click to expand)

Testing Verification

  • All serviceability integration tests pass (43 tests across user_onchain_allocation, link_wan, user, and tenant test files)
  • All telemetry integration tests pass (22 initialize_device_latency_samples tests)
  • make test-programs passes end-to-end (cargo test-sbf + cargo test --lib)
  • Verified PROGRAM_LOG=1 enables program log output in serviceability tests

PR #2654 replaced `cargo test-sbf` with `cargo test --lib` in the
Makefile, which silently stopped running integration tests. This restores
`cargo test-sbf` and fixes all broken tests that accumulated undetected:

- user_onchain_allocation_test: add multicast_publisher_block_pda to
  ActivateUser account lists and fix expected IP prefix assertions
- link_wan_test: update InterfaceHasEdgeAssignment error code (81→83)
- user_tests: fix tenant administrator to use payer pubkey
- tenant_test: avoid BanksClient tx dedup with new blockhash
- telemetry test_helpers: add multicast_publisher_block_pda to
  SetGlobalConfig account list
- telemetry latency tests: assert desired_status instead of status
  since check_status_transition is a no-op
Add the same PROGRAM_LOG env var gating to serviceability integration
tests that telemetry tests already use. Program logs are suppressed by
default and can be enabled with PROGRAM_LOG=1 for debugging.
@snormore snormore marked this pull request as ready for review February 21, 2026 16:03
@snormore snormore merged commit 557d93c into main Feb 21, 2026
30 checks passed
@snormore snormore deleted the snor/fix-smartcontract-integration-tests branch February 21, 2026 19:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants