Commit graph

18028 commits

Author SHA1 Message Date
yyforyongyu
c97c31a70b
lntest: increase node start timeout and payment benchmark timeout 2024-12-20 19:38:12 +08:00
yyforyongyu
efe81f2d3c
itest: track and skip flaky tests for windows
To make the CI indicative, we now starting tracking the flaky tests
found when running on Windows. As a starting point, rather than ignore
the windows CI entirely, we now identify there are cases where lnd can
be buggy when running in windows.

We should fix the tests in the future, otherwise the windows build
should be deleted.
2024-12-20 19:38:12 +08:00
yyforyongyu
e79ad6e5aa
itest: further reduce block mined in tests 2024-12-20 19:38:12 +08:00
yyforyongyu
6f2e7feb94
itest: breakdown testSendDirectPayment
Also fixes a wrong usage of `ht.Subtest`.
2024-12-20 19:38:12 +08:00
yyforyongyu
c7b8379602
itest: break down channel fundmax tests 2024-12-20 19:38:12 +08:00
yyforyongyu
37b8210f37
itest: break down taproot tests 2024-12-20 19:38:12 +08:00
yyforyongyu
efae8ea56f
itest: break down single hop send to route
Also removed the duplicate test cases.
2024-12-20 19:38:11 +08:00
yyforyongyu
c029f0a84f
itest: break down basic funding flow tests 2024-12-20 19:38:11 +08:00
yyforyongyu
c58fa01a66
itest: break down wallet import account tests 2024-12-20 19:38:11 +08:00
yyforyongyu
31aada65a4
itest: break down channel backup restore tests 2024-12-20 19:38:11 +08:00
yyforyongyu
7b1427a565
itest: break down payment failed tests 2024-12-20 19:38:11 +08:00
yyforyongyu
3319d0d983
itest: break down open channel fee policy 2024-12-20 19:38:11 +08:00
yyforyongyu
21c5d36812
itest: break down scid alias channel update tests 2024-12-20 19:38:10 +08:00
yyforyongyu
04a15039d7
itest: break all multihop test cases 2024-12-20 19:38:10 +08:00
yyforyongyu
a76ff79adc
itest: break down utxo selection funding tests 2024-12-20 19:38:10 +08:00
yyforyongyu
b1cb819f07
itest: break down channel restore commit types cases 2024-12-20 19:38:10 +08:00
yyforyongyu
5663edfc2f
itest: break remote signer into independent cases
So the test can run faster.
2024-12-20 19:38:10 +08:00
yyforyongyu
cca2364097
itest: optimize blocks mined in testGarbageCollectLinkNodes
There's no need to mine 80ish blocks here.
2024-12-20 19:38:10 +08:00
yyforyongyu
1950d89925
itest: document a flake found in SendToRoute 2024-12-20 19:38:10 +08:00
yyforyongyu
7e80b77535
itest: document a rare flake found in macOS 2024-12-20 19:38:09 +08:00
yyforyongyu
39104c53d4
lntest: fix flakeness in openChannelsForNodes
We now make sure the channel participants have heard their private
channel when opening channels.
2024-12-20 19:38:09 +08:00
yyforyongyu
cfb5713cda
itest+lntest: fix flake in MPP-related tests 2024-12-20 19:38:09 +08:00
yyforyongyu
fb59669ae8
itest: document details about MPP-related tests
This is needed so we can have one place to fix the flakes found in the
MPP-related tests, which is fixed in the following commit.
2024-12-20 19:38:09 +08:00
yyforyongyu
f912f407c8
lntest: increase rpcmaxwebsockets for btcd
This has been seen in the itest which can lead to the node startup
failure,
```
2024-11-20 18:55:15.727 [INF] RPCS: Max websocket clients exceeded [25] - disconnecting client 127.0.0.1:57224
```
2024-12-20 19:38:09 +08:00
yyforyongyu
4e85d86a2e
itest: fix flake in update_pending_open_channels 2024-12-20 19:38:09 +08:00
yyforyongyu
23edca8d19
itest: fix flake in testPrivateUpdateAlias 2024-12-20 19:38:08 +08:00
yyforyongyu
7c3564eeb6
itest: fix flake in runPsbtChanFundingWithNodes 2024-12-20 19:38:08 +08:00
yyforyongyu
7ceb9a4af5
lntest+itest: remove AssertNumActiveEdges
This is no longer needed since we don't have standby nodes, plus it's
causing panic in windows build due to `edge.Policy` being nil.
2024-12-20 19:38:08 +08:00
yyforyongyu
8f3100c984
itest: put mpp tests in one file 2024-12-20 19:38:08 +08:00
yyforyongyu
fee6b70519
itest: use ht.CreateSimpleNetwork whenever applicable
So we won't forget to assert the topology after opening a chain of
channels.
2024-12-20 19:38:08 +08:00
yyforyongyu
4eea2078fb
itest+routing: fix flake in runFeeEstimationTestCase
The test used 10s as the timeout value, which can easily cause a timeout
in a slow build so we increase it to 60s.
2024-12-20 19:38:08 +08:00
yyforyongyu
8b8f0c4eb4
itest: fix flake in testSwitchOfflineDelivery
The reconnection will happen automatically when the nodes have a
channel, so we just ensure the connection instead of reconnecting
directly.
2024-12-20 19:38:07 +08:00
yyforyongyu
66b35018b8
itest: fix flake in testRevokedCloseRetributionZeroValueRemoteOutput
We need to mine an empty block as the tx may already have entered the
mempool. This should be fixed once we start using the sweeper to handle
the justice tx.
2024-12-20 19:38:07 +08:00
yyforyongyu
c07162603d
itest: remove loop in wsTestCaseBiDirectionalSubscription
So we know which open channel operation failed.
2024-12-20 19:38:07 +08:00
yyforyongyu
782edde213
itest: fix and document flake in sweeping tests
We previously didn't see this issue because we always have nodes being
over-funded.
2024-12-20 19:38:07 +08:00
yyforyongyu
9f764c25f9
itest: flatten PSBT funding test cases
So it's easier to get the logs and debug.
2024-12-20 19:38:07 +08:00
yyforyongyu
762e59d78c
itest: fix flake for neutrino backend 2024-12-20 19:38:07 +08:00
yyforyongyu
3a45492398
itest: fix spawning temp miner 2024-12-20 19:38:07 +08:00
yyforyongyu
2a9b7ec536
itest: fix flake in testSendDirectPayment
This bug was hidden because we used standby nodes before, which always
have more-than-necessary wallet utxos.
2024-12-20 19:38:06 +08:00
yyforyongyu
e7310ff1b6
itest: fix testOpenChannelUpdateFeePolicy
This commit fixes a misuse of `ht.Subtest`, where the nodes should
always be created inside the subtest.
2024-12-20 19:38:06 +08:00
yyforyongyu
010a4f1571
lntest: add human-readble names and check num of nodes 2024-12-20 19:38:06 +08:00
yyforyongyu
f64b2ce8f2
lntest: make sure node is properly shut down
Soemtimes the node may be hanging for a while without being noticed,
causing failures in its following tests, thus making the debugging
extrememly difficult. We now assert the node has been shut down from the
logs to assert the shutdown process behaves as expected.
2024-12-20 19:38:06 +08:00
yyforyongyu
72f3f41d41
itest: remove unnecessary channel close and node shutdown
Since we don't have standby nodes anymore, we don't need to close the
channels when the test finishes. Previously we would do so to make sure
the standby nodes have a clean state for the next test case, which is no
longer relevant.
2024-12-20 19:38:06 +08:00
yyforyongyu
00772ae281
itest+lntest: remove standby nodes
This commit removes the standby nodes Alice and Bob.
2024-12-20 19:38:06 +08:00
yyforyongyu
11c9dd5ff2
itest: remove unused method setupFourHopNetwork 2024-12-20 19:38:05 +08:00
yyforyongyu
de8f14bed2
itest: remove the use of standby nodes
This commit removes the usage of the standby nodes and uses
`CreateSimpleNetwork` when applicable. Also introduces a helper method
`NewNodeWithCoins` to quickly start a node with funds.
2024-12-20 19:38:05 +08:00
yyforyongyu
3eda87fff9
itest: remove direct reference to stanby nodes
Prepares the upcoming refactor. We now never call `ht.Alice` directly,
instead, we always init `alice := ht.Alice` so it's easier to see how
they are removed in a following commit.
2024-12-20 19:38:05 +08:00
yyforyongyu
ef167835dd
workflows: pass action ID as the shuffle seed
To make sure each run is shuffled, we use the action ID as the seed.
2024-12-20 19:38:05 +08:00
yyforyongyu
88bd0cb806
itest: shuffle test cases to even out blocks mined in tranches
This commit adds a new flag to shuffle all the test cases before running
them so tests which require lots of blocks to be mined are less likely
to be run in the same tranch.

The other benefit is this approach provides a more efficient way to
figure which tests are broken since all the differnet backends are
running different tranches in their builds, we can identify more failed
tests in one push.
2024-12-20 19:38:05 +08:00
yyforyongyu
2c27df6c30
itest: print num of blocks for debugging 2024-12-20 19:38:05 +08:00