fix dpp test
This commit is contained in:
@@ -32,32 +32,13 @@ describe("Admin Set", () => {
|
||||
|
||||
describe("setting", () => {
|
||||
|
||||
it("set addresses", async () => {
|
||||
it("get addresses", async () => {
|
||||
|
||||
var tempAddress = ctx.SpareAccounts[0]
|
||||
|
||||
await ctx.DPP.methods.setLpFeeRateModel(tempAddress).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.setMtFeeRateModel(tempAddress).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.setTradePermissionManager(tempAddress).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.setMaintainer(tempAddress).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.setGasPriceSource(tempAddress).send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
assert.equal(await ctx.DPP.methods._LP_FEE_RATE_MODEL_().call(), tempAddress)
|
||||
assert.equal(await ctx.DPP.methods._MT_FEE_RATE_MODEL_().call(), tempAddress)
|
||||
assert.equal(await ctx.DPP.methods._TRADE_PERMISSION_().call(), tempAddress)
|
||||
assert.equal(await ctx.DPP.methods._MAINTAINER_().call(), tempAddress)
|
||||
assert.equal(await ctx.DPP.methods._GAS_PRICE_LIMIT_().call(), tempAddress)
|
||||
|
||||
});
|
||||
|
||||
it("set buy sell", async () => {
|
||||
await ctx.DPP.methods.setBuy(false).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.setSell(false).send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
await truffleAssert.reverts(ctx.DPP.methods.sellQuote(ctx.Deployer).send(ctx.sendParam(ctx.Deployer)), "TRADER_BUY_NOT_ALLOWED")
|
||||
|
||||
await truffleAssert.reverts(ctx.DPP.methods.sellBase(ctx.Deployer).send(ctx.sendParam(ctx.Deployer)), "TRADER_SELL_NOT_ALLOWED")
|
||||
})
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -29,7 +29,7 @@ async function init(ctx: DPPContext): Promise<void> {
|
||||
var kValue = decimalStr("0.2")
|
||||
await ctx.transferBaseToDPP(lp, baseAmount)
|
||||
await ctx.transferQuoteToDPP(lp, quoteAmount)
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, mtFeeRate, iValue, kValue, "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, iValue, kValue, "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
}
|
||||
|
||||
describe("DPP Reset", () => {
|
||||
@@ -54,13 +54,11 @@ describe("DPP Reset", () => {
|
||||
it("reset with asset input", async () => {
|
||||
|
||||
var lpFeeRate = decimalStr("0.01")
|
||||
var mtFeeRate = decimalStr("0.02")
|
||||
var iValue = decimalStr("300")
|
||||
var kValue = decimalStr("0.3")
|
||||
await ctx.transferBaseToDPP(lp, decimalStr("10"))
|
||||
await ctx.transferQuoteToDPP(lp, decimalStr("1000"))
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, mtFeeRate, iValue, kValue, "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, iValue, kValue, "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
var state = await ctx.DPP.methods.getPMMState().call()
|
||||
assert.equal(state.B, decimalStr("20"))
|
||||
assert.equal(state.Q, decimalStr("2000"))
|
||||
@@ -71,15 +69,13 @@ describe("DPP Reset", () => {
|
||||
|
||||
var feeRate = await ctx.DPP.methods.getUserFeeRate(lp).call()
|
||||
assert.equal(feeRate[0], lpFeeRate)
|
||||
assert.equal(feeRate[1], mtFeeRate)
|
||||
});
|
||||
|
||||
it("reset with asset output", async () => {
|
||||
var lpFeeRate = decimalStr("0.01")
|
||||
var mtFeeRate = decimalStr("0.02")
|
||||
var iValue = decimalStr("300")
|
||||
var kValue = decimalStr("0.3")
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, mtFeeRate, iValue, kValue, decimalStr("1"), decimalStr("100"), "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, iValue, kValue, decimalStr("1"), decimalStr("100"), "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
var state = await ctx.DPP.methods.getPMMState().call()
|
||||
assert.equal(state.B, decimalStr("9"))
|
||||
@@ -91,15 +87,13 @@ describe("DPP Reset", () => {
|
||||
|
||||
var feeRate = await ctx.DPP.methods.getUserFeeRate(lp).call()
|
||||
assert.equal(feeRate[0], lpFeeRate)
|
||||
assert.equal(feeRate[1], mtFeeRate)
|
||||
})
|
||||
|
||||
it("reset without asset input/output", async () => {
|
||||
var lpFeeRate = decimalStr("0.01")
|
||||
var mtFeeRate = decimalStr("0.02")
|
||||
var iValue = decimalStr("300")
|
||||
var kValue = decimalStr("0.3")
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, mtFeeRate, iValue, kValue, "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.reset(lp, lpFeeRate, iValue, kValue, "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
var state = await ctx.DPP.methods.getPMMState().call()
|
||||
assert.equal(state.B, decimalStr("10"))
|
||||
@@ -111,7 +105,6 @@ describe("DPP Reset", () => {
|
||||
|
||||
var feeRate = await ctx.DPP.methods.getUserFeeRate(lp).call()
|
||||
assert.equal(feeRate[0], lpFeeRate)
|
||||
assert.equal(feeRate[1], mtFeeRate)
|
||||
})
|
||||
|
||||
});
|
||||
@@ -144,13 +137,13 @@ describe("DPP Reset", () => {
|
||||
|
||||
it("i or k can not out of range", async () => {
|
||||
await truffleAssert.reverts(
|
||||
ctx.DPP.methods.reset(lp, "0", "0", "0", decimalStr("1"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer)), "I_OUT_OF_RANGE"
|
||||
ctx.DPP.methods.reset(lp, "0", "0", decimalStr("1"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer)), "I_OUT_OF_RANGE"
|
||||
)
|
||||
await truffleAssert.reverts(
|
||||
ctx.DPP.methods.reset(lp, "0", "0", "10000000000000000000000000000000000000", decimalStr("1"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer)), "I_OUT_OF_RANGE"
|
||||
ctx.DPP.methods.reset(lp, "0", "10000000000000000000000000000000000000", decimalStr("1"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer)), "I_OUT_OF_RANGE"
|
||||
)
|
||||
await truffleAssert.reverts(
|
||||
ctx.DPP.methods.reset(lp, "0", "0", decimalStr("1"), decimalStr("2"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer)), "K_OUT_OF_RANGE"
|
||||
ctx.DPP.methods.reset(lp, "0", decimalStr("1"), decimalStr("2"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer)), "K_OUT_OF_RANGE"
|
||||
)
|
||||
})
|
||||
|
||||
@@ -161,13 +154,13 @@ describe("DPP Reset", () => {
|
||||
await ctx.BASE.methods.mint(ctx.DPP.options.address, decimalStr("1")).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.sellBase(ctx.Deployer).send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
await truffleAssert.reverts(ctx.DPP.methods.reset(lp, "0", "0", decimalStr("1"), decimalStr("2"), "0", "0", baseReserve, quoteReserve).send(ctx.sendParam(ctx.Deployer)), "RESERVE_AMOUNT_IS_NOT_ENOUGH")
|
||||
await truffleAssert.reverts(ctx.DPP.methods.reset(lp, "0", decimalStr("1"), decimalStr("2"), "0", "0", baseReserve, quoteReserve).send(ctx.sendParam(ctx.Deployer)), "RESERVE_AMOUNT_IS_NOT_ENOUGH")
|
||||
|
||||
await ctx.QUOTE.methods.mint(ctx.DPP.options.address, decimalStr("200")).send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.sellQuote(ctx.Deployer).send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
await truffleAssert.reverts(ctx.DPP.methods.reset(lp, "0", "0", decimalStr("1"), decimalStr("2"), "0", "0", baseReserve, quoteReserve).send(ctx.sendParam(ctx.Deployer)), "RESERVE_AMOUNT_IS_NOT_ENOUGH")
|
||||
await truffleAssert.reverts(ctx.DPP.methods.reset(lp, "0", decimalStr("1"), decimalStr("2"), "0", "0", baseReserve, quoteReserve).send(ctx.sendParam(ctx.Deployer)), "RESERVE_AMOUNT_IS_NOT_ENOUGH")
|
||||
})
|
||||
})
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
@@ -26,7 +26,7 @@ async function init(ctx: DPPContext): Promise<void> {
|
||||
|
||||
await ctx.transferBaseToDPP(lp, decimalStr("10"))
|
||||
await ctx.transferQuoteToDPP(lp, decimalStr("1000"))
|
||||
await ctx.DPP.methods.reset(lp, decimalStr("0.002"), decimalStr("0.001"), decimalStr("100"), decimalStr("0.1"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
await ctx.DPP.methods.reset(lp, decimalStr("0.002"), decimalStr("100"), decimalStr("0.1"), "0", "0", "0", "0").send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
console.log("deposit")
|
||||
}
|
||||
@@ -210,12 +210,7 @@ describe("DPP Trader", () => {
|
||||
})
|
||||
|
||||
it("revert cases", async () => {
|
||||
var gasPriceLimitContract = getContractWithAddress(EXTERNAL_VALUE_NAME, await ctx.DPP.methods._GAS_PRICE_LIMIT_().call())
|
||||
await gasPriceLimitContract.methods.set(gweiStr("10")).send(ctx.sendParam(ctx.Deployer))
|
||||
|
||||
await truffleAssert.reverts(
|
||||
ctx.DPP.methods.sellQuote(trader).send({ from: trader, gas: 300000, gasPrice: gweiStr("200") }), "GAS_PRICE_EXCEED"
|
||||
)
|
||||
})
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -89,7 +89,7 @@ export class DPPContext {
|
||||
|
||||
const allAccounts = await this.Web3.eth.getAccounts();
|
||||
this.Deployer = allAccounts[0];
|
||||
this.Maintainer = allAccounts[1];
|
||||
this.Maintainer = allAccounts[2];
|
||||
this.SpareAccounts = allAccounts.slice(2, 10);
|
||||
|
||||
await gasPriceSource.methods.init(this.Deployer, MAX_UINT256).send(this.sendParam(this.Deployer))
|
||||
@@ -104,12 +104,10 @@ export class DPPContext {
|
||||
this.Maintainer,
|
||||
this.BASE.options.address,
|
||||
this.QUOTE.options.address,
|
||||
lpFeeRateModel.options.address,
|
||||
config.lpFeeRate,
|
||||
mtFeeRateModel.options.address,
|
||||
kSource.options.address,
|
||||
iSource.options.address,
|
||||
gasPriceSource.options.address,
|
||||
permissionManager.options.address,
|
||||
config.k,
|
||||
config.i,
|
||||
).send(this.sendParam(this.Deployer))
|
||||
|
||||
console.log(log.blueText("[Init DPP context]"));
|
||||
|
||||
Reference in New Issue
Block a user