aave-protocol-v2/test/addresses-provider-registry.spec.ts

102 lines
3.7 KiB
TypeScript
Raw Normal View History

2020-09-23 09:21:49 +00:00
import {TestEnv, makeSuite} from './helpers/make-suite';
import {ZERO_ADDRESS} from '../helpers/constants';
2020-09-23 09:21:49 +00:00
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();
2020-10-08 13:41:48 +00:00
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'
);
2020-09-23 09:21:49 +00:00
});
2020-10-19 16:29:32 +00:00
it('tries to register an addresses provider with id 0', async () => {
const {users, registry} = testEnv;
2020-10-30 12:40:06 +00:00
const {LPAPR_INVALID_ADDRESSES_PROVIDER_ID} = ProtocolErrors;
2020-10-19 16:29:32 +00:00
await expect(registry.registerAddressesProvider(users[2].address, '0')).to.be.revertedWith(
2020-10-30 12:40:06 +00:00
LPAPR_INVALID_ADDRESSES_PROVIDER_ID
2020-10-19 16:29:32 +00:00
);
});
2020-09-23 09:25:35 +00:00
it('Registers a new mock addresses provider', async () => {
const {users, registry} = testEnv;
//simulating an addresses provider using the users[1] wallet address
2020-10-08 13:41:48 +00:00
await registry.registerAddressesProvider(users[1].address, '2');
2020-09-23 09:25:35 +00:00
const providers = await registry.getAddressesProvidersList();
2020-10-08 13:41:48 +00:00
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'
);
2020-09-23 09:25:35 +00:00
});
it('Removes the mock addresses provider', async () => {
const {users, registry, addressesProvider} = testEnv;
2020-09-23 09:25:35 +00:00
//checking the isAddressesProviderRegistered function
const id = await registry.isAddressesProviderRegistered(users[1].address);
2020-10-08 13:41:48 +00:00
expect(id).to.be.equal('2', 'Invalid isRegistered return value');
await registry.unregisterAddressesProvider(users[1].address);
2020-09-23 09:25:35 +00:00
const providers = await registry.getAddressesProvidersList();
2020-10-08 13:41:48 +00:00
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');
2020-09-23 09:25:35 +00:00
});
it('Tries to remove a unregistered addressesProvider', async () => {
const {LPAPR_PROVIDER_NOT_REGISTERED} = ProtocolErrors;
const {users, registry} = testEnv;
2020-10-08 13:41:48 +00:00
await expect(registry.unregisterAddressesProvider(users[2].address)).to.be.revertedWith(
LPAPR_PROVIDER_NOT_REGISTERED
2020-10-08 13:41:48 +00:00
);
});
it('Tries to remove a unregistered addressesProvider', async () => {
const {LPAPR_PROVIDER_NOT_REGISTERED} = ProtocolErrors;
const {users, registry} = testEnv;
2020-10-08 13:41:48 +00:00
await expect(registry.unregisterAddressesProvider(users[2].address)).to.be.revertedWith(
LPAPR_PROVIDER_NOT_REGISTERED
2020-10-08 13:41:48 +00:00
);
});
it('Tries to add an already added addressesProvider with a different id. Should overwrite the previous id', async () => {
const {users, registry, addressesProvider} = testEnv;
2020-10-08 13:41:48 +00:00
await registry.registerAddressesProvider(addressesProvider.address, '2');
const providers = await registry.getAddressesProvidersList();
const id = await registry.isAddressesProviderRegistered(addressesProvider.address);
2020-10-08 13:41:48 +00:00
expect(providers.length).to.be.equal(2, 'Invalid length of the addresses providers list');
2020-10-08 13:41:48 +00:00
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');
});
2020-09-23 09:21:49 +00:00
});