fix cp test

This commit is contained in:
mingda
2020-12-18 18:31:45 +08:00
parent 101261803f
commit c24e4b8176
9 changed files with 65 additions and 56 deletions

View File

@@ -33,13 +33,14 @@ describe("Funding", () => {
config = {
totalBase: decimalStr("10000"),
poolQuoteCap: decimalStr("50000"),
ownerQuoteRatio: decimalStr("0.1"),
k: decimalStr("0.5"),
i: decimalStr("10"),
lpFeeRate: decimalStr("0.002"),
bidDuration: new BigNumber(86400),
calmDuration: new BigNumber(86400),
freezeDuration: new BigNumber(86400),
vestingDuration: new BigNumber(86400),
cliffRate: decimalStr("0.1"),
}
ctx = new CPContext();
await ctx.init(config);

View File

@@ -32,13 +32,14 @@ describe("Funding", () => {
config = {
totalBase: decimalStr("10000"),
poolQuoteCap: decimalStr("50000"),
ownerQuoteRatio: decimalStr("0.1"),
k: decimalStr("0.5"),
i: decimalStr("10"),
lpFeeRate: decimalStr("0.002"),
bidDuration: new BigNumber(86400),
calmDuration: new BigNumber(86400),
freezeDuration: new BigNumber(86400),
vestingDuration: new BigNumber(86400),
cliffRate: decimalStr("0.1"),
}
ctx = new CPContext();
await ctx.init(config);
@@ -68,18 +69,16 @@ describe("Funding", () => {
var poolAddress = await ctx.CP.methods._POOL_().call()
var pool = getContractWithAddress(DVM_NAME, poolAddress)
assert.equal(await pool.methods.getMidPrice().call(), "10050199494025273102")
assert.equal(await pool.methods.getMidPrice().call(), "10050199494025273134")
assert.equal(await ctx.CP.methods._AVG_SETTLED_PRICE_().call(), "10050199494025273136")
assert.equal(await ctx.CP.methods._UNUSED_QUOTE_().call(), "0")
assert.equal(await ctx.CP.methods._UNUSED_BASE_().call(), "99401011949453729399")
assert.equal(await ctx.BASE.methods.balanceOf(ctx.Deployer).call(), "0")
assert.equal(await ctx.BASE.methods.balanceOf(poolAddress).call(), "9900598988050546270601")
assert.equal(await ctx.BASE.methods.balanceOf(ctx.CP.options.address).call(), "99401011949453729399")
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.Deployer).call(), decimalStr("99.9"))
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), decimalStr("899.1"))
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), decimalStr("999"))
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.CP.options.address).call(), "0")
})
@@ -95,7 +94,7 @@ describe("Funding", () => {
var poolAddress = await ctx.CP.methods._POOL_().call()
var pool = getContractWithAddress(DVM_NAME, poolAddress)
assert.equal(await pool.methods.getMidPrice().call(), "13090169943749474216")
assert.equal(await pool.methods.getMidPrice().call(), "13090169943749474228")
assert.equal(await ctx.CP.methods._AVG_SETTLED_PRICE_().call(), "13090169943749474242")
assert.equal(await ctx.CP.methods._UNUSED_QUOTE_().call(), decimalStr("49900"))
@@ -105,8 +104,7 @@ describe("Funding", () => {
assert.equal(await ctx.BASE.methods.balanceOf(poolAddress).call(), "6180339887498948482045")
assert.equal(await ctx.BASE.methods.balanceOf(ctx.CP.options.address).call(), "3819660112501051517955")
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.Deployer).call(), decimalStr("5000"))
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), decimalStr("45000"))
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), decimalStr("50000"))
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.CP.options.address).call(), decimalStr("49900"))
})

View File

@@ -32,14 +32,15 @@ describe("Funding", () => {
before(async () => {
config = {
totalBase: decimalStr("10000"),
poolQuoteCap: decimalStr("100000"),
ownerQuoteRatio: decimalStr("0.1"),
k: decimalStr("0.1"),
poolQuoteCap: decimalStr("80000"),
k: decimalStr("0.5"),
i: decimalStr("10"),
lpFeeRate: decimalStr("0.002"),
bidDuration: new BigNumber(86400),
calmDuration: new BigNumber(86400),
freezeDuration: new BigNumber(86400),
vestingDuration: new BigNumber(86400),
cliffRate: decimalStr("0.1"),
}
ctx = new CPContext();
await ctx.init(config);
@@ -68,19 +69,17 @@ describe("Funding", () => {
var poolAddress = await ctx.CP.methods._POOL_().call()
var pool = getContractWithAddress(DVM_NAME, poolAddress)
assert.equal(await pool.methods.getMidPrice().call(), "76012678448689469")
assert.equal(await ctx.CP.methods._AVG_SETTLED_PRICE_().call(), "13155700080678329720")
assert.equal(await pool.methods.getMidPrice().call(), "64921894064178782")
assert.equal(await ctx.CP.methods._AVG_SETTLED_PRICE_().call(), "15403124237432848687")
assert.equal(await ctx.CP.methods._UNUSED_QUOTE_().call(), "0")
assert.equal(await ctx.CP.methods._UNUSED_BASE_().call(), "7593666577024078089065")
assert.equal(await ctx.CP.methods._UNUSED_QUOTE_().call(), decimalStr("19900"))
assert.equal(await ctx.CP.methods._UNUSED_BASE_().call(), "5193751525134302627024")
assert.equal(await ctx.BASE.methods.balanceOf(ctx.Deployer).call(), "0")
assert.equal(await ctx.BASE.methods.balanceOf(poolAddress).call(), "2406333422975921910935")
assert.equal(await ctx.BASE.methods.balanceOf(ctx.CP.options.address).call(), "7593666577024078089065")
assert.equal(await ctx.BASE.methods.balanceOf(poolAddress).call(), "4806248474865697372976")
assert.equal(await ctx.BASE.methods.balanceOf(ctx.CP.options.address).call(), "5193751525134302627024")
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.Deployer).call(), decimalStr("9990"))
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), decimalStr("89910"))
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.CP.options.address).call(), "0")
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), decimalStr("80000"))
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.CP.options.address).call(), decimalStr("19900"))
})
})

View File

@@ -31,13 +31,14 @@ describe("Funding", () => {
config = {
totalBase: decimalStr("10000"),
poolQuoteCap: decimalStr("50000"),
ownerQuoteRatio: decimalStr("0.1"),
k: decimalStr("0.5"),
i: decimalStr("10"),
lpFeeRate: decimalStr("0.002"),
bidDuration: new BigNumber(86400),
calmDuration: new BigNumber(86400),
freezeDuration: new BigNumber(86400),
vestingDuration: new BigNumber(86400),
cliffRate: decimalStr("0.1"),
}
ctx = new CPContext();
await ctx.init(config);
@@ -68,13 +69,11 @@ describe("Funding", () => {
assert.equal(await ctx.BASE.methods.balanceOf(ctx.CP.options.address).call(), "2557555139280633184959")
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.CP.options.address).call(), "0")
await ctx.CP.methods.claimBase().send(ctx.sendParam(bidder1))
await ctx.CP.methods.claimQuote().send(ctx.sendParam(bidder1))
await ctx.CP.methods.bidderClaim().send(ctx.sendParam(bidder1))
assert.equal(await ctx.BASE.methods.balanceOf(bidder1).call(), "852518379760211061653")
assert.equal(await ctx.QUOTE.methods.balanceOf(bidder1).call(), "0")
await ctx.CP.methods.claimBase().send(ctx.sendParam(bidder2))
await ctx.CP.methods.claimQuote().send(ctx.sendParam(bidder2))
await ctx.CP.methods.bidderClaim().send(ctx.sendParam(bidder2))
assert.equal(await ctx.BASE.methods.balanceOf(bidder2).call(), "1705036759520422123306")
assert.equal(await ctx.QUOTE.methods.balanceOf(bidder2).call(), "0")
@@ -93,13 +92,11 @@ describe("Funding", () => {
assert.equal(await ctx.BASE.methods.balanceOf(ctx.CP.options.address).call(), "3819660112501051517955")
assert.equal(await ctx.QUOTE.methods.balanceOf(ctx.CP.options.address).call(), decimalStr("39910"))
await ctx.CP.methods.claimBase().send(ctx.sendParam(bidder1))
await ctx.CP.methods.claimQuote().send(ctx.sendParam(bidder1))
await ctx.CP.methods.bidderClaim().send(ctx.sendParam(bidder1))
assert.equal(await ctx.BASE.methods.balanceOf(bidder1).call(), "1273220037500350505985")
assert.equal(await ctx.QUOTE.methods.balanceOf(bidder1).call(), "13303333333333333333333")
await ctx.CP.methods.claimBase().send(ctx.sendParam(bidder2))
await ctx.CP.methods.claimQuote().send(ctx.sendParam(bidder2))
await ctx.CP.methods.bidderClaim().send(ctx.sendParam(bidder2))
assert.equal(await ctx.BASE.methods.balanceOf(bidder2).call(), "2546440075000701011970")
assert.equal(await ctx.QUOTE.methods.balanceOf(bidder2).call(), "26606666666666666666666")
})
@@ -114,15 +111,22 @@ describe("Funding", () => {
await logGas(ctx.CP.methods.settle(), ctx.sendParam(ctx.Deployer), "settle")
await truffleAssert.reverts(ctx.CP.methods.claimLPToken().send(ctx.sendParam(ctx.Deployer)), "FREEZED")
// Cliff
await ctx.EVM.increaseTime(86400)
await ctx.CP.methods.claimLPToken().send(ctx.sendParam(ctx.Deployer))
var poolAddress = await ctx.CP.methods._POOL_().call()
var pool = getContractWithAddress(DVM_NAME, poolAddress)
await ctx.CP.methods.claimLPToken().send(ctx.sendParam(ctx.Deployer))
assert.equal(await pool.methods.balanceOf(ctx.Deployer).call(), "618033988749894848205")
// Vesting end
await ctx.EVM.increaseTime(86400)
await ctx.CP.methods.claimLPToken().send(ctx.sendParam(ctx.Deployer))
assert.equal(await pool.methods.balanceOf(ctx.Deployer).call(), "6180339887498948482045")
await pool.methods.sellShares("6180339887498948482045", bidder1, 0, 0, "0x", MAX_UINT256).send(ctx.sendParam(ctx.Deployer))
assert.equal(await ctx.BASE.methods.balanceOf(bidder1).call(), "6180339887498948482045")
assert.equal(await ctx.QUOTE.methods.balanceOf(bidder1).call(), "45000000000000000000000")
assert.equal(await ctx.QUOTE.methods.balanceOf(bidder1).call(), "50000000000000000000000")
assert.equal(await ctx.BASE.methods.balanceOf(poolAddress).call(), "0")
assert.equal(await ctx.QUOTE.methods.balanceOf(poolAddress).call(), "0")

View File

@@ -22,13 +22,14 @@ BigNumber.config({
export interface CPContextInitConfig {
totalBase: string;
poolQuoteCap: string;
ownerQuoteRatio: string;
k: string;
i: string;
lpFeeRate: string;
bidDuration: BigNumber;
calmDuration: BigNumber;
freezeDuration: BigNumber;
vestingDuration: BigNumber;
cliffRate: string;
}
@@ -100,13 +101,14 @@ export class CPContext {
(await this.Web3.eth.getBlock(await this.Web3.eth.getBlockNumber())).timestamp,
config.bidDuration,
config.calmDuration,
config.freezeDuration
config.freezeDuration,
config.vestingDuration
],
[
config.poolQuoteCap,
config.ownerQuoteRatio,
config.k,
config.i
config.i,
config.cliffRate
]
).send(this.sendParam(this.Deployer))