Skip to content

TPT-4446: Fix flaky smoke and integration tests - #1064

Open
mawilk90 wants to merge 4 commits into
linode:mainfrom
mawilk90:hotfix/TPT-4446-linodego-flaky-int-tests
Open

mawilk90 wants to merge 4 commits into
linode:mainfrom
mawilk90:hotfix/TPT-4446-linodego-flaky-int-tests

Conversation

@mawilk90

@mawilk90 mawilk90 commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

📝 Description

Fixes related to failing IP address and nodebalancer smoke & integration tests

✔️ How to Test

make fixtures TEST_ARGS="-run TestIPAddresses_List_smoke"
make fixtures TEST_ARGS="-run TestNodeBalancer"

make fixtures TEST_ARGS="-run TestIAM_GetIOReadyForNotAttachedVolume"
make fixtures TEST_ARGS="-run TestObjectStorageKey_GetFound"
make fixtures TEST_ARGS="-run TestSSHKey_GetFound"

make test-int

@mawilk90
mawilk90 requested review from a team as code owners October 27, 2026 11:01
@mawilk90 mawilk90 added the testing for updates to the testing suite in the changelog. label Oct 27, 2026
@mawilk90
mawilk90 removed the request for review from a team October 27, 2026 11:01
@mawilk90 mawilk90 added the hotfix urgent fixes for production issues. label Oct 27, 2026
@mawilk90
mawilk90 requested review from ezilber-akamai and psnoch-akamai and a balanced review from Copilot and removed request for a team October 27, 2026 11:01
@mawilk90 mawilk90 added improvement for improvements in existing functionality in the changelog. and removed hotfix urgent fixes for production issues. labels Oct 27, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Randomizing the shared package-level label breaks existing fixture-playback assertions in unrelated integration tests.

1 open issue
What changed in this PR

This PR addresses flaky NodeBalancer and IP-address tests in the Go client's integration suite without changing the public client API.

Changes:

  • Randomizes NodeBalancer labels and checks their stable prefix.
  • Allows hourly-only NodeBalancer pricing and temporarily disables an IP-tag assertion for ARB-8378.
  • Refreshes NodeBalancer fixtures and sanitizes addresses in the Valkey fixture.
File Description
test/​integration/​nodebalancers_test.go Randomizes labels and adjusts label assertions.
test/​integration/​nodebalancer_types_test.go Accepts either positive hourly or monthly pricing.
test/​integration/​network_ips_test.go Temporarily disables the non-reserved IP tags assertion.
test/​integration/​fixtures/​TestNodeBalancerType_List.yaml Updates available types and nullable monthly prices.
test/​integration/​fixtures/​TestNodeBalancer_With_ReservedIP_Create.yaml Refreshes reserved-IP creation responses.
test/​integration/​fixtures/​TestNodeBalancer_Create.yaml Refreshes regions and NodeBalancer creation responses.
test/​integration/​fixtures/​TestNodeBalancer_Create_Type.yaml Refreshes explicit-type creation responses.
test/​integration/​fixtures/​TestNodeBalancer_Create_BackendConnectivity_Common.yaml Refreshes IPv6 backend-connectivity responses.
test/​integration/​fixtures/​TestDatabase_Valkey_Suite.yaml Sanitizes recorded resolver addresses.

Review effort: Balanced

Comment thread test/integration/nodebalancers_test.go

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The test-only changes align with fixture playback and recorded API responses, with no blocking issues identified in static review.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

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

Labels

improvement for improvements in existing functionality in the changelog. testing for updates to the testing suite in the changelog.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants