2020-06-08 12:03:40 +00:00
|
|
|
import {expect} from "chai";
|
|
|
|
import {MockProvider} from "ethereum-waffle";
|
2020-06-08 15:36:40 +00:00
|
|
|
import {
|
|
|
|
getAToken,
|
|
|
|
getAaveProtocolTestHelpers,
|
|
|
|
} from "../helpers/contracts-helpers";
|
2020-06-08 12:03:40 +00:00
|
|
|
import {evmRevert} from "../helpers/misc-utils";
|
2020-06-08 19:06:26 +00:00
|
|
|
import {AToken} from "../types/AToken";
|
|
|
|
import {TEST_SNAPSHOT_ID} from "../helpers/constants";
|
2020-06-08 12:03:40 +00:00
|
|
|
|
|
|
|
describe("AToken: Modifiers", () => {
|
2020-06-08 19:06:26 +00:00
|
|
|
const [deployer, ...restWallets] = new MockProvider().getWallets();
|
|
|
|
let _aDAI = {} as AToken;
|
|
|
|
const NOT_LENDING_POOL_MSG =
|
|
|
|
"The caller of this function must be a lending pool";
|
2020-06-08 12:03:40 +00:00
|
|
|
|
|
|
|
before(async () => {
|
2020-06-08 19:06:26 +00:00
|
|
|
await evmRevert(TEST_SNAPSHOT_ID);
|
|
|
|
const testHelpers = await getAaveProtocolTestHelpers();
|
|
|
|
|
|
|
|
const aDAIAddress = (await testHelpers.getAllATokens()).find(
|
|
|
|
(aToken) => aToken.symbol === "aDAI"
|
2020-06-09 09:11:19 +00:00
|
|
|
)?.tokenAddress;
|
2020-06-08 19:06:26 +00:00
|
|
|
if (!aDAIAddress) {
|
|
|
|
console.log(`atoken-modifiers.spec: aDAI not correctly initialized`);
|
|
|
|
process.exit(1);
|
|
|
|
}
|
|
|
|
_aDAI = await getAToken(aDAIAddress);
|
2020-06-08 12:03:40 +00:00
|
|
|
});
|
|
|
|
|
2020-06-08 19:06:26 +00:00
|
|
|
it("Tries to invoke mintOnDeposit not being the LendingPool", async () => {
|
|
|
|
await expect(_aDAI.mintOnDeposit(deployer.address, "1")).to.be.revertedWith(
|
|
|
|
NOT_LENDING_POOL_MSG
|
|
|
|
);
|
2020-06-08 15:36:40 +00:00
|
|
|
});
|
2020-06-08 12:03:40 +00:00
|
|
|
|
2020-06-08 19:06:26 +00:00
|
|
|
it("Tries to invoke burnOnLiquidation not being the LendingPool", async () => {
|
|
|
|
await expect(
|
|
|
|
_aDAI.burnOnLiquidation(deployer.address, "1")
|
|
|
|
).to.be.revertedWith(NOT_LENDING_POOL_MSG);
|
|
|
|
});
|
2020-06-08 15:36:40 +00:00
|
|
|
|
2020-06-08 19:06:26 +00:00
|
|
|
it("Tries to invoke transferOnLiquidation not being the LendingPool", async () => {
|
|
|
|
await expect(
|
|
|
|
_aDAI.transferOnLiquidation(deployer.address, restWallets[0].address, "1")
|
|
|
|
).to.be.revertedWith(NOT_LENDING_POOL_MSG);
|
|
|
|
});
|
2020-06-08 15:36:40 +00:00
|
|
|
});
|