mirror of
https://github.com/Instadapp/Gelato-automations.git
synced 2024-07-29 22:28:07 +00:00
Deal with lack of precision during for some routes
This commit is contained in:
parent
c36a988795
commit
a79a785fa7
|
@ -3,15 +3,24 @@ pragma solidity 0.7.4;
|
||||||
|
|
||||||
import {
|
import {
|
||||||
_getMakerRawVaultDebt,
|
_getMakerRawVaultDebt,
|
||||||
|
_getMakerVaultDebt,
|
||||||
_getMakerVaultCollateralBalance
|
_getMakerVaultCollateralBalance
|
||||||
} from "../../functions/dapps/FMaker.sol";
|
} from "../../functions/dapps/FMaker.sol";
|
||||||
|
|
||||||
contract MakerResolver {
|
contract MakerResolver {
|
||||||
/// @dev Return Debt in wad of the vault associated to the vaultId.
|
/// @dev Return Debt in wad of the vault associated to the vaultId.
|
||||||
function getMakerVaultDebt(uint256 _vaultId) public view returns (uint256) {
|
function getMakerVaultRawDebt(uint256 _vaultId)
|
||||||
|
public
|
||||||
|
view
|
||||||
|
returns (uint256)
|
||||||
|
{
|
||||||
return _getMakerRawVaultDebt(_vaultId);
|
return _getMakerRawVaultDebt(_vaultId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getMakerVaultDebt(uint256 _vaultId) public view returns (uint256) {
|
||||||
|
return _getMakerVaultDebt(_vaultId);
|
||||||
|
}
|
||||||
|
|
||||||
/// @dev Return Collateral in wad of the vault associated to the vaultId.
|
/// @dev Return Collateral in wad of the vault associated to the vaultId.
|
||||||
function getMakerVaultCollateralBalance(uint256 _vaultId)
|
function getMakerVaultCollateralBalance(uint256 _vaultId)
|
||||||
public
|
public
|
||||||
|
|
|
@ -197,7 +197,7 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B with vault creat
|
||||||
// by a debt refinancing in compound.
|
// by a debt refinancing in compound.
|
||||||
|
|
||||||
//#region EXPECTED OUTCOME
|
//#region EXPECTED OUTCOME
|
||||||
const debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
let debtOnMakerBefore = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
vaultAId
|
vaultAId
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -207,6 +207,12 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B with vault creat
|
||||||
contracts.instaPoolResolver
|
contracts.instaPoolResolver
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if (route !== 1) {
|
||||||
|
debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
|
vaultAId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
const gasCost = await getGasCostForFullRefinance(route);
|
const gasCost = await getGasCostForFullRefinance(route);
|
||||||
|
|
||||||
const gasFeesPaidFromCol = ethers.BigNumber.from(gasCost).mul(
|
const gasFeesPaidFromCol = ethers.BigNumber.from(gasCost).mul(
|
||||||
|
@ -253,9 +259,17 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B with vault creat
|
||||||
let vaultBId = String(cdps.ids[1]);
|
let vaultBId = String(cdps.ids[1]);
|
||||||
expect(cdps.ids[1].isZero()).to.be.false;
|
expect(cdps.ids[1].isZero()).to.be.false;
|
||||||
|
|
||||||
const debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultDebt(
|
let debtOnMakerVaultB;
|
||||||
vaultBId
|
if (route === 1) {
|
||||||
);
|
debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
|
vaultBId
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
|
vaultBId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
const pricedCollateralOnVaultB = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
const pricedCollateralOnVaultB = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
||||||
vaultBId
|
vaultBId
|
||||||
);
|
);
|
||||||
|
@ -283,7 +297,7 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B with vault creat
|
||||||
const collateralOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
const collateralOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
||||||
vaultAId
|
vaultAId
|
||||||
); // in Ether.
|
); // in Ether.
|
||||||
const debtOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultDebt(
|
const debtOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
vaultAId
|
vaultAId
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -197,7 +197,7 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B", function () {
|
||||||
// by a debt refinancing in compound.
|
// by a debt refinancing in compound.
|
||||||
|
|
||||||
//#region EXPECTED OUTCOME
|
//#region EXPECTED OUTCOME
|
||||||
const debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
let debtOnMakerBefore = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
vaultAId
|
vaultAId
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -207,6 +207,12 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B", function () {
|
||||||
contracts.instaPoolResolver
|
contracts.instaPoolResolver
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if (route !== 1) {
|
||||||
|
debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
|
vaultAId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
const gasCost = await getGasCostForFullRefinance(route);
|
const gasCost = await getGasCostForFullRefinance(route);
|
||||||
|
|
||||||
const gasFeesPaidFromCol = ethers.BigNumber.from(gasCost).mul(
|
const gasFeesPaidFromCol = ethers.BigNumber.from(gasCost).mul(
|
||||||
|
@ -253,9 +259,17 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B", function () {
|
||||||
let vaultBId = String(cdps.ids[1]);
|
let vaultBId = String(cdps.ids[1]);
|
||||||
expect(cdps.ids[1].isZero()).to.be.false;
|
expect(cdps.ids[1].isZero()).to.be.false;
|
||||||
|
|
||||||
const debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultDebt(
|
let debtOnMakerVaultB;
|
||||||
vaultBId
|
if (route === 1) {
|
||||||
);
|
debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
|
vaultBId
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
|
vaultBId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
const pricedCollateralOnVaultB = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
const pricedCollateralOnVaultB = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
||||||
vaultBId
|
vaultBId
|
||||||
);
|
);
|
||||||
|
@ -283,7 +297,7 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B", function () {
|
||||||
const collateralOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
const collateralOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
||||||
vaultAId
|
vaultAId
|
||||||
); // in Ether.
|
); // in Ether.
|
||||||
const debtOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultDebt(
|
const debtOnMakerOnVaultAAfter = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
vaultAId
|
vaultAId
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -197,7 +197,7 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B For Gas Measurem
|
||||||
// by a debt refinancing in compound.
|
// by a debt refinancing in compound.
|
||||||
|
|
||||||
//#region EXPECTED OUTCOME
|
//#region EXPECTED OUTCOME
|
||||||
const debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
let debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
vaultAId
|
vaultAId
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -207,6 +207,12 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B For Gas Measurem
|
||||||
contracts.instaPoolResolver
|
contracts.instaPoolResolver
|
||||||
);
|
);
|
||||||
|
|
||||||
|
if (route !== 1) {
|
||||||
|
debtOnMakerBefore = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
|
vaultAId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
const gasCost = await getGasCostForFullRefinance(route);
|
const gasCost = await getGasCostForFullRefinance(route);
|
||||||
|
|
||||||
const gasFeesPaidFromCol = ethers.BigNumber.from(gasCost).mul(
|
const gasFeesPaidFromCol = ethers.BigNumber.from(gasCost).mul(
|
||||||
|
@ -253,9 +259,17 @@ describe("Full Debt Bridge refinancing loan from ETH-A to ETH-B For Gas Measurem
|
||||||
let vaultBId = String(cdps.ids[1]);
|
let vaultBId = String(cdps.ids[1]);
|
||||||
expect(cdps.ids[1].isZero()).to.be.false;
|
expect(cdps.ids[1].isZero()).to.be.false;
|
||||||
|
|
||||||
const debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultDebt(
|
let debtOnMakerVaultB;
|
||||||
vaultBId
|
if (route === 1) {
|
||||||
);
|
debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultRawDebt(
|
||||||
|
vaultBId
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
debtOnMakerVaultB = await contracts.makerResolver.getMakerVaultDebt(
|
||||||
|
vaultBId
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
const pricedCollateralOnVaultB = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
const pricedCollateralOnVaultB = await contracts.makerResolver.getMakerVaultCollateralBalance(
|
||||||
vaultBId
|
vaultBId
|
||||||
);
|
);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user