Skip to content

Commit 3ffc44f

Browse files
committed
feat: add test for error
1 parent 0bf9580 commit 3ffc44f

File tree

1 file changed

+80
-4
lines changed

1 file changed

+80
-4
lines changed

src/core/creditAccount.spec.ts

Lines changed: 80 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1575,12 +1575,12 @@ describe("CreditAccount calcQuotaUpdate test", () => {
15751575
[tokenDataByNetwork.Mainnet.STETH]: {
15761576
amountInTarget: 10_1345n,
15771577
balance: 0n,
1578-
token: tokenDataByNetwork.Mainnet.DAI,
1578+
token: tokenDataByNetwork.Mainnet.STETH,
15791579
},
15801580
[tokenDataByNetwork.Mainnet.WETH]: {
15811581
amountInTarget: 0n * PERCENTAGE_FACTOR,
15821582
balance: 0n,
1583-
token: tokenDataByNetwork.Mainnet.DAI,
1583+
token: tokenDataByNetwork.Mainnet.WETH,
15841584
},
15851585
},
15861586

@@ -1637,12 +1637,12 @@ describe("CreditAccount calcQuotaUpdate test", () => {
16371637
[tokenDataByNetwork.Mainnet.STETH]: {
16381638
amountInTarget: 10_1345n,
16391639
balance: 0n,
1640-
token: tokenDataByNetwork.Mainnet.DAI,
1640+
token: tokenDataByNetwork.Mainnet.STETH,
16411641
},
16421642
[tokenDataByNetwork.Mainnet.WETH]: {
16431643
amountInTarget: 0n * PERCENTAGE_FACTOR,
16441644
balance: 0n,
1645-
token: tokenDataByNetwork.Mainnet.DAI,
1645+
token: tokenDataByNetwork.Mainnet.WETH,
16461646
},
16471647
},
16481648

@@ -1681,6 +1681,82 @@ describe("CreditAccount calcQuotaUpdate test", () => {
16811681
},
16821682
});
16831683
});
1684+
it("should buy quota correctly when all assets listed in both buy and spend", () => {
1685+
const result = CreditAccountData.calcQuotaUpdate({
1686+
maxDebt: HUGE_MAX_DEBT,
1687+
quotaReserve: QUOTA_RESERVE,
1688+
quotas: cmQuotas,
1689+
initialQuotas: {
1690+
...caQuota,
1691+
[tokenDataByNetwork.Mainnet.DAI]: {
1692+
quota: 0n * PERCENTAGE_FACTOR,
1693+
},
1694+
[tokenDataByNetwork.Mainnet.STETH]: {
1695+
quota: 15n * PERCENTAGE_FACTOR,
1696+
},
1697+
},
1698+
assetsAfterUpdate: {
1699+
[tokenDataByNetwork.Mainnet.STETH]: {
1700+
amountInTarget: 0n * PERCENTAGE_FACTOR,
1701+
balance: 0n,
1702+
token: tokenDataByNetwork.Mainnet.STETH,
1703+
},
1704+
[tokenDataByNetwork.Mainnet.DAI]: {
1705+
amountInTarget: 10n * PERCENTAGE_FACTOR,
1706+
balance: 0n,
1707+
token: tokenDataByNetwork.Mainnet.DAI,
1708+
},
1709+
[tokenDataByNetwork.Mainnet.WETH]: {
1710+
amountInTarget: 5n * PERCENTAGE_FACTOR,
1711+
balance: 0n,
1712+
token: tokenDataByNetwork.Mainnet.WETH,
1713+
},
1714+
},
1715+
1716+
allowedToObtain: {
1717+
[tokenDataByNetwork.Mainnet.STETH]: {},
1718+
[tokenDataByNetwork.Mainnet.DAI]: {},
1719+
[tokenDataByNetwork.Mainnet.WETH]: {},
1720+
},
1721+
allowedToSpend: {
1722+
[tokenDataByNetwork.Mainnet.STETH]: {},
1723+
[tokenDataByNetwork.Mainnet.DAI]: {},
1724+
[tokenDataByNetwork.Mainnet.WETH]: {},
1725+
},
1726+
liquidationThresholds: DEFAULT_LT,
1727+
});
1728+
1729+
expect(result.quotaIncrease).to.be.deep.eq([
1730+
{
1731+
balance: 10n * PERCENTAGE_FACTOR,
1732+
token: tokenDataByNetwork.Mainnet.DAI,
1733+
},
1734+
]);
1735+
expect(result.quotaDecrease).to.be.deep.eq([
1736+
{
1737+
balance: MIN_INT96,
1738+
token: tokenDataByNetwork.Mainnet.STETH,
1739+
},
1740+
{
1741+
balance: -5n * PERCENTAGE_FACTOR,
1742+
token: tokenDataByNetwork.Mainnet.WETH,
1743+
},
1744+
]);
1745+
expect(result.desiredQuota).to.be.deep.eq({
1746+
[tokenDataByNetwork.Mainnet.DAI]: {
1747+
balance: 10n * PERCENTAGE_FACTOR,
1748+
token: tokenDataByNetwork.Mainnet.DAI,
1749+
},
1750+
[tokenDataByNetwork.Mainnet.WETH]: {
1751+
balance: 5n * PERCENTAGE_FACTOR,
1752+
token: tokenDataByNetwork.Mainnet.WETH,
1753+
},
1754+
[tokenDataByNetwork.Mainnet.STETH]: {
1755+
balance: 0n * PERCENTAGE_FACTOR,
1756+
token: tokenDataByNetwork.Mainnet.STETH,
1757+
},
1758+
});
1759+
});
16841760
});
16851761

16861762
describe("CreditAccount calcAvgQuotaBorrowRate test", () => {

0 commit comments

Comments
 (0)