移除vester合约中与转换所有权相关的方法

This commit is contained in:
CounterFire2023 2024-08-27 16:46:48 +08:00
parent c9fd704e37
commit 8d32e0c1a8
3 changed files with 4 additions and 77 deletions

View File

@ -38,8 +38,6 @@ contract Vester is IVester, IERC20, ReentrancyGuard, Governable {
// claim的时间
mapping(address account => uint256 time) public lastVestingTimes;
mapping(address account => uint256 amount) public override transferredAverageStakedAmounts;
mapping(address account => uint256 amount) public override transferredCumulativeRewards;
mapping(address account => uint256 amount) public override cumulativeRewardDeductions;
mapping(address account => uint256 amount) public override bonusRewards;
@ -124,33 +122,6 @@ contract Vester is IVester, IERC20, ReentrancyGuard, Governable {
emit Withdraw(account, claimedAmount, balance);
}
function transferStakeValues(address _sender, address _receiver) external override nonReentrant {
_validateHandler();
transferredAverageStakedAmounts[_receiver] = getCombinedAverageStakedAmount(_sender);
transferredAverageStakedAmounts[_sender] = 0;
uint256 transferredCumulativeReward = transferredCumulativeRewards[_sender];
uint256 cumulativeReward = hasRewardTracker() ? IRewardTracker(rewardTracker).cumulativeRewards(_sender) : 0;
transferredCumulativeRewards[_receiver] = transferredCumulativeReward + cumulativeReward;
cumulativeRewardDeductions[_sender] = cumulativeReward;
transferredCumulativeRewards[_sender] = 0;
bonusRewards[_receiver] = bonusRewards[_sender];
bonusRewards[_sender] = 0;
}
function setTransferredAverageStakedAmounts(address _account, uint256 _amount) external override nonReentrant {
_validateHandler();
transferredAverageStakedAmounts[_account] = _amount;
}
function setTransferredCumulativeRewards(address _account, uint256 _amount) external override nonReentrant {
_validateHandler();
transferredCumulativeRewards[_account] = _amount;
}
function setCumulativeRewardDeductions(address _account, uint256 _amount) external override nonReentrant {
_validateHandler();
cumulativeRewardDeductions[_account] = _amount;
@ -161,12 +132,8 @@ contract Vester is IVester, IERC20, ReentrancyGuard, Governable {
bonusRewards[_account] = _amount;
}
function getMaxVestableAmount(address _account) public view override returns (uint256) {
uint256 transferredCumulativeReward = transferredCumulativeRewards[_account];
uint256 bonusReward = bonusRewards[_account];
uint256 maxVestableAmount = transferredCumulativeReward + bonusReward;
uint256 maxVestableAmount = bonusRewards[_account];
if (hasRewardTracker()) {
uint256 cumulativeReward = IRewardTracker(rewardTracker).cumulativeRewards(_account);
@ -186,22 +153,13 @@ contract Vester is IVester, IERC20, ReentrancyGuard, Governable {
if (!hasRewardTracker()) {
return 0;
}
uint256 cumulativeReward = IRewardTracker(rewardTracker).cumulativeRewards(_account);
uint256 transferredCumulativeReward = transferredCumulativeRewards[_account];
uint256 totalCumulativeReward = cumulativeReward + transferredCumulativeReward;
if (totalCumulativeReward == 0) {
if (cumulativeReward == 0) {
return 0;
}
uint256 averageStakedAmount = IRewardTracker(rewardTracker).averageStakedAmounts(_account);
uint256 transferredAverageStakedAmount = transferredAverageStakedAmounts[_account];
return
(averageStakedAmount * cumulativeReward) /
totalCumulativeReward +
(transferredAverageStakedAmount * transferredCumulativeReward) /
totalCumulativeReward;
return IRewardTracker(rewardTracker).averageStakedAmounts(_account);
}
function getPairAmount(address _account, uint256 _esAmount) public view returns (uint256) {

View File

@ -11,14 +11,9 @@ interface IVester {
function claimedAmounts(address _account) external view returns (uint256);
function pairAmounts(address _account) external view returns (uint256);
function getVestedAmount(address _account) external view returns (uint256);
function transferredAverageStakedAmounts(address _account) external view returns (uint256);
function transferredCumulativeRewards(address _account) external view returns (uint256);
function cumulativeRewardDeductions(address _account) external view returns (uint256);
function bonusRewards(address _account) external view returns (uint256);
function transferStakeValues(address _sender, address _receiver) external;
function setTransferredAverageStakedAmounts(address _account, uint256 _amount) external;
function setTransferredCumulativeRewards(address _account, uint256 _amount) external;
function setCumulativeRewardDeductions(address _account, uint256 _amount) external;
function setBonusRewards(address _account, uint256 _amount) external;

View File

@ -49,32 +49,6 @@ describe("Vester", function () {
expect(await vester.hasRewardTracker()).eq(false);
});
it("setTransferredAverageStakedAmounts", async () => {
const {owner, otherAccount, cec, esCec, vester} = await loadFixture(deployOneContract);
await expect(vester.setTransferredAverageStakedAmounts(owner.address, 200)).to.be.revertedWith(
"Vester: forbidden",
);
await vester.setHandler(owner.address, true);
expect(await vester.transferredAverageStakedAmounts(owner.address)).eq(0);
await vester.setTransferredAverageStakedAmounts(owner.address, 200);
expect(await vester.transferredAverageStakedAmounts(owner.address)).eq(200);
});
it("setTransferredCumulativeRewards", async () => {
const {owner, otherAccount, cec, esCec, vester} = await loadFixture(deployOneContract);
await expect(vester.setTransferredCumulativeRewards(owner.address, 200)).to.be.revertedWith("Vester: forbidden");
await vester.setHandler(owner.address, true);
expect(await vester.transferredCumulativeRewards(owner.address)).eq(0);
await vester.setTransferredCumulativeRewards(owner.address, 200);
expect(await vester.transferredCumulativeRewards(owner.address)).eq(200);
});
it("setCumulativeRewardDeductions", async () => {
const {owner, otherAccount, cec, esCec, vester} = await loadFixture(deployOneContract);
await expect(vester.setCumulativeRewardDeductions(owner.address, 200)).to.be.revertedWith("Vester: forbidden");