add test for check staked cec when deposit
This commit is contained in:
parent
1684abb0ab
commit
7dd08188ba
@ -19,6 +19,13 @@ describe("Vester", function () {
|
|||||||
|
|
||||||
await cec.setMinter(owner.address, true);
|
await cec.setMinter(owner.address, true);
|
||||||
await esCec.setMinter(owner.address, true);
|
await esCec.setMinter(owner.address, true);
|
||||||
|
const RewardDistributor = await hre.ethers.getContractFactory("RewardDistributor");
|
||||||
|
|
||||||
|
const RewardTracker = await hre.ethers.getContractFactory("RewardTracker");
|
||||||
|
const stakedCecTracker = await RewardTracker.deploy("Staked CEC", "sCEC");
|
||||||
|
const stakedCecDistributor = await RewardDistributor.deploy(esCec.target, stakedCecTracker.target);
|
||||||
|
await stakedCecTracker.initialize([cec.target, esCec.target], stakedCecDistributor.target);
|
||||||
|
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(
|
||||||
@ -28,26 +35,26 @@ describe("Vester", function () {
|
|||||||
esCec.target,
|
esCec.target,
|
||||||
ZeroAddress,
|
ZeroAddress,
|
||||||
cec.target,
|
cec.target,
|
||||||
ZeroAddress,
|
stakedCecTracker.target,
|
||||||
false
|
true
|
||||||
);
|
);
|
||||||
await cec.mint(owner.address, expandDecimals(100000, 18));
|
await cec.mint(owner.address, expandDecimals(100000, 18));
|
||||||
await esCec.mint(owner.address, expandDecimals(100000, 18));
|
await esCec.mint(owner.address, expandDecimals(100000, 18));
|
||||||
|
|
||||||
return {owner, otherAccount, chainId, cec, esCec, vester};
|
return {owner, otherAccount, chainId, cec, esCec, vester, stakedCecTracker};
|
||||||
}
|
}
|
||||||
describe("Deployment", function () {
|
describe("Deployment", function () {
|
||||||
it("should deploy Vester", async function () {
|
it("should deploy Vester", async function () {
|
||||||
const {cec, esCec, vester} = await loadFixture(deployOneContract);
|
const {cec, esCec, vester, stakedCecTracker} = await loadFixture(deployOneContract);
|
||||||
expect(await vester.name()).eq("Vested CEC");
|
expect(await vester.name()).eq("Vested CEC");
|
||||||
expect(await vester.symbol()).eq("veCEC");
|
expect(await vester.symbol()).eq("veCEC");
|
||||||
expect(await vester.vestingDuration()).eq(secondsPerYear);
|
expect(await vester.vestingDuration()).eq(secondsPerYear);
|
||||||
expect(await vester.esToken()).eq(esCec.target);
|
expect(await vester.esToken()).eq(esCec.target);
|
||||||
expect(await vester.pairToken()).eq(ZeroAddress);
|
expect(await vester.pairToken()).eq(ZeroAddress);
|
||||||
expect(await vester.claimableToken()).eq(cec.target);
|
expect(await vester.claimableToken()).eq(cec.target);
|
||||||
expect(await vester.rewardTracker()).eq(ZeroAddress);
|
expect(await vester.rewardTracker()).eq(stakedCecTracker.target);
|
||||||
expect(await vester.hasPairToken()).eq(false);
|
expect(await vester.hasPairToken()).eq(false);
|
||||||
expect(await vester.hasRewardTracker()).eq(false);
|
expect(await vester.hasRewardTracker()).eq(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("setCumulativeRewardDeductions", async () => {
|
it("setCumulativeRewardDeductions", async () => {
|
||||||
@ -74,7 +81,7 @@ describe("Vester", function () {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it("deposit, claim, withdraw", async () => {
|
it("deposit, claim, withdraw", async () => {
|
||||||
const {owner, otherAccount, cec, esCec, vester} = await loadFixture(deployOneContract);
|
const {owner, otherAccount, cec, esCec, vester, stakedCecTracker} = await loadFixture(deployOneContract);
|
||||||
const wallet = owner;
|
const wallet = owner;
|
||||||
const user0 = otherAccount;
|
const user0 = otherAccount;
|
||||||
const provider = wallet.provider;
|
const provider = wallet.provider;
|
||||||
@ -103,6 +110,20 @@ describe("Vester", function () {
|
|||||||
|
|
||||||
await esCec.mint(user0.address, expandDecimals(1000, 18));
|
await esCec.mint(user0.address, expandDecimals(1000, 18));
|
||||||
await vester.setBonusRewards(user0.address, expandDecimals(10_000, 18));
|
await vester.setBonusRewards(user0.address, expandDecimals(10_000, 18));
|
||||||
|
|
||||||
|
// @ts-ignore
|
||||||
|
await expect(vester.connect(user0).deposit(expandDecimals(1000, 18))).to.be.revertedWith(
|
||||||
|
"Vester: insufficient cec balance",
|
||||||
|
);
|
||||||
|
|
||||||
|
await stakedCecTracker.setHandler(user0.address, true);
|
||||||
|
await cec.setMinter(wallet.address, true);
|
||||||
|
await cec.mint(user0.address, expandDecimals(1000, 18));
|
||||||
|
// @ts-ignore
|
||||||
|
await cec.connect(user0).approve(stakedCecTracker.target, expandDecimals(1000, 18));
|
||||||
|
// @ts-ignore
|
||||||
|
await stakedCecTracker.connect(user0).stakeForAccount(user0.address, user0.address, cec.target, expandDecimals(1000, 18));
|
||||||
|
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
await vester.connect(user0).deposit(expandDecimals(1000, 18));
|
await vester.connect(user0).deposit(expandDecimals(1000, 18));
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user