移除测试脚本中的gmx字样

This commit is contained in:
CounterFire2023 2024-08-27 16:14:30 +08:00
parent b46a2f963b
commit c9fd704e37

View File

@ -23,10 +23,10 @@ const blockTime = async (provider: any) => {
const block = await provider.getBlock('latest') const block = await provider.getBlock('latest')
return block ? block.timestamp : 0 return block ? block.timestamp : 0
} }
const showLog = async (tag: string, stakedGmxTracker: any, esCec: any, address: string) => { const showLog = async (tag: string, stakedCecTracker: any, esCec: any, address: string) => {
console.log(tag+'\t', 'stake amount:', formatEther(await stakedGmxTracker.stakedAmounts(address)), console.log(tag+'\t', 'stake amount:', formatEther(await stakedCecTracker.stakedAmounts(address)),
'claimable: ', formatEther(await stakedGmxTracker.claimable(address)), 'claimable: ', formatEther(await stakedCecTracker.claimable(address)),
'claimableReward: ', formatEther(await stakedGmxTracker.claimableReward(address)), 'claimableReward: ', formatEther(await stakedCecTracker.claimableReward(address)),
'esCec balance: ', formatEther(await esCec.balanceOf(address)), 'esCec balance: ', formatEther(await esCec.balanceOf(address)),
) )
} }
@ -45,10 +45,10 @@ describe('RewardRouter', function() {
const RewardTracker = await hre.ethers.getContractFactory("RewardTracker"); const RewardTracker = await hre.ethers.getContractFactory("RewardTracker");
const RewardDistributor = await hre.ethers.getContractFactory("RewardDistributor"); const RewardDistributor = await hre.ethers.getContractFactory("RewardDistributor");
const stakedGmxTracker = await RewardTracker.deploy("Staked GMX", "sGMX"); const stakedCecTracker = await RewardTracker.deploy("Staked CEC", "sCEC");
const stakedGmxDistributor = await RewardDistributor.deploy(esCec.target, stakedGmxTracker.target); const stakedCecDistributor = await RewardDistributor.deploy(esCec.target, stakedCecTracker.target);
await stakedGmxTracker.initialize([cec.target, esCec.target], stakedGmxDistributor.target); await stakedCecTracker.initialize([cec.target, esCec.target], stakedCecDistributor.target);
await stakedGmxDistributor.updateLastDistributionTime(); await stakedCecDistributor.updateLastDistributionTime();
const Vester = await hre.ethers.getContractFactory("Vester"); const Vester = await hre.ethers.getContractFactory("Vester");
const vester = await Vester.deploy( const vester = await Vester.deploy(
@ -61,8 +61,8 @@ describe('RewardRouter', function() {
ZeroAddress, ZeroAddress,
); );
await stakedGmxTracker.setInPrivateTransferMode(true) await stakedCecTracker.setInPrivateTransferMode(true)
await stakedGmxTracker.setInPrivateStakingMode(true) await stakedCecTracker.setInPrivateStakingMode(true)
// await esCec.setInPrivateTransferMode(true) // await esCec.setInPrivateTransferMode(true)
@ -70,19 +70,19 @@ describe('RewardRouter', function() {
const rewardRouter = await RewardRouter.deploy( const rewardRouter = await RewardRouter.deploy(
cec.target, cec.target,
esCec.target, esCec.target,
stakedGmxTracker.target, stakedCecTracker.target,
vester.target, vester.target,
); );
await esCec.setMinter(owner.address, true) await esCec.setMinter(owner.address, true)
await esCec.mint(stakedGmxDistributor.target, expandDecimals(50000, 18)) await esCec.mint(stakedCecDistributor.target, expandDecimals(50000, 18))
await stakedGmxDistributor.setTokensPerInterval(rewardPerSecond) await stakedCecDistributor.setTokensPerInterval(rewardPerSecond)
await stakedGmxTracker.setHandler(rewardRouter.target, true) await stakedCecTracker.setHandler(rewardRouter.target, true)
await esCec.setMinter(vester.target, true) await esCec.setMinter(vester.target, true)
await esCec.setHandler(stakedGmxTracker.target, true) await esCec.setHandler(stakedCecTracker.target, true)
return { owner, user0, user1, user2, chainId, cec, esCec, stakedGmxTracker, stakedGmxDistributor, vester, rewardRouter }; return { owner, user0, user1, user2, chainId, cec, esCec, stakedCecTracker, stakedCecDistributor, vester, rewardRouter };
} }
describe("Deployment", function () { describe("Deployment", function () {
it('should deploy RewardRouter', async function() { it('should deploy RewardRouter', async function() {
@ -91,8 +91,8 @@ describe('RewardRouter', function() {
}); });
}) })
describe("Staking", function () { describe("Staking", function () {
it("stakeGmxForAccount, stakeGmx, stakeEsCec, unstakeGmx, unstakeEsGmx, claimEsCec, claimFees, compound, batchCompoundForAccounts", async () => { it("stakeCecForAccount, stakeCec, stakeEsCec, unstakeCec, unstakeEsCec, claimEsCec", async () => {
const {owner, user0, user1, user2, chainId, cec, esCec, stakedGmxTracker, stakedGmxDistributor, vester, rewardRouter} = await loadFixture(deployOneContract); const {owner, user0, user1, user2, chainId, cec, esCec, stakedCecTracker, stakedCecDistributor, vester, rewardRouter} = await loadFixture(deployOneContract);
const wallet = owner const wallet = owner
const provider = wallet.provider; const provider = wallet.provider;
await cec.setMinter(wallet.address, true) await cec.setMinter(wallet.address, true)
@ -100,7 +100,7 @@ describe('RewardRouter', function() {
expect(await cec.balanceOf(user0.address)).eq(expandDecimals(1500, 18)) expect(await cec.balanceOf(user0.address)).eq(expandDecimals(1500, 18))
// @ts-ignore // @ts-ignore
await cec.connect(user0).approve(stakedGmxTracker.target, expandDecimals(1000, 18)) await cec.connect(user0).approve(stakedCecTracker.target, expandDecimals(1000, 18))
// @ts-ignore // @ts-ignore
await expect(rewardRouter.connect(user0).stakeCecForAccount(user1.address, expandDecimals(1000, 18))) await expect(rewardRouter.connect(user0).stakeCecForAccount(user1.address, expandDecimals(1000, 18)))
.to.be.revertedWith("Governable: forbidden") .to.be.revertedWith("Governable: forbidden")
@ -113,25 +113,25 @@ describe('RewardRouter', function() {
await cec.mint(user1.address, expandDecimals(200, 18)) await cec.mint(user1.address, expandDecimals(200, 18))
expect(await cec.balanceOf(user1.address)).eq(expandDecimals(200, 18)) expect(await cec.balanceOf(user1.address)).eq(expandDecimals(200, 18))
// @ts-ignore // @ts-ignore
await cec.connect(user1).approve(stakedGmxTracker.target, expandDecimals(200, 18)) await cec.connect(user1).approve(stakedCecTracker.target, expandDecimals(200, 18))
// @ts-ignore // @ts-ignore
await rewardRouter.connect(user1).stakeCec(expandDecimals(200, 18)) await rewardRouter.connect(user1).stakeCec(expandDecimals(200, 18))
expect(await cec.balanceOf(user1.address)).eq(0) expect(await cec.balanceOf(user1.address)).eq(0)
expect(await stakedGmxTracker.stakedAmounts(user0.address)).eq(0) expect(await stakedCecTracker.stakedAmounts(user0.address)).eq(0)
expect(await stakedGmxTracker.depositBalances(user0.address, cec.target)).eq(0) expect(await stakedCecTracker.depositBalances(user0.address, cec.target)).eq(0)
expect(await stakedGmxTracker.stakedAmounts(user1.address)).eq(expandDecimals(1000, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).eq(expandDecimals(1000, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(1000, 18)) expect(await stakedCecTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(1000, 18))
const totalSupply = await stakedGmxTracker.totalSupply() const totalSupply = await stakedCecTracker.totalSupply()
console.log('totalSupply: ', formatEther(totalSupply)) console.log('totalSupply: ', formatEther(totalSupply))
await showLog('init', stakedGmxTracker, esCec, user1.address) await showLog('init', stakedCecTracker, esCec, user1.address)
await increaseTime(provider, Number(secondsOneDay)) await increaseTime(provider, Number(secondsOneDay))
await mineBlock(provider) await mineBlock(provider)
await showLog('1day', stakedGmxTracker, esCec, user1.address) await showLog('1day', stakedCecTracker, esCec, user1.address)
expect(await stakedGmxTracker.claimable(user0.address)).eq(0) expect(await stakedCecTracker.claimable(user0.address)).eq(0)
expect(await stakedGmxTracker.claimable(user1.address)).gt(expandDecimals(4, 18)) expect(await stakedCecTracker.claimable(user1.address)).gt(expandDecimals(4, 18))
expect(await stakedGmxTracker.claimable(user1.address)).lt(expandDecimals(5, 18)) expect(await stakedCecTracker.claimable(user1.address)).lt(expandDecimals(5, 18))
@ -143,29 +143,29 @@ describe('RewardRouter', function() {
// await esCec.connect(tokenManager).transferFrom(tokenManager.address, user2.address, expandDecimals(500, 18)) // await esCec.connect(tokenManager).transferFrom(tokenManager.address, user2.address, expandDecimals(500, 18))
await esCec.mint(user2.address, expandDecimals(500, 18)) await esCec.mint(user2.address, expandDecimals(500, 18))
// @ts-ignore // @ts-ignore
await esCec.connect(user2).approve(stakedGmxTracker.target, expandDecimals(500, 18)) await esCec.connect(user2).approve(stakedCecTracker.target, expandDecimals(500, 18))
// @ts-ignore // @ts-ignore
await rewardRouter.connect(user2).stakeEsCec(expandDecimals(500, 18)) await rewardRouter.connect(user2).stakeEsCec(expandDecimals(500, 18))
expect(await stakedGmxTracker.stakedAmounts(user0.address)).eq(0) expect(await stakedCecTracker.stakedAmounts(user0.address)).eq(0)
expect(await stakedGmxTracker.depositBalances(user0.address, cec.target)).eq(0) expect(await stakedCecTracker.depositBalances(user0.address, cec.target)).eq(0)
expect(await stakedGmxTracker.stakedAmounts(user1.address)).eq(expandDecimals(1000, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).eq(expandDecimals(1000, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(1000, 18)) expect(await stakedCecTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(1000, 18))
expect(await stakedGmxTracker.stakedAmounts(user2.address)).eq(expandDecimals(500, 18)) expect(await stakedCecTracker.stakedAmounts(user2.address)).eq(expandDecimals(500, 18))
expect(await stakedGmxTracker.depositBalances(user2.address, esCec.target)).eq(expandDecimals(500, 18)) expect(await stakedCecTracker.depositBalances(user2.address, esCec.target)).eq(expandDecimals(500, 18))
await increaseTime(provider, Number(secondsOneDay)) await increaseTime(provider, Number(secondsOneDay))
await mineBlock(provider) await mineBlock(provider)
expect(await stakedGmxTracker.claimable(user0.address)).eq(0) expect(await stakedCecTracker.claimable(user0.address)).eq(0)
expect(await stakedGmxTracker.claimable(user1.address)).gt(expandDecimals(8, 18)) expect(await stakedCecTracker.claimable(user1.address)).gt(expandDecimals(8, 18))
expect(await stakedGmxTracker.claimable(user1.address)).lt(expandDecimals(9, 18)) expect(await stakedCecTracker.claimable(user1.address)).lt(expandDecimals(9, 18))
expect(await stakedGmxTracker.claimable(user2.address)).gt(expandDecimals(2, 18)) expect(await stakedCecTracker.claimable(user2.address)).gt(expandDecimals(2, 18))
expect(await stakedGmxTracker.claimable(user2.address)).lt(expandDecimals(5, 18)) expect(await stakedCecTracker.claimable(user2.address)).lt(expandDecimals(5, 18))
await showLog('2day', stakedGmxTracker, esCec, user1.address) await showLog('2day', stakedCecTracker, esCec, user1.address)
expect(await esCec.balanceOf(user1.address)).eq(0) expect(await esCec.balanceOf(user1.address)).eq(0)
// @ts-ignore // @ts-ignore
@ -190,16 +190,16 @@ describe('RewardRouter', function() {
await increaseTime(provider, Number(secondsOneDay)) await increaseTime(provider, Number(secondsOneDay))
await mineBlock(provider) await mineBlock(provider)
await showLog('claim cec 2day', stakedGmxTracker, esCec, user1.address) await showLog('claim cec 2day', stakedCecTracker, esCec, user1.address)
// @ts-ignore // @ts-ignore
await rewardRouter.connect(user1).stakeEsCec(await esCec.balanceOf(user1.address)) await rewardRouter.connect(user1).stakeEsCec(await esCec.balanceOf(user1.address))
await showLog('compound', stakedGmxTracker, esCec, user1.address) await showLog('compound', stakedCecTracker, esCec, user1.address)
expect(await stakedGmxTracker.stakedAmounts(user1.address)).gt(expandDecimals(1008, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).gt(expandDecimals(1008, 18))
expect(await stakedGmxTracker.stakedAmounts(user1.address)).lt(expandDecimals(1009, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).lt(expandDecimals(1009, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(1000, 18)) expect(await stakedCecTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(1000, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, esCec.target)).gt(expandDecimals(8, 18)) expect(await stakedCecTracker.depositBalances(user1.address, esCec.target)).gt(expandDecimals(8, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, esCec.target)).lt(expandDecimals(9, 18)) expect(await stakedCecTracker.depositBalances(user1.address, esCec.target)).lt(expandDecimals(9, 18))
@ -208,22 +208,22 @@ describe('RewardRouter', function() {
await rewardRouter.connect(user1).unstakeCec(expandDecimals(300, 18)) await rewardRouter.connect(user1).unstakeCec(expandDecimals(300, 18))
expect(await cec.balanceOf(user1.address)).eq(expandDecimals(300, 18)) expect(await cec.balanceOf(user1.address)).eq(expandDecimals(300, 18))
expect(await stakedGmxTracker.stakedAmounts(user1.address)).gt(expandDecimals(708, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).gt(expandDecimals(708, 18))
expect(await stakedGmxTracker.stakedAmounts(user1.address)).lt(expandDecimals(709, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).lt(expandDecimals(709, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(700, 18)) expect(await stakedCecTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(700, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, esCec.target)).gt(expandDecimals(8, 18)) expect(await stakedCecTracker.depositBalances(user1.address, esCec.target)).gt(expandDecimals(8, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, esCec.target)).lt(expandDecimals(9, 18)) expect(await stakedCecTracker.depositBalances(user1.address, esCec.target)).lt(expandDecimals(9, 18))
const esGmxBalance1 = await esCec.balanceOf(user1.address) const esCecBalance1 = await esCec.balanceOf(user1.address)
const esGmxUnstakeBalance1 = await stakedGmxTracker.depositBalances(user1.address, esCec.target) const esCecUnstakeBalance1 = await stakedCecTracker.depositBalances(user1.address, esCec.target)
// @ts-ignore // @ts-ignore
await rewardRouter.connect(user1).unstakeEsCec(esGmxUnstakeBalance1) await rewardRouter.connect(user1).unstakeEsCec(esCecUnstakeBalance1)
expect(await esCec.balanceOf(user1.address)).eq(esGmxBalance1 + esGmxUnstakeBalance1) expect(await esCec.balanceOf(user1.address)).eq(esCecBalance1 + esCecUnstakeBalance1)
expect(await stakedGmxTracker.stakedAmounts(user1.address)).eq(expandDecimals(700, 18)) expect(await stakedCecTracker.stakedAmounts(user1.address)).eq(expandDecimals(700, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(700, 18)) expect(await stakedCecTracker.depositBalances(user1.address, cec.target)).eq(expandDecimals(700, 18))
expect(await stakedGmxTracker.depositBalances(user1.address, esCec.target)).eq(0) expect(await stakedCecTracker.depositBalances(user1.address, esCec.target)).eq(0)
// @ts-ignore // @ts-ignore