Skip to content

Commit d1879b5

Browse files
authored
fix(rebalancer): await transfer receipts in e2e harness to prevent anvil auto-mine race (#8346)
1 parent 28cd2fb commit d1879b5

7 files changed

Lines changed: 39 additions & 12 deletions

typescript/rebalancer/src/e2e/collateral-deficit.e2e-test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,8 @@ describe('Collateral Deficit E2E', function () {
165165
deployedAddresses.tokens.anvil1,
166166
deployer,
167167
);
168-
await token.transfer(userAddress, transferAmount.mul(2));
168+
const tx = await token.transfer(userAddress, transferAmount.mul(2));
169+
await tx.wait();
169170

170171
const transferResult = await executeWarpTransfer(
171172
context.multiProvider,

typescript/rebalancer/src/e2e/composite.e2e-test.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,8 @@ describe('CompositeStrategy E2E', function () {
135135
deployedAddresses.tokens.anvil1,
136136
deployer,
137137
);
138-
await token.transfer(userAddress, transferAmount.mul(2));
138+
const tx = await token.transfer(userAddress, transferAmount.mul(2));
139+
await tx.wait();
139140

140141
const transferResult = await executeWarpTransfer(
141142
context.multiProvider,

typescript/rebalancer/src/e2e/harness/BridgeSetup.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ export async function setupCollateralBalances(
2626
// We need to set the exact balance, so transfer (targetBalance - currentBalance) if needed
2727
if (targetBalance.gt(currentBalance)) {
2828
const diff = targetBalance.sub(currentBalance);
29-
await token.transfer(routersByChain[chain], diff);
29+
const tx = await token.transfer(routersByChain[chain], diff);
30+
await tx.wait();
3031
}
3132

3233
// Verify

typescript/rebalancer/src/e2e/harness/Erc20InventoryLocalDeploymentManager.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,16 @@ export class Erc20InventoryLocalDeploymentManager extends BaseLocalDeploymentMan
149149
tokens[chain.name].address,
150150
deployer,
151151
);
152-
await token.transfer(bridgeRouters[chain.name].address, bridgeSeedAmount);
153-
await token.transfer(this.inventorySignerAddress, signerErc20Amount);
152+
const tx1 = await token.transfer(
153+
bridgeRouters[chain.name].address,
154+
bridgeSeedAmount,
155+
);
156+
await tx1.wait();
157+
const tx2 = await token.transfer(
158+
this.inventorySignerAddress,
159+
signerErc20Amount,
160+
);
161+
await tx2.wait();
154162
}
155163

156164
return {

typescript/rebalancer/src/e2e/harness/Erc20LocalDeploymentManager.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,14 +151,16 @@ export class Erc20LocalDeploymentManager extends BaseLocalDeploymentManager<Depl
151151
tokens[chain.name].address,
152152
deployer,
153153
);
154-
await token.transfer(
154+
const tx1 = await token.transfer(
155155
bridgeRouters1[chain.name].address,
156156
bridgeSeedAmount,
157157
);
158-
await token.transfer(
158+
await tx1.wait();
159+
const tx2 = await token.transfer(
159160
bridgeRouters2[chain.name].address,
160161
bridgeSeedAmount,
161162
);
163+
await tx2.wait();
162164
}
163165

164166
return {

typescript/rebalancer/src/e2e/harness/MixedLocalDeploymentManager.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,8 +160,16 @@ export class MixedLocalDeploymentManager extends BaseLocalDeploymentManager<Erc2
160160
tokens[chain.name].address,
161161
deployer,
162162
);
163-
await token.transfer(bridgeRouters[chain.name].address, bridgeSeedAmount);
164-
await token.transfer(this.inventorySignerAddress, signerErc20Amount);
163+
const tx1 = await token.transfer(
164+
bridgeRouters[chain.name].address,
165+
bridgeSeedAmount,
166+
);
167+
await tx1.wait();
168+
const tx2 = await token.transfer(
169+
this.inventorySignerAddress,
170+
signerErc20Amount,
171+
);
172+
await tx2.wait();
165173
}
166174

167175
return {

typescript/rebalancer/src/e2e/harness/TestRebalancer.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -498,7 +498,8 @@ export class TestRebalancerBuilder {
498498
provider,
499499
);
500500
const token = ERC20Test__factory.connect(tokenAddress, deployerSigner);
501-
await token.transfer(monitoredRouteAddress, balance);
501+
const tx = await token.transfer(monitoredRouteAddress, balance);
502+
await tx.wait();
502503
}
503504

504505
this.logger.info(
@@ -610,14 +611,19 @@ export class TestRebalancerBuilder {
610611

611612
const current = await tokenAsSigner.balanceOf(signerAddress);
612613
if (current.gt(0)) {
613-
await tokenAsSigner.transfer(deployerSigner.address, current);
614+
const tx1 = await tokenAsSigner.transfer(
615+
deployerSigner.address,
616+
current,
617+
);
618+
await tx1.wait();
614619
}
615620

616621
if (BigNumber.from(balance).gt(0)) {
617-
await tokenAsDeployer.transfer(
622+
const tx2 = await tokenAsDeployer.transfer(
618623
signerAddress,
619624
BigNumber.from(balance),
620625
);
626+
await tx2.wait();
621627
}
622628
}
623629

0 commit comments

Comments
 (0)