mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
101 lines
3.6 KiB
TypeScript
101 lines
3.6 KiB
TypeScript
|
import { TestEnv, makeSuite } from './helpers/make-suite';
|
||
|
import { ZERO_ADDRESS } from '../../helpers/constants';
|
||
|
import { ProtocolErrors } from '../../helpers/types';
|
||
|
|
||
|
const { expect } = require('chai');
|
||
|
|
||
|
makeSuite('AddressesProviderRegistry', (testEnv: TestEnv) => {
|
||
|
it('Checks the addresses provider is added to the registry', async () => {
|
||
|
const { addressesProvider, registry } = testEnv;
|
||
|
|
||
|
const providers = await registry.getAddressesProvidersList();
|
||
|
|
||
|
expect(providers.length).to.be.equal(1, 'Invalid length of the addresses providers list');
|
||
|
expect(providers[0].toString()).to.be.equal(
|
||
|
addressesProvider.address,
|
||
|
' Invalid addresses provider added to the list'
|
||
|
);
|
||
|
});
|
||
|
|
||
|
it('tries to register an addresses provider with id 0', async () => {
|
||
|
const { users, registry } = testEnv;
|
||
|
const { LPAPR_INVALID_ADDRESSES_PROVIDER_ID } = ProtocolErrors;
|
||
|
|
||
|
await expect(registry.registerAddressesProvider(users[2].address, '0')).to.be.revertedWith(
|
||
|
LPAPR_INVALID_ADDRESSES_PROVIDER_ID
|
||
|
);
|
||
|
});
|
||
|
|
||
|
it('Registers a new mock addresses provider', async () => {
|
||
|
const { users, registry } = testEnv;
|
||
|
|
||
|
//simulating an addresses provider using the users[1] wallet address
|
||
|
await registry.registerAddressesProvider(users[1].address, '2');
|
||
|
|
||
|
const providers = await registry.getAddressesProvidersList();
|
||
|
|
||
|
expect(providers.length).to.be.equal(2, 'Invalid length of the addresses providers list');
|
||
|
expect(providers[1].toString()).to.be.equal(
|
||
|
users[1].address,
|
||
|
' Invalid addresses provider added to the list'
|
||
|
);
|
||
|
});
|
||
|
|
||
|
it('Removes the mock addresses provider', async () => {
|
||
|
const { users, registry, addressesProvider } = testEnv;
|
||
|
|
||
|
const id = await registry.getAddressesProviderIdByAddress(users[1].address);
|
||
|
|
||
|
expect(id).to.be.equal('2', 'Invalid isRegistered return value');
|
||
|
|
||
|
await registry.unregisterAddressesProvider(users[1].address);
|
||
|
|
||
|
const providers = await registry.getAddressesProvidersList();
|
||
|
|
||
|
expect(providers.length).to.be.equal(2, 'Invalid length of the addresses providers list');
|
||
|
expect(providers[0].toString()).to.be.equal(
|
||
|
addressesProvider.address,
|
||
|
' Invalid addresses provider added to the list'
|
||
|
);
|
||
|
expect(providers[1].toString()).to.be.equal(ZERO_ADDRESS, ' Invalid addresses');
|
||
|
});
|
||
|
|
||
|
it('Tries to remove a unregistered addressesProvider', async () => {
|
||
|
const { LPAPR_PROVIDER_NOT_REGISTERED } = ProtocolErrors;
|
||
|
|
||
|
const { users, registry } = testEnv;
|
||
|
|
||
|
await expect(registry.unregisterAddressesProvider(users[2].address)).to.be.revertedWith(
|
||
|
LPAPR_PROVIDER_NOT_REGISTERED
|
||
|
);
|
||
|
});
|
||
|
|
||
|
it('Tries to remove a unregistered addressesProvider', async () => {
|
||
|
const { LPAPR_PROVIDER_NOT_REGISTERED } = ProtocolErrors;
|
||
|
|
||
|
const { users, registry } = testEnv;
|
||
|
|
||
|
await expect(registry.unregisterAddressesProvider(users[2].address)).to.be.revertedWith(
|
||
|
LPAPR_PROVIDER_NOT_REGISTERED
|
||
|
);
|
||
|
});
|
||
|
|
||
|
it('Tries to add an already added addressesProvider with a different id. Should overwrite the previous id', async () => {
|
||
|
const { users, registry, addressesProvider } = testEnv;
|
||
|
|
||
|
await registry.registerAddressesProvider(addressesProvider.address, '2');
|
||
|
|
||
|
const providers = await registry.getAddressesProvidersList();
|
||
|
|
||
|
const id = await registry.getAddressesProviderIdByAddress(addressesProvider.address);
|
||
|
|
||
|
expect(providers.length).to.be.equal(2, 'Invalid length of the addresses providers list');
|
||
|
|
||
|
expect(providers[0].toString()).to.be.equal(
|
||
|
addressesProvider.address,
|
||
|
' Invalid addresses provider added to the list'
|
||
|
);
|
||
|
expect(providers[1].toString()).to.be.equal(ZERO_ADDRESS, ' Invalid addresses');
|
||
|
});
|
||
|
});
|