trade incentive fix && test
This commit is contained in:
@@ -33,7 +33,7 @@ contract DODOIncentive is InitializableOwnable {
|
|||||||
// ============ Storage ============
|
// ============ Storage ============
|
||||||
address public immutable _DODO_TOKEN_;
|
address public immutable _DODO_TOKEN_;
|
||||||
address public _DODO_PROXY_;
|
address public _DODO_PROXY_;
|
||||||
uint256 public dodoPerBlock = 10 * 10**18;
|
uint256 public dodoPerBlock;
|
||||||
uint256 public defaultRate = 10;
|
uint256 public defaultRate = 10;
|
||||||
mapping(address => uint256) public boosts;
|
mapping(address => uint256) public boosts;
|
||||||
|
|
||||||
@@ -44,7 +44,6 @@ contract DODOIncentive is InitializableOwnable {
|
|||||||
// ============ Events ============
|
// ============ Events ============
|
||||||
|
|
||||||
event SetBoost(address token, uint256 boostRate);
|
event SetBoost(address token, uint256 boostRate);
|
||||||
event SetSwitch(bool isOpen);
|
|
||||||
event SetNewProxy(address dodoProxy);
|
event SetNewProxy(address dodoProxy);
|
||||||
event SetPerReward(uint256 dodoPerBlock);
|
event SetPerReward(uint256 dodoPerBlock);
|
||||||
event SetDefaultRate(uint256 defaultRate);
|
event SetDefaultRate(uint256 defaultRate);
|
||||||
@@ -63,6 +62,7 @@ contract DODOIncentive is InitializableOwnable {
|
|||||||
emit SetBoost(_token, _boostRate);
|
emit SetBoost(_token, _boostRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//switch
|
||||||
function changePerReward(uint256 _dodoPerBlock) public onlyOwner {
|
function changePerReward(uint256 _dodoPerBlock) public onlyOwner {
|
||||||
_updateTotalReward();
|
_updateTotalReward();
|
||||||
dodoPerBlock = _dodoPerBlock;
|
dodoPerBlock = _dodoPerBlock;
|
||||||
@@ -110,8 +110,8 @@ contract DODOIncentive is InitializableOwnable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function _updateTotalReward() internal {
|
function _updateTotalReward() internal {
|
||||||
lastRewardBlock = uint32(block.number);
|
|
||||||
totalReward = uint112(_getTotalReward());
|
totalReward = uint112(_getTotalReward());
|
||||||
|
lastRewardBlock = uint32(block.number);
|
||||||
}
|
}
|
||||||
|
|
||||||
function _update(uint256 _totalReward, uint256 _totalDistribution) internal {
|
function _update(uint256 _totalReward, uint256 _totalDistribution) internal {
|
||||||
@@ -127,7 +127,7 @@ contract DODOIncentive is InitializableOwnable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function _getTotalReward() internal view returns (uint256) {
|
function _getTotalReward() internal view returns (uint256) {
|
||||||
if (block.number < lastRewardBlock || lastRewardBlock == 0) {
|
if (lastRewardBlock == 0) {
|
||||||
return totalReward;
|
return totalReward;
|
||||||
} else {
|
} else {
|
||||||
return totalReward + (block.number - lastRewardBlock) * dodoPerBlock;
|
return totalReward + (block.number - lastRewardBlock) * dodoPerBlock;
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
/*
|
|
||||||
|
|
||||||
Copyright 2020 DODO ZOO.
|
|
||||||
SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
pragma solidity 0.6.9;
|
|
||||||
pragma experimental ABIEncoderV2;
|
|
||||||
|
|
||||||
import {ReentrancyGuard} from "../lib/ReentrancyGuard.sol";
|
|
||||||
import {InitializableOwnable} from "../lib/InitializableOwnable.sol";
|
|
||||||
|
|
||||||
//for test update
|
|
||||||
contract FeeRateModelLogicUpdate is ReentrancyGuard ,InitializableOwnable{
|
|
||||||
//DEFAULT
|
|
||||||
uint256 public _FEE_RATE_;
|
|
||||||
mapping(address => uint256) feeMapping;
|
|
||||||
|
|
||||||
function setSpecificFeeRate(address trader, uint256 feeRate) external onlyOwner {
|
|
||||||
require(trader != address(0), "INVALID ADDRESS!");
|
|
||||||
feeMapping[trader] = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
function setFeeRate(uint256 newFeeRate) external onlyOwner {
|
|
||||||
_FEE_RATE_ = _FEE_RATE_+ newFeeRate;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -132,13 +132,13 @@ describe("DODOProxyV2.0", () => {
|
|||||||
it("updateFeeRateModel", async () => {
|
it("updateFeeRateModel", async () => {
|
||||||
var feeRate = await DVM_DODO_USDT.methods.getUserFeeRate(project).call()
|
var feeRate = await DVM_DODO_USDT.methods.getUserFeeRate(project).call()
|
||||||
assert.equal(
|
assert.equal(
|
||||||
feeRate[1],
|
feeRate[1], //mtFee
|
||||||
"10000000000000000"
|
"0"
|
||||||
);
|
);
|
||||||
var mtFeeResult0 = await DVM_DODO_USDT.methods.querySellQuote(ctx.Deployer, decimalStr("10")).call()
|
var mtFeeResult0 = await DVM_DODO_USDT.methods.querySellQuote(ctx.Deployer, decimalStr("10")).call()
|
||||||
assert.equal(
|
assert.equal(
|
||||||
mtFeeResult0[1],
|
mtFeeResult0[1],
|
||||||
"999999999265727652176"
|
"0"
|
||||||
);
|
);
|
||||||
|
|
||||||
var feerateLogicAddress = ctx.MtFeeRateModelLogic.options.address;
|
var feerateLogicAddress = ctx.MtFeeRateModelLogic.options.address;
|
||||||
@@ -151,30 +151,11 @@ describe("DODOProxyV2.0", () => {
|
|||||||
feeRateSet[1],
|
feeRateSet[1],
|
||||||
"30000000000000000"
|
"30000000000000000"
|
||||||
);
|
);
|
||||||
var mtFeeResult1 = await DVM_DODO_USDT.methods.querySellQuote(ctx.Deployer, decimalStr("10")).call()
|
var mtFeeResult1 = await DVM_DODO_USDT.methods.querySellQuote(ctx.Deployer, decimalStr("10")).call()
|
||||||
assert.equal(
|
assert.equal(
|
||||||
mtFeeResult1[1],
|
mtFeeResult1[1],
|
||||||
"2999999997797182956530"
|
"2999999997797182956530"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
var feerateLogicUpdateAddress = ctx.MtFeeRateModelLogicUpdate.options.address;
|
|
||||||
await logGas(await ctx.mtFeeRateModel.methods.setFeeRate(
|
|
||||||
decimalStr("0.01"),
|
|
||||||
feerateLogicUpdateAddress
|
|
||||||
), ctx.sendParam(ctx.Deployer), "setFeeRateUpdate");
|
|
||||||
var feeRateUpdate = await DVM_DODO_USDT.methods.getUserFeeRate(lp).call()
|
|
||||||
assert.equal(
|
|
||||||
feeRateUpdate[1],
|
|
||||||
"40000000000000000"
|
|
||||||
);
|
|
||||||
var mtFeeResult2 = await DVM_DODO_USDT.methods.querySellQuote(ctx.Deployer, decimalStr("10")).call()
|
|
||||||
assert.equal(
|
|
||||||
mtFeeResult2[1],
|
|
||||||
"3999999997062910608707"
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// it("createDVM - ETH", async () => {
|
// it("createDVM - ETH", async () => {
|
||||||
@@ -341,7 +322,7 @@ describe("DODOProxyV2.0", () => {
|
|||||||
// console.log("b_DOOD:" + b_DOOD + " a_DODO:" + a_DOOD);
|
// console.log("b_DOOD:" + b_DOOD + " a_DODO:" + a_DOOD);
|
||||||
// console.log("b_USDT:" + b_USDT + " a_USDT:" + a_USDT);
|
// console.log("b_USDT:" + b_USDT + " a_USDT:" + a_USDT);
|
||||||
assert.equal(a_DOOD, decimalStr("500"));
|
assert.equal(a_DOOD, decimalStr("500"));
|
||||||
assert.equal(a_USDT, "124886061");
|
assert.equal(a_USDT, "126151370");
|
||||||
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
||||||
ctx.DODO.options.address,
|
ctx.DODO.options.address,
|
||||||
ctx.USDT.options.address,
|
ctx.USDT.options.address,
|
||||||
@@ -379,7 +360,7 @@ describe("DODOProxyV2.0", () => {
|
|||||||
// console.log("b_DOOD:" + b_DOOD + " a_DODO:" + a_DOOD);
|
// console.log("b_DOOD:" + b_DOOD + " a_DODO:" + a_DOOD);
|
||||||
// console.log("b_WETH:" + b_WETH + " a_WETH:" + a_WETH);
|
// console.log("b_WETH:" + b_WETH + " a_WETH:" + a_WETH);
|
||||||
assert.equal(a_DOOD, decimalStr("500"));
|
assert.equal(a_DOOD, decimalStr("500"));
|
||||||
assert.equal(a_WETH, "160562971834401560");
|
assert.equal(a_WETH, "163816613646287588");
|
||||||
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
||||||
ctx.DODO.options.address,
|
ctx.DODO.options.address,
|
||||||
ctx.WETH.options.address,
|
ctx.WETH.options.address,
|
||||||
@@ -415,7 +396,7 @@ describe("DODOProxyV2.0", () => {
|
|||||||
// console.log("b_DOOD:" + b_DOOD + " a_DODO:" + a_DOOD);
|
// console.log("b_DOOD:" + b_DOOD + " a_DODO:" + a_DOOD);
|
||||||
// console.log("b_WETH:" + b_WETH + " a_WETH:" + a_WETH);
|
// console.log("b_WETH:" + b_WETH + " a_WETH:" + a_WETH);
|
||||||
// console.log("b_ETH:" + b_ETH + " a_ETH:" + a_ETH);
|
// console.log("b_ETH:" + b_ETH + " a_ETH:" + a_ETH);
|
||||||
assert.equal(a_DOOD, "2758402621041673925359");
|
assert.equal(a_DOOD, "2814340111190341070680");
|
||||||
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2ETHToToken(
|
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2ETHToToken(
|
||||||
ctx.DODO.options.address,
|
ctx.DODO.options.address,
|
||||||
1,
|
1,
|
||||||
@@ -447,7 +428,7 @@ describe("DODOProxyV2.0", () => {
|
|||||||
assert.equal(a_DOOD, decimalStr("1000"));
|
assert.equal(a_DOOD, decimalStr("1000"));
|
||||||
assert.equal(
|
assert.equal(
|
||||||
tx.events['OrderHistory'].returnValues['returnAmount'],
|
tx.events['OrderHistory'].returnValues['returnAmount'],
|
||||||
"317467466094549770"
|
"323865907568573497"
|
||||||
)
|
)
|
||||||
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToETH(
|
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToETH(
|
||||||
ctx.DODO.options.address,
|
ctx.DODO.options.address,
|
||||||
@@ -481,7 +462,7 @@ describe("DODOProxyV2.0", () => {
|
|||||||
var a_DOOD = await ctx.DODO.methods.balanceOf(trader).call();
|
var a_DOOD = await ctx.DODO.methods.balanceOf(trader).call();
|
||||||
var a_WETH = await ctx.WETH.methods.balanceOf(trader).call();
|
var a_WETH = await ctx.WETH.methods.balanceOf(trader).call();
|
||||||
assert.equal(a_DOOD, decimalStr("500"));
|
assert.equal(a_DOOD, decimalStr("500"));
|
||||||
assert.equal(a_WETH, "158791178116238085");
|
assert.equal(a_WETH, "163633965833613187");
|
||||||
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
||||||
ctx.DODO.options.address,
|
ctx.DODO.options.address,
|
||||||
ctx.WETH.options.address,
|
ctx.WETH.options.address,
|
||||||
|
|||||||
@@ -76,8 +76,7 @@ async function initCreateDVM(ctx: ProxyContext, token0: string, token1: string,
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function initIncentive(ctx: ProxyContext): Promise<void> {
|
async function initIncentive(ctx: ProxyContext): Promise<void> {
|
||||||
var blockNum = await ctx.Web3.eth.getBlockNumber();
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
||||||
await ctx.DODOIncentive.methods.switchIncentive(blockNum + 1).send(ctx.sendParam(ctx.Deployer));
|
|
||||||
await ctx.mintTestToken(ctx.DODOIncentive.options.address, ctx.DODO, decimalStr("1000000"));
|
await ctx.mintTestToken(ctx.DODOIncentive.options.address, ctx.DODO, decimalStr("1000000"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,29 +114,23 @@ describe("DODOProxyV2.0", () => {
|
|||||||
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
||||||
var totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
var totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
||||||
var totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
var totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
var blockNum = await ctx.Web3.eth.getBlockNumber();
|
console.log("Init - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution);
|
||||||
console.log("Init - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution + "; BlockNumber:" + blockNum);
|
|
||||||
|
|
||||||
//Aim to increase block
|
//Aim to increase block
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
await ctx.DODOIncentive.methods.changePerReward(0).send(ctx.sendParam(ctx.Deployer));
|
||||||
console.log("Close BlockNumber:", blockNum + 1)
|
|
||||||
await ctx.DODOIncentive.methods.switchIncentive(0).send(ctx.sendParam(ctx.Deployer));
|
|
||||||
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
||||||
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
console.log("Close incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution);
|
||||||
console.log("Close incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution + "; BlockNumber:" + blockNum);
|
|
||||||
|
|
||||||
//Aim to increase block
|
//Aim to increase block
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
|
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
||||||
await ctx.DODOIncentive.methods.switchIncentive(blockNum + 1).send(ctx.sendParam(ctx.Deployer));
|
|
||||||
console.log("Open BlockNumber:", blockNum + 1)
|
|
||||||
//Aim to increase block
|
//Aim to increase block
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
@@ -145,8 +138,7 @@ describe("DODOProxyV2.0", () => {
|
|||||||
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
||||||
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
||||||
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
console.log("End incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution);
|
||||||
console.log("End incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution + "; BlockNumber:" + blockNum);
|
|
||||||
assert(totalReward, decimalStr("100"));
|
assert(totalReward, decimalStr("100"));
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -154,21 +146,17 @@ describe("DODOProxyV2.0", () => {
|
|||||||
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
||||||
var totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
var totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
||||||
var totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
var totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
var blockNum = await ctx.Web3.eth.getBlockNumber();
|
console.log("Init - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution);
|
||||||
console.log("Init - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution + "; BlockNumber:" + blockNum);
|
|
||||||
|
|
||||||
//Aim to increase block
|
//Aim to increase block
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
|
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
|
||||||
console.log("Change BlockNumber:", blockNum + 1)
|
|
||||||
await ctx.DODOIncentive.methods.changePerReward(decimalStr("20")).send(ctx.sendParam(ctx.Deployer));
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("20")).send(ctx.sendParam(ctx.Deployer));
|
||||||
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
||||||
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
console.log("change incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution);
|
||||||
console.log("change incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution + "; BlockNumber:" + blockNum);
|
|
||||||
|
|
||||||
//Aim to increase block
|
//Aim to increase block
|
||||||
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
await ctx.mintTestToken(lp, ctx.DODO, decimalStr("1000"));
|
||||||
@@ -177,13 +165,12 @@ describe("DODOProxyV2.0", () => {
|
|||||||
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
await ctx.DODOIncentive.methods.changePerReward(decimalStr("10")).send(ctx.sendParam(ctx.Deployer));
|
||||||
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
totalReward = await ctx.DODOIncentive.methods.totalReward().call();
|
||||||
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
blockNum = await ctx.Web3.eth.getBlockNumber();
|
console.log("End incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution);
|
||||||
console.log("End incentive - Total Reward:" + totalReward + "; Total distribution:" + totalDistribution + "; BlockNumber:" + blockNum);
|
|
||||||
|
|
||||||
assert(totalReward, decimalStr("140"));
|
assert(totalReward, decimalStr("140"));
|
||||||
});
|
});
|
||||||
|
|
||||||
it("tigger - incentive", async () => {
|
it.only("tigger - incentive", async () => {
|
||||||
await ctx.mintTestToken(trader, ctx.DODO, decimalStr("2000"));
|
await ctx.mintTestToken(trader, ctx.DODO, decimalStr("2000"));
|
||||||
var b_DODO = await ctx.DODO.methods.balanceOf(trader).call()
|
var b_DODO = await ctx.DODO.methods.balanceOf(trader).call()
|
||||||
var b_USDT = await ctx.USDT.methods.balanceOf(trader).call()
|
var b_USDT = await ctx.USDT.methods.balanceOf(trader).call()
|
||||||
@@ -193,16 +180,11 @@ describe("DODOProxyV2.0", () => {
|
|||||||
var b_totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
var b_totalDistribution = await ctx.DODOIncentive.methods.totalDistribution().call();
|
||||||
console.log("Before Total Reward:" + b_totalReward + "; Total distribution:" + b_totalDistribution)
|
console.log("Before Total Reward:" + b_totalReward + "; Total distribution:" + b_totalDistribution)
|
||||||
|
|
||||||
var a_DODO = await ctx.DODO.methods.balanceOf(trader).call()
|
|
||||||
var a_USDT = await ctx.USDT.methods.balanceOf(trader).call()
|
|
||||||
console.log("After No Incentive DODO:" + a_DODO + "; USDT:" + a_USDT);
|
|
||||||
|
|
||||||
var dodoPairs = [
|
var dodoPairs = [
|
||||||
dpp_DODO_USDT
|
dpp_DODO_USDT
|
||||||
]
|
]
|
||||||
var directions = 0
|
var directions = 0
|
||||||
|
|
||||||
|
|
||||||
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
await logGas(await ctx.DODOProxyV2.methods.dodoSwapV2TokenToToken(
|
||||||
ctx.DODO.options.address,
|
ctx.DODO.options.address,
|
||||||
ctx.USDT.options.address,
|
ctx.USDT.options.address,
|
||||||
|
|||||||
@@ -82,8 +82,8 @@ export class ProxyContext {
|
|||||||
var permissionManagerTemplate = await contracts.newContract(contracts.PERMISSION_MANAGER_NAME)
|
var permissionManagerTemplate = await contracts.newContract(contracts.PERMISSION_MANAGER_NAME)
|
||||||
var mtFeeRateModelTemplate = await contracts.newContract(contracts.FEE_RATE_MODEL_NAME)
|
var mtFeeRateModelTemplate = await contracts.newContract(contracts.FEE_RATE_MODEL_NAME)
|
||||||
this.mtFeeRateModel = mtFeeRateModelTemplate;
|
this.mtFeeRateModel = mtFeeRateModelTemplate;
|
||||||
await mtFeeRateModelTemplate.methods.init(this.Deployer,decimalStr("0.01")).send(this.sendParam(this.Deployer));
|
// await mtFeeRateModelTemplate.methods.init(this.Deployer,decimalStr("0.01")).send(this.sendParam(this.Deployer));
|
||||||
// await mtFeeRateModelTemplate.methods.init(this.Deployer,decimalStr("0")).send(this.sendParam(this.Deployer));
|
await mtFeeRateModelTemplate.methods.init(this.Deployer,decimalStr("0")).send(this.sendParam(this.Deployer));
|
||||||
|
|
||||||
this.DVMFactory = await contracts.newContract(contracts.DVM_FACTORY_NAME,
|
this.DVMFactory = await contracts.newContract(contracts.DVM_FACTORY_NAME,
|
||||||
[
|
[
|
||||||
|
|||||||
Reference in New Issue
Block a user