Skip to content

Commit

Permalink
fix dodo test
Browse files Browse the repository at this point in the history
  • Loading branch information
yuichiroaoki committed Feb 4, 2022
1 parent 379940f commit 6755a89
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 38 deletions.
55 changes: 31 additions & 24 deletions test/checkBalanceDodo.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,30 +5,37 @@ import { ERC20Mock } from "../typechain";
import { getBigNumber, getERC20ContractFromAddress } from "../utils";

describe("DODO pool check", () => {
let DAI: ERC20Mock;
let USDC: ERC20Mock;
let WMATIC: ERC20Mock;
let WETH: ERC20Mock;
let USDT: ERC20Mock;
let DAI: ERC20Mock;
let USDC: ERC20Mock;
let WMATIC: ERC20Mock;
let WETH: ERC20Mock;
let USDT: ERC20Mock;

beforeEach(async () => {
USDC = await getERC20ContractFromAddress(erc20Address.USDC)
USDT = await getERC20ContractFromAddress(erc20Address.USDT)
DAI = await getERC20ContractFromAddress(erc20Address.DAI)
WETH = await getERC20ContractFromAddress(erc20Address.WETH)
WMATIC = await getERC20ContractFromAddress(erc20Address.WMATIC)
});
beforeEach(async () => {
USDC = await getERC20ContractFromAddress(erc20Address.USDC);
USDT = await getERC20ContractFromAddress(erc20Address.USDT);
DAI = await getERC20ContractFromAddress(erc20Address.DAI);
WETH = await getERC20ContractFromAddress(erc20Address.WETH);
WMATIC = await getERC20ContractFromAddress(erc20Address.WMATIC);
});

describe("Check if dodo pools have enough tokens", () => {
for (const [name, poolAddr] of Object.entries(dodoV2Pool)) {
it(name, async () => {
const dodoPool = await ethers.getContractAt(
"IDODO",
poolAddr
);
expect((await dodoPool._BASE_RESERVE_()).gt(getBigNumber(1000, 6)))
expect((await dodoPool._QUOTE_RESERVE_()).gt(getBigNumber(1000, 6)))
});
}
});
describe("Check if dodo pools have enough tokens", () => {
for (const [name, poolAddr] of Object.entries(dodoV2Pool)) {
it(name, async () => {
const dodoPool = await ethers.getContractAt("IDODO", poolAddr);
if (poolAddr !== dodoV2Pool.WBTC_USDC) {
expect(
(await dodoPool._BASE_RESERVE_()).gt(getBigNumber(10000, 6))
).to.equal(true);
} else {
expect(
(await dodoPool._BASE_RESERVE_()).gt(getBigNumber(1, 8))
).to.equal(true);
}
expect(
(await dodoPool._QUOTE_RESERVE_()).gt(getBigNumber(10000, 6))
).to.equal(true);
});
}
});
});
31 changes: 17 additions & 14 deletions utils/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,33 +6,36 @@ const BASE_TEN = 10;

// Defaults to e18 using amount * 10^18
export const getBigNumber = (amount: number, decimals = 18) => {
return BigNumber.from(amount).mul(BigNumber.from(BASE_TEN).pow(decimals));
return ethers.utils.parseUnits(amount.toString(), decimals);
};

export const ADDRESS_ZERO = "0x0000000000000000000000000000000000000000";


export const deployContractFromName = async (
contractName: string,
factoryType: any,
args: Array<any> = []
) => {
const factory = (await ethers.getContractFactory(contractName)) as typeof factoryType
return factory.deploy(...args)
}
const factory = (await ethers.getContractFactory(
contractName
)) as typeof factoryType;
return factory.deploy(...args);
};

export const getContractFromAddress = async (
contractName: string,
factoryType: any,
address: string
) => {
const factory = (await ethers.getContractFactory(contractName)) as typeof factoryType
return factory.attach(address)
}
const factory = (await ethers.getContractFactory(
contractName
)) as typeof factoryType;
return factory.attach(address);
};

export const getERC20ContractFromAddress = async (
address: string,
) => {
const factory = (await ethers.getContractFactory("ERC20Mock")) as ERC20Mock__factory
return factory.attach(address)
}
export const getERC20ContractFromAddress = async (address: string) => {
const factory = (await ethers.getContractFactory(
"ERC20Mock"
)) as ERC20Mock__factory;
return factory.attach(address);
};

0 comments on commit 6755a89

Please sign in to comment.